While no individual VR headset has set the world on fire sales wise, between the GearVR, Vive, OSVR, Daydream and Oculus Rift, there are a fair number of them out there. The problem for developers is supporting each device requires a slightly different workflow. The Khronos group, the people behind OpenGL and other cross platform media frameworks, have teamed up with a number of hardware and middleware providers to create OpenXR, which acts as an abstraction layer between VR devices and various game engines, as shown in this graphic.
The idea is actually a bit of a no brainer, and to a certain degree engine providers like Unity and Unreal were doing the heavy lifting for us. It comes as no surprise then that both Epic and Unreal are part of the initiative. Most major players are in fact!
That is pretty much every single relevant player, except oddly enough HTC (although Steam’s membership might render their participation moot). For most game developers OpenXR will be pretty much a transparent layer, however game engine developers will certainly want to pay attention. It will give them the ability to target several different VR headsets using a single code base.
You can read more about OpenXR here. It’s unfortunate that Steam owns the trademark for OpenVR, it’s the most logical name for this project. The Khronos Group are going to be present and active at GDC 2017, the following is a list of details and events they will be participating in.
- Khronos GDC Booth – Visit the Khronos booth for hourly presentations on Khronos APIs as well as opportunities to talk with Khronos members and standards experts. Booth 2419, South Hall.
- Khronos discusses OpenXR at VRDC 2017: Monday and Tuesday, February 27 to 28 from 10 a.m. to 6 p.m., visit the Khronos table #TT06 in room 135 North Hall to talk to VR experts working on OpenXR and share feedback on this recently-announced initiative.
- Khronos 3D Graphics Developer Day Sessions on Vulkan, OpenXR, WebGL, glTF and more: On Tuesday, February 28 from 10 a.m. to 6 p.m., room 3022 in West Hall, Khronos will host one-hour educational sessions for developers.
- Khronos Meetup: To discuss WebGL, WebVR, glTF, mobile 3D and network with Khronos members and developers, join the group on Thursday, March 2 from 6:30 p.m. to 9:30 p.m. at Galvanize, San Francisco.
- Official GDC Sessions related to Khronos standards: Khronos members and developers will present on topics from Vulkan Lessons Learned to the Future of VR.
The full schedule of events is available at: https://www.khronos.org/news/events/gdc-2017.
OpenXR is still very much in the planning stages, and like OpenGL, will be implemented both as an API level and in the hardware drivers of the individual devices. They have described the architecture (as it stands now), like so:
OpenXR defines two levels of API interfaces that a VR platform’s runtime can use to access the OpenXR ecosystem.
Apps and engines use standardized interfaces to interrogate and drive devices. Devices can self-integrate to a standardized driver interface.
Standardized hardware/software interfaces reduce fragmentation while leaving implementation details open to encourage industry innovation.
Obviously this is all tentative and subject to change. A standardization in the VR space is exactly what is needed, so hopefully this takes off. Only time I suppose will tell, although with the players involved, this one looks promising.