10-09-2022 08:49 AM
We are trying to run a Unity project on the Oculus Rift S, but whenever we run the application, nothing shows up on the headset. What could be the problem?
We will now describe our setup in detail.
PC
Windows 10, 64 bit
Headset
The headset seems to be well connected, the main menu shows up, both controllers are working and the room configuration works too. When trying a demo from the menu, this also works. The headset shows a white light.
Unity project
In general, we followed this guide for the setup: https://circuitstream.com/blog/oculus-unity-setup/
New Project -> 3D (version 2021.3.1f1 LTS)
Then, once the project is loaded we go to Edit > Project settings > XR Plugin Management and install that.
After which we select "Oculus" from the list of Plug-in providers.
We proceed with the Oculus integration installation from the Asset store. We import the latest version (44.0).
A bunch of popups show up.
-update oculus utilities plugin [Yes]
-OpenXR backend [use OpenXR] [ok]
-Restart Unity [restart]
-Interaction SDK [show assets (recommended)] [Clean Up (Recommended) ] [Clean up Package]
-update Spatializer plugins [Upgrade]
-Restart Unity [restart]
Setting the Scene
1. We navigate to Oculus > VR > Prefabs and drag OVRCameraRig into the scene. The "Main Camera" we then remove.
2. We click the OVRCameraRig object and change the OVR Manager (Script) to the right by changing "Tracking Origin Type" to "Floor level"
3. We rightclick in the hierarchy and create a 3D object "plane". We place this plane underneath the camera.
We have now created one of the most basic setups and would like to try it on the headset.
We press the Run button. Both Scene and Game show the plane in Unity, but nothing shows up on the headset.
Unity gives some warnings, but no errors:
These are the packages that we used:
Does someone have an idea what could be the cause, and if you try to replicate our steps do you get the same result?
Hope to hear from you!
11-17-2022 06:21 PM
I am having the same problem. Have you found a solution?
12-05-2022 01:00 AM
Yes and no.
First of all, the main cause appears to be that the PC that we use is just not very good. We tried running such a Unity program on a different PC and that worked flawlessly.
However, we also found a solution for running it on the old PC. Instead of running the program from within the Unity Editor, we build the project into an executable and run that. This only works when the module "Windows Build Support" is installed.
Install Windows Build Support
In Unity hub, go to Installs. Click the gear next to the Unity version that you are using. Click "Add Modules". Select "Windows Build Support (IL2CPP)" from the list and click "continue".
Build the project
After that is installed, open your project in the Unity editor. When you want to run it, go to File -> Build Settings.
Here you can build the project (default settings for "Windows/Mac/Linux" is fine). Select an empty folder. After building, there is an executable in the folder. Running that executable works fine for us.
Some other things:
1. If the light of the headset has turned red at some point, unplugging and replugging is a good way to fix that.
2. The building takes a lot of time (compared to pressing the play button), which is not so great for testing small changes with the headset and controllers. For us, the "play button" now actually works on the headset about half of the time. This is useful when we want to debug something related to the controllers.
I hope this is of help to you!
Best,
Boudewijn