Rendering
Previous  Top  Next


The user's program should not attempt to perform any windowing operations or make any perspective projection calculations. The CAVELib does that work, and and will do so correctly for whatever VR display device it is configured for.

A CAVELib application is by default set to render in RGBA mode, double-buffered, with z-buffering. Users should not issue the swapbuffers command; it is handled internally by the CAVELib. The developer is responsible for any other graphics commands, such as lighting, object transformations, smoothing of lines, and clearing the screen, there are no default actions for these functions.

The CAVELib can use one of two API's for rendering OpenGL or OpenGL Performer. Scene graphs that are based on OpenGL may also be used as the rendering engine with the CAVELib. VTK, OpenRM, Open Inventor and Volumizer have all been used by customers with the OpenGL CAVELib.

When using the CAVELib on a visualization cluster the CAVELib handles the frame and buffer swap synchronization between the PCs. The user need not worry if the draw function on each PC will be using the same tracker or input data for a frame, the CAVELib guarantees data synchronization of its internal variables for the user.