Prime-VR2 is a 3‑year EU H2020-funded project aimed at the development of accessible VR software and hardware controllers to facilitate access and develop rehabilitiation environments for various types of movement disorder. A specific goal is to develop a platform for VR games supporting targeted therapies for people with neuromotor disabilities.
UCL’s roles in the project are in the development of software interfaces for the VR platform and in assessment and evaluation through user studies. Currently we are developing user interface tests that represent key common tasks in VR, and are involved in the assessment of hardware interfaces on such tasks.
One issue that seated VR-players struggle with is that sitting down limits gameplay. This is simply because it deprives them of specific positional inputs. The movement in the xz-plane and along the y‑axis in particular. This makes it difficult or impossible to use many virtual reality applications.
One software interface that we are investigating as a possible solution to this is co-piloting. It is not a novel concept but mostly known from regular video games. With co-piloting, a second player takes over controls that the first player cannot do. In our case, these are the positional controls.
In this picture, the second player has the movement controls mapped to a Gamepad so they can assist the player in VR
To enable the user to adapt the experience to their individual needs, we do not specify any particular input device or input mapping. Instead, we are utilising the input binding system that SteamVR offers for all VR games. This means that any controller that SteamVR recognises can be used by creating a binding for it. Custom devices are usable in the same way, as soon as a SteamVR driver is written for them. Options that we have successfully tried ourselves include Xbox gamepads, Microsoft’s Xbox Adaptive Controller, and established VR controllers like the Oculus Touch Controller).
Due to the possibility to freely choose and configure the second input device, CopilotVR can not only be used for two players to play as one but also for the seated player to assist themselves by means of input that are suited to their individual needs.
Because our implementation is manipulating the input at the level of the SteamVR/OpenVR Framework, CopilotVR can be used with any virtual reality application that is utilising this framework.
An open-source implementation of CopilotVR can be found on GitHub.
We invite anyone interested to try it themselves and contribute to the project.