OpenXR vs ARFoundation

Hi all,

In March, Khronos released a version of OpenXR. It’s purpose is to unify AR/VR development into a platform-agnostic API. I saw that Unity Technology is a supporter of the project.

Unity has their own platform-agnostic development set for AR/VR called ARFoundation.

I was wondering how OpenXR fits into the AR space, especially compared to ARFoundation. Are they related in any way? Two alternatives? Are there pros/cons of using one over the other?

Random and somewhat related

There is a battle right now between GLTF and USD(z)

You have to choose sides.

USD(z) preferred by Unity,Unreal,Apple,Pixar,Autodesk

GLTF preferred by Google & Khronos(Sketchfab is gonna come in when they are done sitting on their hands)

2 Likes

I want to know which one is the best in AR area,specillay in game indestruy.

ARFoundation is an Unity component based application C# framework which is more generic and independent from frameworks like ARCore and ARKit. So your scene setup do not relay on device specific components.

OpenXR is related to native drivers to unify device interfaces.
ARFoundation is using UnityXR C# Subsystems which load a native device driver implemented with UnityXR native provider.

Unity3D would normally integrates every XR runtime from different vendors. What we don’t want.
So Unity rather provides unified UnityXR native API.
Then there is a new even more generic API called OpenXR.
The difference between UnityXR and OpenXR is that UnityXR is only Unity compatible. OpenXR is supposed to unify API for all graphics engines from the top and all hardwares from the bottom.

From Unity3D side, an application developer will never deal with OpenXR, it is backend abstraction how Unity talks to devices. So you can still be using ARFoundation but internally Unity3D can use OpenXR if the device supports it.

4 Likes