Headsup is a dashboard tool to remotely monitor and interact with VR headsets over LAN while delivering behavioral experiments to participants.
- VR application created using Unity. Both
CaptureManager.cs
andHeadsupServer.cs
must be added to the Unity project and integrated as described in the README. - Local network without restrictions on peer-to-peer communications. There has been mixed success using private networks (enterprise, research facility) that are centrally administered. A very effective alternative is to purchase an inexpensive router (e.g. TP-Link Archer AX1500) and connect all headsets and client dashboard to this network.
- Knowledge of the local IP address of the VR headset. This can easily be found via the network settings menus, within the Wi-Fi connection details.
Client: Dashboard UI presenting a screenshot feed and debugging information via a web browser.
Unity: Required Unity scripts for VR applications to stream information.
- Screenshots / streaming of the display content is very limited. Screenshots can be obtained, but capture results in a brief delay in the VR application while the PNG / JPG is processed. This is a technical limitation, this process must be performed on the main thread. Utilizing libraries such as UnityRenderStreaming has also generated mixed results, with significant framerate instability.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Please contact Henry Burgess <henry.burgess@wustl.edu> for all code-related issues and feedback.