-
Notifications
You must be signed in to change notification settings - Fork 48
Oculus Quest Setup
(See issue discussion on this topic).
UXF can run on many platforms, but data output methods may differ. As of version 2.3.4, UXF supports 2 means of storing data when playing experiments natively on the Oculus Quest (or any Android device for that matter).
- FileSaver - Data can be saved to the local file storage on the device, then accessed when plugged into a PC via USB.
- HTTP POST Data Hander - Sends data to a web server (device must be connected to a network where it can access the server).
See the Data Handlers section.
If you just want to run experiments on the Oculus Quest via Oculus Link, you are running on the Windows/PCVR platform and so you do not need to set up anything special, so you can ignore the below.
First, you should follow a recent tutorial for getting your device working with Unity. Test that you can run basic Unity Scenes in your headset before adding UXF to your scene. You can open the UXF Wizard popup menu to help switch to typical target platforms.
When you are ready, add the [UXF_Rig]
Prefab to your scene. For compatibility, you will need to change a few things:
- You cannot use the UI system when running on Oculus Quest natively, since there is no screen for the experimenter to see. In the UXF Session component, click the Behaviour tab, and click
Configure
the User Interface. SelectStartup Mode
->Automatic
. You could selectManual
if you wish to start your session manually with code (session.Begin(...);
). - In
Automatic
startup mode, you cannot select a settings file from the UI, so selectSettings Mode
->Empty
. - Finally,
Automatic
startup mode means you cannot select the Data Save location either. So in your Session component, select Data Handling. Here, make sure only compatible data handlers are selected. If you are using theFile Saver
Data Handler, selectConfigure
. Here you need to change theData Save Location
toPersistent Data Path
. This will store the data on the device's internal storage.
To make full use of UXF you may want attach PositionRotationTrackers to the hands/head GameObjects to record their positions during trials.
After creating your experiment, you can build your application to an APK and run it on the device, according to Oculus & Unity instructions.
If you follow the above steps, you should be able to run UXF applications on the device. When you run a UXF application, it seems currently to only save data if you do not quit mid-way through the experiment.
Data will be accessible in the form of standard files generated by UXF. If you plug your device in to a PC via USB, the files will be located at:
This PC\Quest 2\Internal shared storage\Android\data\com.MyCompanyName.MyProjectName\files\my_experiment
MyCompanyName
and MyProjectName
can be configure in the Unity Editor in Edit
-> Project Settings
-> Player
.
On issue with the Quest does not exit applications gracefully, so we do not have the opportunity to save the session data if the user quits. So make sure you have some means of saving your data when you complete the last trial. See issue #119 for other solutions.
If you target the WebXR platform you could host your VR experiment on a website, the use the AWS DynamoDB data handler to collect data.
๐ง Core topics
- ๐ Background
- โจ UXF 2.0
- โ๏ธ Compatibility
- ๐ถ๏ธ Oculus Quest Setup
- ๐ญ Concepts
- ๐ ๏ธ Get started
- ๐ Examples
- ๐ฅ๏ธ Built-in UI
- ๐ Session generation
- โฐ Events
- ๐ Data collection
- โ๏ธ Collect custom data
- ๐ Custom Data Handler
- ๐ Remote Data Collection
- ๐๏ธ WebGL DynamoDB setup
- ๐ Processing DynamoDB CSVs
- ๐ซ HTTP Post Setup
- ๐ง Settings system
- ๐๐ฝ Tracker system
- ๐ Logging system
โ ๏ธ Common issues- ๐ผ๏ธ Multi-scene experiments
- ๐บ Videos
- ๐จโ๐ Full written tutorial
- ๐ฆ Asset links
- ๐จโ๐ซ Unity tutorial links
- ๐ Useful code snippets
- ๐ก Programming ideas
- ๐งฎ Example R processing