What is the best Tech stack for Unity Quest 2 development?

OpenXR doesn’t work for Quest 2 builds but it works in Editor play mode with Oculus link. Is this even supported yet or am I missing something here? Unity version: 2021.1.24f1

Oculus is planning to deprecate their integration package and move towards using OpenXR

Everything seems to be in a transition phase at the moment. I couldn’t find any good holistic documentation on this topic.

I’m about to start working on a Quest 2 VR project using Unity. We might want to add other headset support later down the line (Vive Focus 3 or any other standalone headsets etc.). What is the best tech stack to use? OpenXR? Oculus Integration package? OpenVR? XR Interaction tool kit?

Unity’s XR is most stable. OpenXR is not currently stable.

What plugins are you referring to when you say Unity’s XR? Can you elaborate please.

Unity - Manual: XR Plugin Management and nothing else. Use it to control the device support and it will download and install what you need.

Oculus isn’t deprecating Oculus Integration. They are planning to deprecate Oculus XR Plugin and migrate to Oculus Integration + OpenXR Plugin.

However, if you don’t use Quest-specific features such as hand-tracking, video pass-through and other Oculus platform features, and you plan to port your application to other headsets, Unity’s XR Interaction Toolkit + Oculus XR Plugin might be a good choice. You can support other headsets by just switching plugins.

Interaction Toolkit is high level and nothing to do with stability or feature reach.

Appreciate the input @hippocoder @korinVR . A few follow up questions re what you 2 said:

  • Unity’s XR interaction toolkit is still in Pre- Release state. Is it in a stable enough state to use for production?
  • @korinVR Just wanted to double check. When I use XR interaction toolkit + Oculus XR plugin, I don’t need to import the Oculus integration package? Is that correct?
  • I was planning on using the Universal render pipeline. Just wanted to make sure that is the best (visual + perf) option as far as Mobile VR is concerned.

It’s just helper stuff, it’s nothing to do with VR tech at all. It’s if you don’t want to code your own pick up and drop or buttons and so on. Worst case you have a janky button. So I guess, yes, it’s fine - if that’s what you want. It won’t make a difference to stability, it’s just gameplay scripts.

I’m a power-snob, I just wont touch anything gameplay wise others have done and will reinvent mighty wheels of self-inflicted pain.