Immersive Visualization / IQ-Station Wiki
This site hosts information on virtual reality systems that are geared toward scientific visualization, and as such often toward VR on Linux-based systems. Thus, pages here cover various software (and sometimes hardware) technologies that enable virtual reality operation on Linux.
The original IQ-station effort was to create low-cost (for the time) VR systems making use of 3DTV displays to produce CAVE/Fishtank-style VR displays. That effort pre-dated the rise of the consumer HMD VR systems, however, the realm of midrange-cost large-fishtank systems is still important, and has transitioned from 3DTV-based systems to short-throw projectors.
HEV
HEV VR integration library
HEV is a VR integration library developed at the National Institute of Standards and Technology (NIST). While it is possible to develop individual visualization applications from HEV, HEV takes the approach of having a single primary application (irisfly) that can be expanded using dynamically loadable options, along with using a control scheme that uses independent GUI tools that send commands to the application through a named pipe.
HEV was primarily written by John Kelso, a member of the NIST HPCVG (High Performance Computing and Visualization Group), and builds on the DTK (Diverse ToolKit) from Virginia Tech.
There are many visualization applications that have been created using the extendable "irisfly" scheme.
Running HEV
There are a number of steps to configure the shell environment before running HEV. Primarily there will be a bash configuration script that will handle the details.
Preparinging the Environment
% cd .../hev
% source .bashhev
% hevhere
Setting up the IRIS environment
[...]
% echo $HEVROOT
/home/<user>/Apps/hev # or whatever
In another shell you can run several commands that interact with the DTK tracking:
% dtk-caveDeviceSimulator
To find other available (of a myriad of) tools, use the "findAnts" tool:
% hev-findAnts
Running irisfly with a model file
The basic irisfly application can take arguments to load a model file.
% man irisfly
% irisfly --ex tape.osg
% irisfly -s --ex tape.osg # To run in simulator mode only
Running irisfly with an existing visualization (demo)
There are many visualizations that have been created for the HEV environment. These can be found in the directories baseDemos and extendedDemos.
irisfly interactive keyboard commands
There are several active keys available when running irisfly:
- j -- toggle jump mode
- h -- toggle head
- C -- Cave simulator
- c -- bounding boxes
- keypad arrows -- rotate when in (or not in?) jump mode
- 5 -- reset view rotation
Building HEV
HEV Dependencies
HEV depends on a handful of libraries to compile the final applications. The HEV build-tree contains compatible versions of many of these libraries:
- OpenSceneGraph
- dtk
- FLTK
- coin
- (perhaps others)
Installing HEV
Configuring HEV
Terminology
- HEV -- High End Visualization
- IDEA -- IRIS Development Environment for Applications
- IRIS -- Interpreted Runtime Immersive Scenegraph
See Also
- About hev-doc -- Steve Satterfield's summary of using HEV (Internal to NIST)
- hev-doc additional documentation -- Directory (web-browsable) with more files by Steve Satterfield
- Making a new release -- Steve's notes on creating a new release
- HEV Git Repository Notes -- Wes' instructions on using Git for HEV
- IRIS HTML documentation -- documentation on Steve's panix site (might be old)
- ~/Apps/HEV/HEV-20210625/hev/iris/doc/html -- Local files included with an HEV release
- .../control.html -- IRIS usage controls