The OpenBCI Labyrinth is a virtual platform suitable for interaction with Brain-Computer Interfaces.
This project is being developed as part of the "Navigating a Virtual Environment using Eye Movements" diploma thesis at the school of Electrical and Computer Engineering of the National Technical University of Athens, under the supervision of Dr. Areti Tzelepi and Dr. Angelos Amditis of the I-SENSE/ICCS Group.
Video of the 1.0-beta-2 version of OpenBCI Labyrinth:
A Brain-Computer Interface is defined as "a direct communication pathway between a brain and an external device". OpenBCI features a modular input system that can use local (keyboard, joystick) or network input devices. The system has been tested successfully both with local devices and with Electrooculography signals streamed over the network.
The visual aspect of the application places the user inside a labyrinth. This is a suitable environment for BCI interaction, because:
- it is intuitive and simple to explain (i.e. 'find the exit')
- it can be navigated with just 3 degrees of freedom ('stay', 'turn' and 'move forward' events)
- it allows easy extrapolation to higher degrees of freedom (e.g. 3d occulography may add 'look up/down' or 'move when eyes focused on the far plane' events)
Most aspects of the labyrinth are procedurally generated. The exact layout and geometry is generated during runtime; the high-resolution textures have been generated offline using Genetica and the excellent GIMP image editor.
The labyrinth uses a typical OpenGL 3.0, forward-rendering pipeline. Several shading effects are utilized to create a compelling visual experience:
- Tweaked Phong shading provides lighting and specular highlights
- A bloom filter softens the image and improves the appearance of bright objects
- Variance Shadow Maps increase image contrast and provide dramatic effect through their movement. Overdarkening is applied to fix light-bleeding issues inherent in VSM, while a gaussian filter increases their softness.
- Relief mapping with self-shadows is selectively applied on surfaces to provide a 3d appearance.
- Specular maps are used to control the specular highlights of each surface material.
- Stereoscopic rendering provides a sense of depth on systems that support it.
The OpenBCI Labyrinth requires OpenGL 3.0 capable hardware: NV50 (Geforce 8000-series), R600 (Radeon 2000-series) or newer. GPUs. Note that stereoscopic rendering is only supported by workstation video cards like the Quadro or FireGL series.
Source code will be released upon the completion of the project.