CWI Box groep6
CWI Box groep6
This WIKI page describes the process and results of group6 of a project for the TU/e course: Interactive Virtual Environments.
Currently the CWI box application is used as a demonstration by the Centre of Computer Science and Mathematics (CWI). It shows various aspects of immersive Virtual Reality, The application shows a 3D box or room with several airplane-like objects flying around. The goal of this assignment is to quantify the effects of various techniques that will increase the immersive VR experience of the CWI box application in a CAVE environment. We decided to narrow this down to two subjects:
- the effect of adding 3D sound on the immersive experience
- the effect of latency on the immersive experience
Before we can continue setting up the experiments we first have to port the CWI box application so it can be used for both ego-, and exocentric viewing in the Fontys CAVE.
The main research question we defined is: "What are the effects of realizing lower head tracker latency, and adding sound to the CWI box application, on a user’s level of emersion?"
Algorithms & Methods
Programming for the Fontys CAVE
The applications created for the Fontys CAVE where build using three programs: OpenSceneGraph, VR Juggler, and Microsoft Visual Studio 2005. OpenSceneGraph is a graphics toolkit for the development of high performance graphics applications. It provides an object oriented framework on top of OpenGL taking care of the low level graphics calls. VR Juggler is used to scale the application from a desktop computer to complex multi-screen systems like the Fontys CAVE. Microsoft Visual Studio 2005 is used to handle user interaction and other programming tasks.
Predictive Head Tracking
Lag is one of the main problems in disrupting a VR experience. This can be noticed when there is a noticeable discrepancy between the user’s head movement and the image drawn on the screen. This latency will not only disrupt the feeling of immersion but can also cause motion sickness. Bringing the latency down is no simple task. The common method used is to predict the user’s movement based on the position and movement history. Bad prediction algorithms will be prone to errors. It is our goal to minimize these errors so latency is decreased without introducing noticeable errors. The Kalman filter might fit our needs.
Implementing several depth cues is essential in creating a believable VR experience. Most likely the CWI box application will contain a great many of these cues already, like: stereo vision, motion parallax, geometric perspective, relative size, occlusion, and shading. We will add those cues that are not yet implemented.
The sound of passing airplanes will very likely help increase the level of immersion. Especially if it is done well. Using the 5.1 speakers available in the CAVE the sound can travel from side to side. Adding additional effects to the sound like the Doppler- effect and other audio algorithms will increase the realism of the sound.
Predictive Head Tracking
To quantify the latency we attach a tracker to a pendulum and move a simulated image on the screen using the tracker positions. We video both the pendulum and simulated image together, and fit two sine curves, one to centre of motion of pendulum and one to the centre of motion of the simulated image. From the phase difference between these two sine curves we can determine if latency changes significantly less than the frame rate of the camera.
Depth cues are evaluated by doing experiments with human participants. The subject will be divided in experimental en control groups and will experience the application in several different settings. Separate depth cues will be turned on and off and the subject has to grade the different settings on several points.
The effect of adding immersive sound can be measured several ways. One will be using the same experimental setting as for depth cues. Another experiment can be set up where the subject will stand in the CAVE but will be blindfolded. A simulation will be started where an airplane will fly in a random direction. The subject will have to guess the airplane’s trajectory based on its sound. A variation on this experiment would be if the subject would not be blindfolded but when more than one airplane will be simulated but only the sound of one can be heard. Again the subject’s task is to pick out the right plane.