• DocumentCode
    2503509
  • Title

    VR JuggLua: A framework for VR applications combining Lua, OpenSceneGraph, and VR Juggler

  • Author

    Pavlik, Ryan A. ; Vance, Judy M.

  • Author_Institution
    Grad. Program, Iowa State Univ., Ames, IA, USA
  • fYear
    2012
  • fDate
    5-5 March 2012
  • Firstpage
    29
  • Lastpage
    35
  • Abstract
    A gap exists between virtual reality (VR) software platforms designed for optimum hardware abstraction and cluster support, and those designed for efficient content authoring and exploration of interaction techniques through prototyping. This paper describes VR JuggLua, a high-level virtual reality application framework based on combining Lua, a dynamic, interpreted language designed for embedding and extension, with VR Juggler and OpenSceneGraph. This work allows fully-featured immersive applications to be written entirely in Lua, and also supports the embedding of the Lua engine in C++ applications. Like native C++ VR Juggler applications, VR JuggLua-based applications run successfully on systems ranging from a single desktop machine to a 49-node cluster. The osgLua introspection-based bindings facilitate scenegraph manipulation from Lua code, while bindings created using the Luabind template meta-programming library connect VR Juggler functionality. A thread-safe run buffer allows new Lua code to be passed to the interpreter during run time, supporting interactive creation of scene-graph structures. It has been successfully used in an immersive application implementing two different navigation techniques entirely in Lua and a physically-based virtual assembly simulation where C++ code handles physics computations and Lua code handles all display and configuration.
  • Keywords
    C++ language; application program interfaces; program assemblers; program interpreters; virtual reality; 49-node cluster; C++ applications; Lua code; Lua engine; Luabind template meta-programming library; OpenSceneGraph; VR JuggLua; VR Juggler; content authorisation; desktop machine; dynamic interpreted language; high-level virtual reality application framework; immersive applications; interaction techniques; interpreter; navigation techniques; optimum hardware abstraction; osgLua introspection-based bindings; physically-based virtual assembly simulation; physics computations; run time; scene-graph manipulation; thread-safe run buffer; Kernel; Libraries; Solid modeling; Syntactics; Transforms; Virtual reality; C++; Lua; Virtual reality; human-computer interaction; interactivity; software tools;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering and Architectures for Realtime Interactive Systems (SEARIS), 2012 5th Workshop on
  • Conference_Location
    Orange County, CA
  • Print_ISBN
    978-1-4673-1249-3
  • Type

    conf

  • DOI
    10.1109/SEARIS.2012.6231166
  • Filename
    6231166