Display and observer moving independently. Rendering is using anaglyphic stereo separation.
3D visualization in CAVEs and Powerwalls are situations where, the view frustum, describing the projection of the scenery onto the screen depending of the viewers position to the screen, is in general asymmetrical. The wording "window-into-a-virtual-world" is used to express a dynamic recalculation of the view frustum, based on the position of the viewer and the pose of the screen so that the view on the display appears as showing the virtual scenery behind the area occluded through the display. This project implements a generic "window-into-a-virtual-world" screen concept that allows for establishing a wide range of applications, ranging from CAVE environments over powerwall setups to portable LCD screens.
Through extension of the Ubitrack library by a new pattern that models the view frustum easy incorporation into further systems will be enabled.
Possibilities
This screen concept enables the realization of a wide range of display environments by allowing both, the display and the oberser, to be movable. Simple setups, with a stationary display, can be used for CAVE environments and Powerwalls. But in general, the display can also be relocated while the content presented is updated according to the relative position of the observer in realtime. This way the display becomes like a window into a virtual world.
Requirements
To provide the illusion of reality in computer graphics, the scenery must be drawn in real-
time with a preferably high frame rate. Computation time for a rendered
frame depends on the complexity of the geometry shown, the amount of vertices and poly-
gons. The computational overhead for this screen concept should be as small as possible.
Offaxis projection
Instead of being forced to stay in front of the display at a fixed distance, the Window into a virtual World screen concept allows the user treat the display like a frame and look through it from arbitrary positions and angles. The virtual world displayed is coincident with real world and so the virtual objects appear to be fixed in space.
For every rendered frame the projection matrix is recalculated to reflect the users position relative to the display. The usual view frustum, a pyramid with a cut off top, deforms to an offaxis frustum.
Hardware
3D hardware acceleration is strongly recommended depending on the scene complexity to be displayed, but is not mandatory.
A tracking system supported by the Ubitrack framework is also recommended. One of the simple test setups used paper markers and a webcam for the headtracking and red/green glasses for anaglyphic rendering. This way applications for CAVEs or Powerwalls can be developed and tested without access to expensive hardware.
Implementation
Example hardware setup.
The offaxis projection has been implemented as an Ubitrack component and is available with the regular Ubitrack trunk. The component itself has no dependecies to other libraries and returns a combined projection/camera matrix in an OpenGL compliant way.
For direct implementation without the Ubitrack component infrastructure, look in Ubitrack's Calibration folder for Projection.cpp.
Configure Ubitrack as needed, drivers section needs to be installed
Do not forget to define all envvars
Look in /Ubitrack/doc/utql for demonstration workflows (Note: These workflow are incompatible to the new offaxis projection syntax now present in the latest Ubitrack checkout.
Run bin/utconsole doc/utql/[A-Z]CAVE*
See readme file in SEPHeuser folder for the diffs to the original ubitrack checkout (changes to get anaglyphic renderer running)
Realization of a "window-into-a-virtual-world" screen concept.
Abstract:
3D visualization in CAVEs and Powerwalls are situations where, the view frustum, describing the projection of the scenery onto the screen depending of the viewers position to the screen, is in general asymmetrical. The wording "window-into-a-virtual-world" is used to express a dynamic recalculation of the view frustum, based on the position of the viewer and the pose of the screen so that the view on the display appears as showing the virtual scenery behind the area occluded through the display. This project implements a generic "window-into-a-virtual-world" screen concept that allows establishing a wide range of applications, ranging from CAVE environments over powerwall setups to portable LCD screens. Through extension of the Ubitrack library by a new pattern, that models the view frustum, easy incorporation into further systems will be enabled.