• Immersive Wire
  • Posts
  • Khronos Releases OpenXR 1.1 to Further Streamline Cross-Platform XR Development

Khronos Releases OpenXR 1.1 to Further Streamline Cross-Platform XR Development

EDITOR’S NOTE: This is a copy of the release, with links to relevant materials that will go live later today. The press release details the updates in relation to the 1.1 specification. Analysis is in the latest edition of the Immersive Wire.

Tom Ffiske, Editor of the Immersive Wire.

The Khronos® Group, an open consortium of industry-leading companies creating advanced interoperability standards, announced the immediate availability of the OpenXR™ 1.1 specification. This release evolves the widely adopted OpenXR open API standard for high-performance, cross-platform access to VR, AR, and mixed reality (MR) — collectively known as XR—platforms and devices. OpenXR 1.1 consolidates widely used API extensions into the core specification to reduce fragmentation, and adds new functionality to streamline the development of more powerful and efficient XR applications.

In particular, OpenXR 1.1 consolidates multiple vendor extensions for key functionality to reduce differences in application code across multiple platforms, while still remaining flexible and extensible to foster innovation in a rapidly growing and evolving market. The OpenXR Working Group will focus on managing a pipeline of extensions to develop and seek feedback on new functionality, while proactively integrating proven technology into the core specification to provide developers with robust cross-platform XR capabilities.

Today, most major XR platforms have transitioned to using OpenXR to expose current and future device capabilities. Vendors with conformant OpenXR implementations include Acer, ByteDance, Canon, HTC, Magic Leap, Meta, Microsoft, Sony, XREAL, Qualcomm, Valve, Varjo, and Collabora’s Monado open source runtime. OpenXR is also supported by all the major game and rendering engines, including Autodesk VRED, Blender, Unreal Engine, Godot, StereoKit, NVIDIA’s Omniverse, and Unity.

The OpenXR 1.1 specification can be found on the Khronos website and on GitHub OpenXR Registry.

Extensions Promoted to the OpenXR 1.1 Core Specification

OpenXR integrates the following functionality, previously available through extensions, into the core specification.

Local Floor (promoted from XR_EXT_local_floor) provides a new Reference Space with a gravity-aligned world-locked origin for standing-scale content that can be recentered to the current user position at the press of a button without a calibration procedure, with an estimated floor height built in. Read this additional blog for more details about Local Floor functionality and its value to developers.

Stereo with Foveated Rendering (promoted from XR_VARJO_quad_views) provides a Primary View Configuration to realize eye-tracked foveated rendering or fixed foveated rendering for XR headsets across multiple graphics rendering APIs. Its use is especially beneficial for efficiently rendering high-pixel-count displays, which put a heavy load on the GPU. The original vendor extension has been adopted natively in Unity, Unreal, and recently by NVIDIA Omniverse.

Grip Surface (promoted from XR_EXT_palm_pose) provides a Standard Pose Identifier that reliably anchors visual content relative to the user's physical hand, whether the hand position is tracked directly or inferred from a physical controller’s position and orientation.

XrUuid (promoted from XR_EXT_uuid) provides a Common Data Type to hold a Universally Unique Identifier that follows the IETF RFC 4122.

XrLocateSpaces (promoted from XR_KHR_locate_spaces) provides a Locating Spaces function to improve performance by enabling an application to locate an array of spaces in a single function call instead of being limited to locating a single space per function call.

Feature Enhancements

In addition to consolidating extensions, OpenXR 1.1 also provides developers with a set of new features and clarifications, including:

Interaction Profile Improvements

Streamline action system programming. Developers can now take advantage of these new standards:

Interaction Profile Paths: 13 new interaction profiles have been added to the core specification in 1.1

Standard Identifiers: includes thumb_resting_surfaces, stylus, trigger_curl, and trigger_slide

Standard Component: adds proximity

Output Paths: haptic trigger and haptic_thumb

Fundamentals

Improvements  in OpenXR 1.1 provide developers with an extended set of universal tools for building enhanced XR experiences:

XrDuration: Specify behavior for a negative duration

Event Polling: Clarify runtime and application behavior for polling

Two-Call Idiom: Precise explanation for “buffer size”

New Structures: Added color without alpha channel (XrColor3f), rectangular prism (xrExtent3Df), oriented sphere (XrSpheref), oriented box (XrBoxf), and frustum (XrFrustum)

New Error Codes

New error code XR_ERROR_INSUFFICIENT PERMISSIONS and XR_ERROR_DEPENDENCY_NOT_ENABLED help with application debugging (see xr.xml):

Specification Refinement

OpenXR 1.1 provides clearer explanations of specification intent, while removing ambiguity, and strengthening the preciseness of normative language. Affected chapters include:

Spaces: OpenXR 1.1 adds links to Reference Spaces to easily identify them in the text. It also strengthens normative language for both runtimes and app developers.

Rendering: the XR_COMPOSITION_LAYER_CORRECT_CHROMATIC_ABERRATION_BIT is deprecated since it is not used in any shipping runtimes

Input: mentions of “Default Bindings” are removed and timing requirements for reading input action state are clarified

Appendix: Updated list of contributors

Versions: A new chapter to show promoted extensions between versions

"As the first core specification update, OpenXR 1.1 is taking a step toward more streamlined cross-platform XR development. Consolidating multiple OpenXR extensions into the core API enhances programming convenience and consistency, and reinforces Khronos’s ongoing commitment to reducing the technical obstacles to creating portable, immersive, cross-platform experiences. By simplifying development and fostering innovation, we aim to empower developers to concentrate on creating groundbreaking XR applications without being hindered by compatibility issues. OpenXR 1.1 embodies the collective dedication of the OpenXR Working Group and the extended XR community to refine and advance our standard, catering to the dynamic requirements of an evolving ecosystem," said Alfredo Muniz, Chair of the OpenXR Working Group.

Conformance Test Suite Enhancements

The OpenXR Conformance Test Suite (CTS), freely available on GitHub, includes updates and enhancements for the functionality that has been integrated into the OpenXR 1.1 core specification, enabling consistent implementation across all conformant platforms.

OpenXR Roadmap and Call for Community Feedback

The OpenXR Working Group welcomes and encourages feedback from the XR developer community on their experience with OpenXR and to help prioritize future developments on the OpenXR roadmap. For example, the Working Group is exploring multiple areas such as extending hand tracking to include full body tracking and enhanced handling of spatial entities to provide standardized methods to interact with the user’s environment in advanced spatial computing applications.

Please provide OpenXR feedback via the OpenXR Discord channel, OpenXR Forums, or the GitHub Issue Tracker.