Figure 1

Reading through and modifying C# code can be a taunting task. While Unity displays public variables in the inspector window,navigating a long array of options quickly gets overwhelming. VREX uses a separate graphical user interface inside the toolbox to provide intuitive access to common operations within the program. The simple menus allow creating and modifying environments and build experimental plans with different stages (Figure 1, right). Until now it is confined to generating indoors environments. In particular, VREX provides a procedural generation of different (interconnected) rooms that can be automatically furnished with a click of a button  (Figure 2, left).  VREX is built for generating different psychological experiments. Hence, it comes with a menu system for creating and storing experiments with different stages. The user can combine different rooms and environments with different testing situations. VREX also provides a data logging system for experiments.

Figure 2

For fine-tuned control VREX also comes with an editor where all the objects in the room can be manually placed and adjusted in the 3D world (Figure 3, down). VREX supports change blindness experiments where changes to objects depend on the head movement of the subjects. The researcher can change object’s visibility, colour, or location. In memory related experiments VREX supports logging all the objects seen by the study subject and presenting them later for recall. Seen objects can also be changed, swapped or deleted. VREX comes with spatial audio integration. The system provides various locomotion systems to navigate the virtual worlds.


It is easy to generate new custom experiments in VREX with the blank template. The toolbox has well-commented C# source code and some tutorial videos. Currently VREX only supports the Oculus Rift headset.

Figure 3