Open XR: A Call for Standardization
Andrew Wheeler posted on March 29, 2019 |

The lion's share of media attention sometimes appears to focus solely on the slowly-improving hardware capabilities of virtual reality and augmented reality headsets. Of course, getting the hardware engineering right is crucial for enthusiasts in this niche industry. Like any new computer electronics hardware device, the potential capabilities are encapsulated and presented to the public in the form of enhanced or additional features, like a wider Field-of-View (FoV), or foveated rendering. But the lack of software applications for any emerging technology, including augmented reality and virtual reality headsets, is a hapless bottleneck to a wider scale adoption by enterprise, let alone consumer markets. And software is much more difficult to create for virtual reality and augmented reality. But bottlenecks are unavoidable in product development, especially of high technology.

Microsoft HoloLens 2
New versions of augmented reality headsets like the HoloLens 2 are released to much fanfare, but prohibitively high development costs keep their potential muted due to lack of software. There are cycles for development, and developers are battling high expectations from consumer and enterprise markets. Open XR is a coordinated attempt by major players in the industry to create an open standard to make it easier for developers to test their applications across multiple platforms without worrying too extensively about interoperability issues. (Image courtesy of Microsoft.)

For consumers looking to inhabit virtual games, developers are not to blame for the lack of software because expectations of replicating PC gaming experiences in virtual reality from the gaming community are too high when compared to the reality of their costs. New developers have even more problems on their hands because they are creating new content in a new environment as a new developer. And the cost of developing for virtual reality and augmented reality is prohibitively high. 

Oculus has subsidized the creation of content from studios while Vive did not. Subsidization gives developers more scope and depth to play with in terms of delivering substantive content, and Vive's approach yields smaller projects, though they do have an accelerator program that startups can apply to. VR for advanced product design of large-scale products like cars, trains, hyperloops and planes, where designers can benefit from simulated immersion in virtual prototypes, is where enterprise sees a return on investment for implementing pilot programs with headsets.

So for virtual reality and augmented reality companies this year, winning enterprise accounts is the main goal. But software applications for virtual reality and augmented reality are far and few between. And though this is natural for an emerging hardware technology, the scarcity also doubles as a bottleneck for wide-scale adoption.

In the world of additive manufacturing, the 3MF foundation was formed by major companies looking to acknowledge and develop the .3mf file format as a universal file format for 3D printing. For the companies that joined the 3MF foundation, the idea was to support a universal format to prevent incompatibility and drive innovation. The standard file for 3D printing still is the .stl file and not the .3mf file a few years later. The .3mf file has room for many more attributes than the .stl file, including the ability to set colors. Creating universal open standards are one thing, getting every enthusiast to adopt them is another thing entirely. The companies that make up the 3MF Foundation include all the big players in additive manufacturing, such as Shapeways, 3D Systems, Stratasys, HP and Autodesk among others.

Open XR appears to be a similar type of organization to the 3MF Foundation in the virtual reality and augmented reality space.

What is Open XR?

OpenXR describes itself as an "open standard, a royalty-free platform that offers complete access for high performance in terms of virtual reality and augmented reality", which they're trying to make known as "XR" devices or platforms. This platform is backed up by top AR and VR companies in the market including . It is under the process of development by an association planned by the Khronos group.

Without a cross-platform standard, VR and AR applications and engines must use each platform’s proprietary APIs. New input devices need customized driver integration. Graphic showing fragmentation before OpenXR OpenXR enables applications to run on any system that exposes the OpenXR APIs. Input device manufacturers will be able to self-integrate their drivers into OpenXR runtimes that expose the device plug-in interface (available in future specification update).

This is the crossword puzzle developers run into when developing for VR and AR. Since there is no cross-platform standard, VR and AR applications and engines have to criss-cross between each individual platform’s proprietary APIs. Every new input device needs its own customized driver integration. (Image courtesy of Open XR.) 

On March 18, 2019, the group announced the availability of the ratified standard of OpenXR provisional version 0.90 with specifications that are available for enthusiasts and developers to test for further evaluation before the release of OpenXR 1.0. Along with its release, Microsoft is also launching OpenXR runtime for trials so that its content compatibility can be matched with Windows Mixed Reality headsets. Oculus stated that they are also planning offer runtime support especially for apps planned for ratified OpenXR standard on Quest and Rift.

OpenXR has been making progress toward creating a universal connection between AR and VR hardware, content, game engines, with the end goal of creating an interoperable ecosystem to speed software development. OpenXR is supported by major engine companies (Unity and Unreal) and hardware platforms (Windows Mixed Reality for example) along with the major AR players such as Magic Leap. Individuals from different companies have been actively involved in developing the ratified standard for two years, with primary coordinating efforts coming from Khronos group.

Consulting company Collabra is also releasing Monado, which is an open source runtime and SDK prepared for OpenXR over Linux for driving the Open HMD-compatible type of headsets.

What does OpenXR 0.90 do?

In the group's own words, OpenXR 0.90 "specifies a cross-platform Application Programming Interface (API) enabling XR hardware platform vendors to expose the functionality of their runtime systems. By accessing a common set of objects and functions corresponding to application lifecycle, rendering, tracking, frame timing, and input, which are frustratingly different across existing vendor-specific APIs, software developers can run their applications across multiple XR systems with minimal porting effort—significantly reducing industry fragmentation."

The OpenXR 0.90 provisional release specifies a cross-platform Application Programming Interface (API) enabling XR hardware platform vendors to expose the functionality of their runtime systems. By accessing a common set of objects and functions corresponding to application lifecycle, rendering, tracking, frame timing, and input, which are frustratingly different across existing vendor-specific APIs, software developers can run their applications across multiple XR systems with minimal porting effort—significantly reducing industry fragmentation.
The OpenXR 0.90 device plugin interface allows hardware companies producing and developing AR and VR headsets to show how efficient their runtime systems work, and where they have interoperability bottlenecks. The differences in development environments for tracking, frame timing, input and rendering are nullified so that software developers can run their apps on multiple platforms without worrying about the numerous chores surrounding porting to different platforms. (Image courtesy of Open XR.)

Bottom Line

Emerging technology like AR and VR need time for development, and open standard organizations like OpenXR are trying to make it easier for developers to close the gap between touted potential and actualized potential. However, creating standards like Open XR 0.90 is an ongoing process, and universalizing development comes with it's own costs. Certain data attributes will be lost in the attempt to standardize, so we'll just have to wait and see how things develop.



Others who read this also liked:

 

Recommended For You