Overview
Pages are being reorganized, more content will be added
OpenXR is a native C API which you can use to build support for XR in your engine. The interface itself abstracts away from the actual device, which makes it easy to write applications that are future proof, and with checks of hardware capabilities an application can be run on a wide variaty of devices without the need to build special versions.
The C API interface is an open, royalty free standard from Khronos, and can today support both VR, AR and MR devices. The standard itself is defined in the OpenXR specification available on Khronos OpenXR site. As the standard is a specification only with HMD vendors being responsible for the implementation of the standard there are no specific vendor binaries required in the actual compiled app. Instead the interfaces are wired up at runtime to the vendor provided OpenXR runtime which typically is installed during the device setup through an installer. In our case our Varjo Base installer, installs Varjo OpenXR Runtime along with the other drivers and software required to use our HMD. From the developer perspective, this basically means that applications that have been developed to support one HMD from Vendor A should run without modification on another HMD from Vendor B.
Ongoing work
Varjo is an active contributing member in OpenXR standardization, and we are committed to provide support for our products through OpenXR interfaces. Varjo headsets fully support OpenXR and can run your OpenXR applications.
Already today there are many engines build on top of OpenXR interfaces such as Unity, Unreal, and Godot to name a few. This shows that OpenXR is ready for prime time and is a good choice if the functionality provided on the platform suits your needs. As a contributing member in the Khronos OpenXR working group, we are committed to continue to extend OpenXR interfaces to support our products.
OpenXR C interface, which makes it possible to even extend the base functionality that the engine has implemented through interfacing with the interface directly in your application.
Developing OpenXR applications with Varjo
To use Varjo headsets to their fullest, you need to enable a combination of core functionality together with cross vendor extensions and vendor extensions. The following table shows feature areas where we support cross vendor extensions or our own extensions.
Numbers in the table indicates that functionality is part of an upcoming release.