HOME CONSULTING PUBLICATIONS PROJECTS CV (PDF)
CaveSim 2.0 CAVESim 2.0
A CAVElib Simulator Interface with Improved Wand Interaction and Navigation

The current CAVElib simulator interface, unchanged since its creation more than a decade ago, constrains wand motion to horizontal and vertical planes relative to the user and prevents simultaneous travel and visual inspection of the environment. I developed an enhanced simulator that toggles between more user friendly mouse-look and mouse-wand modes. The mouse-wand mode makes reaching objects trivial by moving the wand in a spherical coordinate system with respect to viewpoint. The alternate mouse-look mode allows the user to travel through the environment and while independently conrtoling their viewpoint.

Wand In Arm Out
In wand mode, the wand position is the same as that of the normal cursor and moves within the plane of the image. The Ctrl button changes the up/down behavior to an in/out motion to reach objects occluded by the wand.
Mouse-Wand Navigation Mouse-Look Navigation
The arrow keys control navigation relative to wand direction. Because it is always oriented towards the user, the wand can contribute more subtle navigation than the left/right arrow keys. Switching to head mode locks the wand in position and gives viewpoint control to the mouse. This allows the user to navigate with arrow keys independent of their viewpoint.

RELATED LINKS

Download the video here (MP4 11.2MB)
The official CAVElib website maintained by VRCO/Mechdyne an EVL spinoff company.
Download location for the latest internal EVL version CAVElib_2.7.4 (restricted access).
The Ygdrasil GUI project uses the enhanced simulator interface for desktop interaction.

MORE DETAILS

Simulator State Diagram
State Diagram
This state diagram shows the various states of the interface as the user toggles between wand and head mode using the tab button. In both modes, holding the ctrl button maps the mouse to an in/out and left/right movement of the wand or head. In wand mode, the alt button changes the wand rotation relative to its orientation towards user viewpointe. The alt button moves the user up/down and left/right while in head mode. The keypad enter button also temporarily toggles the mode when held down. Regardless of mode, the arrow keys send a value between 0.25 and 1.0 to the tracker valuator depending on the wand distance from the user. As with the original simulator, this allows a default point-and-go control strategy to be mapped to the simulator interface.

Simulator Help
Classic Mode
The enhanced simulator interface does not supercede the default interface but, rather, is enabled via an additional simulatormode configuration keyword. The default value is classic and the other two options are wand and head. Another change to the CAVElib code is an increase in the number of simulatorcontrols key assigments to 33. These additions allow every mapped key to be reassigned; making it possible to realize applications that utilize full keyboard input. Pressing the key mapped to simulator help displays information relevant not only to simulatormode but also to the current key mappings.