unity-game-enginevirtual-realityoculusopenxr

How to enable OpenXR backend for Oculus Plugin


I have built a VR project for the Oculus Rift S device with hand controllers in Unity 2020.3.43f, and now I am trying to build it.

I get the following error:

BuildFailedException: OpenXR backend for Oculus Plugin is disabled, which is required to support Unity OpenXR Plugin. Please enable OpenXR backend for Oculus Plugin through the 'Oculus -> Tools -> OpenXR' menu.

This menu item doesn't exists, this is the closest thing I could find is this:

Option

Selecting Set OVRPlugin to OpenXR allows me to build the project, but the index finger no longer folds when pressing the index triggers for some reason.

I am using the built-in hand controllers prefabs that were imported with the Oculus unitypackage, and haven't changed anything.

Another thing I tried was to select the OpenXR in the Plug-in provider under the XR Plug-in management in the project settings.

Project settings1

But it disables the Oculus:

Project settings2

So, how do I enable that OpenXR backend?

P.S., I am using OVRPlugin version 1.78.0

P.S.2, when I debugged the code I noticed that it checks for Android platform support for some reason. Which I don't have nor need.


Solution

  • The solution was pretty simple and weird, I just had to comment/delete the line the throws the error in OVRGradleGeneration.cs

    if (!useOpenXR)
    {
        // throw new BuildFailedException("OpenXR backend for Oculus Plugin is disabled, which is required to support Unity OpenXR Plugin. Please enable OpenXR backend for Oculus Plugin through the 'Oculus -> Tools -> OpenXR' menu.");
    }
    

    This solved all the issues.