Perception Toolbox for Virtual Reality
PTVR is a free and open-source library for creating visual perception experiments in virtual reality using high-level Python script programming. It aims at helping behavioral science researchers leverage virtual reality’s power for their research without the need to learn how virtual reality programming works. The philosophy of PTVR is thus very close to the approach of PsychoPy that has been so important and influential since 2007 for Vision Science researchers displaying stimuli on 2D monitors. |
Some of PTVR assets are:
- Researchers can create VR experiments rapidly and succinctly thanks to clearly structured high-level python scripts.
- Serious Games with sophisticated interactivity (pointing with handset, headset or gaze) can also be created in the same way.
- The use of such scripts, along with the transparency of the PTVR open-source code, is one of the necessary components to address the ‘reproducibility crisis’ in science and foster Open Science.
- Researchers can learn PTVR quite quickly thanks to two primary resources:
- The rich online documentation with many animated figures in 3D to visualize 3D subtleties.
- Demo scripts with didactic 3D and interactive features.
- The terminology used in the PTVR code is familiar to vision scientists. For instance, researchers can use an intuitive “Perimetric” coordinate system, allowing them to place their 3D stimuli with eccentricity and half-meridian coordinates easily.
- Intuitive ways of dealing with visual angles in 3D.
- Intuitive ways of dealing with the notorious difficulty of rotating 3D objects.
- An implementation of “flat screens” to replicate and extend standard experiments made on 2D screens of monitors.
- Easy ways of recording experimental results.
- Easy Gaze tracking and recording (only with HTC Vive pro Eye – in May 2025).
- Easy Head tracking and recording.
- Focus on implementing the standard and innovative clinical tools for visuomotor testing and visuomotor readaptation (notably for low vision).
- Great care to create accurately controlled text stimuli in the spirit of the psychophysics of Reading.
Requirements
- An HTC Vive Pro Series VR system. The HTC Vive Pro EYE includes an eyetracker.
- Or A QUEST 1, 2 or 3 system (starting from PTVR release 2.0.0 in May 2025) – no eyetracking.
- A Windows computer with VR system already set-up.
- Python >3.6. We recommend Spyder, a nice integrated development environment (IDE).
Notes
- Future PTVR versions will rely more and more on OpenXR to ensure as much as possible that PTVR will behave similarly on all conformant devices.
- PTVR is built using the Unity game engine as a backend (you will however not have to install Unity yourself).