Glossary of Terms

C

ClusterJuggler

An extension to VR Juggler designed to make PC clusters a feasible alternative to expensive shared memory systems. It cannot simply utilize the design of traditional clusters because virtual reality requires special functionality not present in conventional cluster applications. It also should not put the burden on the VR application developer to perform communication between cluster nodes. To prevent burdening the developer, the design retains some of the features that shared memory systems provide for virtual reality by hiding the complexities of a cluster.

Context-specific data

In OpenGL terms, some information that is associated with a specific OpenGL context.

Critical section

In multi-threaded programming, a block of code that reads from or writes to data that is shared across multiple threads.

F

Facade

Provides a unified interface to a set of interfaces in a complex subsystem.

Frame

In computer graphics terms, one iteration of a rendering loop. In VR Juggler, a frame is one complete pass through an application object's methods, beginning with vrj::App::preFrame() and ending with vrj::App::postFrame(). Methods called in between include vrj::App::intraFrame() and methods that are specific to a given graphics API.

G

GUID

Globally unique identifier that is generated using various properties of a machine and a random number generator. It has been proven that it is statistically impossible for the same number to be generated twice within your lifetime.

I

interface

An interface is a collection of operations used to specify a service of a class or a component.

R

Remote Input Manager Plugin

Plugin designed to create a distributed shared memory system for VR application I/O (input/output) data. As a result of distributed I/O, application development and execution can transparently move between shared memory VR systems and PC cluster VR systems. This means the same VR applications will run on both systems, without any changes needed to the application.

S

smart pointer

In C++ terminology, a smart pointer is a pointer-like object where the pointer dereference operators (-> and *) are overloaded to perform special functionality. This takes advantage of C++ operator overloading to hide extra processing steps behind a familiar syntax.

V

virtual platform

An abstraction of the operating system and hardware (both the computer architecture and the input devices) that comprise a VR system. A virtual platform provides a cross-platform and cross-VR system layer upon which portable VR applications can be written.

VR Juggler

VR Juggler is a open source project that creates a platform for Virtual Reality applications to run on. It allows a users application to be written once and run on any platform or configuration without recompiling. For example you could create an application to run on your home computer and then run the exact same application on the multi-million dollar C6 in Howe Hall.