VR Juggler Virtual Platform: Mission Statement

VR technology as a whole is stagnating with its closed source solutions. This means that anyone new to VR need to completely develop a new solution, often inferior than others. Releasing an open VR system is vital to the development of VR. Instead of reinplementing VR systems, people need to focus on implementing new VR ideas and methods so that VR technology can mature. Now, because of VR Juggler, people can focus on implementing these new VR ideas and methods for the future because now this standard technology is readily available to all, free from cost or legal ties.

Juggler is a platform for virtual reality applications. The name comes from the delicate balance that must be struck between flexibility, performance, and ease-of-use. You develop your application once for Juggler, then anywhere that Juggler is supported, your application is also supported.

VR juggler's design addresses several key requirements for a virtual reality development system.

Flexibility is achieved by placing common abstractions over I/O devices. New devices can be added easily, and existing devices can be reconfigured or replaced, even while an application is running.

To allow optimal performance, applications are given direct access to graphics APIs (currently including OpenGL and Iris Performer).

VR Juggler includes built-in support for performance monitoring of applications and graphics subsystems. It supports multiple-processor machines and will support distributing applications across multiple machines.

Using VR Juggler and developing applications are kept as simple as possible. Small base classes provide a skeleton for application development, while the abstractions of I/O devices simplify programming. During run-time, any VR Juggler application can be controlled or reconfigured by a Java-based graphical interface.

VR Juggler is designed to support a wide array of VR hardware on a variety of architectures. Several tracking systems, gloves, and input devices are already supported. Juggler supports projection- based displays such as the CAVE or C2, and includes support for head-mounted devices. Development work is being done on IRIX, Linux, Windows NT, Solaris, and FreeBSD systems, with reports of success on HP/UX.