VR JuggLua: A Framework for VR Applications Combining Lua, OpenSceneGraph, and VR Juggler
Date
Authors
Major Professor
Advisor
Committee Member
Journal Title
Journal ISSN
Volume Title
Publisher
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.
Series Number
Journal Issue
Is Version Of
Versions
Series
Academic or Administrative Unit
Type
Comments
This is a conference proceeding from Workshop on Software Engineering and Architectures for Realtime Interactive Systems (SEARIS) (2012): 29, doi:10.1109/SEARIS.2012.6231166. Posted with permission.