OpenXR SDK Versions Save

Generated headers and sources for OpenXR loader.

release-1.1.36

1 month ago

OpenXR SDK 1.1.36 (2024-04-15)

This is a substantial update to the OpenXR specification. The OpenXR loader in this release supports both OpenXR 1.0 and 1.1, and sample applications such as hello_xr continue to only require OpenXR 1.0. The schema associated with the xr.xml description of OpenXR has received a small but breaking change, so software that parses it may need an update accordingly. Additionally, the protocol for the OpenXR loader on Android to communicate with system or installable runtime brokers has been extended for improvfed backward- and forward-compatibility; see the changes to the loader design document for more information.

  • Registry
    • New ratified Khronos extension: XR_KHR_locate_spaces (internal MR 2272, internal issue 1706)
    • New ratified Khronos extension: XR_KHR_maintenance1 (internal MR 3053)
    • New ratified OpenXR version: XR_VERSION_1_1 - OpenXR 1.1. (internal MR 3053)
    • New multi-vendor extension: XR_EXT_future (internal MR 2610)
    • New vendor extension: XR_META_environment_depth (internal MR 2771, internal MR 3271)
    • Mark XR_OCULUS_android_session_state_enable as deprecated. (internal MR 3255)
    • Update the XML schema to change how dependencies are described (replacing requiresCore and requires attributes of extension, and feature and extension attributes of require, with a new depends attribute.). This is a breaking change of the XML schema, though in an infrequently processed attribute. This corresponds to the change made in Vulkan 1.3.241. (internal MR 3260)
  • SDK
    • API dump layer: Handle opaque futures defined by XR_EXT_future. (internal MR 2610)
    • API dump layer: Zero initialize out-param in calls to xrResultToString and xrStructureTypeToString. (internal MR 3284)
    • Android loader: Build using NDK 23.2. (internal MR 2992)
    • Android loader: Allow the loader to check multiple records from the broker, for backward- and forward-compatibility (internal MR 3269, internal issue 2226)
    • Loader: Improve error logging in the case that the Windows registry ActiveRuntime path cannot be parsed or found. (internal MR 3015, internal issue 2125)
    • Loader: Remove path separator parsing from Windows registry ActiveRuntime path to fix bug. (internal MR 3015)
    • Loader: Fix build issue for ARMv6 architectures, and note architecture naming quirk of Raspberry Pi OS in the architecture table in the loader documentation. (OpenXR-SDK-Source PR 464, OpenXR-SDK-Source issue 463)
    • Reduce duplication of environment variable getters and setters. (internal MR 3039)
    • Updates to scripts and software to handle aliases and promoted functionality in XR_KHR_maintenance1 and XR_VERSION_1_1 (internal MR 3053)
    • hello_xr: Fix Windows mirror window acquire, wait, present loop. (internal MR 3289)
    • hello_xr and other samples: Update Android compile SDK version (to 33), NDK version (to 23.2), and build tools version (to 34.0.0). (internal MR 2992)
    • hello_xr and runtime list: Request an OpenXR 1.0 instance by default. (internal MR 3320)
    • loader_test: Build fixes to allow loader_test to compile / run on Android. (internal MR 3153)

Attached release artifacts are signed by specification editor Rylie Pavlik's key, with key fingerprint 45207B2B1E53E1F2755FF63CC5A2D593A61DBC9D. Link goes to full public key.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.1.36

release-1.0.34

3 months ago

OpenXR SDK 1.0.34 (2024-02-16)

This release features a number of new multi-vendor and vendor extensions, additional functionality in the reflection header, as well as compatibility improvements for the loader on Android.

  • Registry
  • SDK
    • API Layers: Add version-script for linking API Layers on Linux and Android. (internal MR 3112)
    • Fix typo in gfxwrapper_opengl that did not affect the use in this repository directly, but may affect downstream users of this code. (internal MR 3215)
    • Loader: fix to Android Loader so that the /<path_to_apk>/my_apk_file.apk!/libs/libstuff.so will not get blocked (internal MR 3054)
    • Loader: Add missing ifdef guards for XR_KHR_LOADER_INIT_SUPPORT. (internal MR 3152, internal MR 3159)
    • Loader: Fix crash in case of calling xrEnumerateInstanceExtensionProperties before calling xrInitializeLoaderKHR on Android. (internal MR 3159)
    • Loader design: Add a note about environment variables being ignored when run on Windows as admin. (internal MR 3214)
    • openxr_reflection.h: Add macros to list functions provided by each feature / extension. (internal MR 3129)
    • external: Update Jinja2 Python module shipped with repository (for source code generation) to 2.11.3. (internal MR 3221, internal MR 3237)

Attached release artifacts are signed by specification editor Rylie Pavlik's key, with key fingerprint 45207B2B1E53E1F2755FF63CC5A2D593A61DBC9D. Link goes to full public key.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.34

release-1.0.33

4 months ago

OpenXR SDK 1.0.33 (2024-01-03)

This release primarily adds new ratified functionality describing the loader interaction with runtimes and API layers. Corresponding definitions are now in the official openxr_loader_negotiation.h generated header, rather than the loader_interfaces.h header previously shipped only with the OpenXR-SDK-Source repository. This change only affects vendors of runtimes and API layers as well as contributors to the OpenXR loader: applications do not directly use this API, the loader uses it on their behalf. A number of other small fixes are also included.

  • Registry
    • Extension reservation: Update author ID and reserve extensions for Varjo. (internal MR 3083)
    • Extension reservation: Reserve 10 extension ids each for ANDROIDX & ANDROIDSYS. (internal MR 3086)
    • Khronos ratified addition: Specify the existing loader negotiation functions (without modification) in the XML, moving from loader_interfaces.h to a new generated header openxr_loader_negotiation.h. (internal MR 2807, internal issue 1953)
    • XR_KHR_android_thread_settings: Fix the description of XrAndroidThreadTypeKHR enum values - they were swapped relative to their implicit meaning from their name. (internal MR 3077)
    • XR_MNDX_egl_enable: Update version to 2 to reflect function pointer type change released in 1.0.29. (OpenXR-Docs PR 159)
  • SDK
    • Loader: Fix loader build on Universal Windows Platform: build-system-only change. (Included in SDK hotfix 1.0.32.1.) (internal MR 3071)
    • Loader: Correctly destroy the LoaderInstance when loader is done. (internal MR 3041)
    • Remove obsolete loader_interfaces.h header, migrating uses (in loader and layers) to use the newly specified and ratified openxr_loader_negotiation.h, and adjust scripts for the addition of the loader negotiation APIs. (internal MR 2807, internal issue 1953, internal MR 3122)
  • Misc
    • Update/correct names.
    • Ship a .mailmap file in the public repositories, maintained separately from the larger one used in the private monorepo, to correct names/emails and unify contributor identities.
    • Update Khronos Group copyright dates.

GitOrigin-RevId: a561c5898b72f59965790790a28bbc3b7e9bcf13

Attached release artifacts are signed by specification editor Rylie Pavlik's key, with key fingerprint 45207B2B1E53E1F2755FF63CC5A2D593A61DBC9D. Link goes to full public key.

(Note that this is a new signing key for the specification editor: see https://ryliepavlik.com/work-key-transition-2023-11-17.txt for key transition statement.)

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.33

release-1.0.32

5 months ago

OpenXR SDK 1.0.32 (2023-11-29)

This release contains a number of vendor extensions, plus a new ratified revision to the XR_KHR_loader_init extension that specifies forwarding the init calls to API layers. Vendors of API layers, primarily on Android, must verify they can handle being passed XR_NULL_HANDLE for the instance parameter of xrGetInstanceProcAddr, to avoid bugs when using the updated loader. This release also contains a number of build system cleanups and fixes. Users of the Android Gradle Plugin and our official loader AAR file can now use the OpenXR::headers target just like on desktop: there is now metadata for the "prefab" tool to generate for CMake both this header/include-only target and the normal OpenXR::openxr_loader imported library target. The shipped AAR is much smaller due to stripping debug data from the binaries, which helps in case application build systems do not automatically strip native binaries. A bug in the loader Android manifest as shipped in 1.0.31 has also been fixed.

GitOrigin-RevId: 0a6bbc30cf10fdec436dfa81abf27747251a0821

Attached release artifacts are signed by specification editor Ryan Pavlik's key, with fingerprint F029455EAB70F520FF4A03BD7F534CD56F00321E.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.32

release-1.0.31

7 months ago

OpenXR SDK 1.0.31 (2023-10-18)

This release features two new vendor extensions and minor extension XML revisions, in addition to compatibility and logging improvements in the software.

GitOrigin-RevId: 38114c3ba8eb46d6fafe1761ed08e263ce132237

Attached release artifacts are signed by specification editor Ryan Pavlik's key, with fingerprint F029455EAB70F520FF4A03BD7F534CD56F00321E.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.31

release-1.0.30

7 months ago

OpenXR SDK 1.0.30 (2023-09-20)

This release is primarily a quality improvement release, fixing a range of issues in the registry and SDK, including fixing a loader bug related to layers, in addition to a new vendor extension and an updated vendor extension.

GitOrigin-RevId: f7a0c0f3691f0c7b0a239cb34e41d01042d5a02a

Attached release artifacts are signed by specification editor Ryan Pavlik's key, with fingerprint F029455EAB70F520FF4A03BD7F534CD56F00321E.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.30

release-1.0.29

8 months ago

OpenXR SDK 1.0.29 (2023-08-25)

This release contains several fixes to the specification registry, improvements to the loader, layers, and loader test, as well as enhancements to the loader documentation/specification to support architecture and ABI specific active runtime manifest names on Linux and Android.

Attached release artifacts are signed by specification editor Ryan Pavlik's key, with fingerprint F029455EAB70F520FF4A03BD7F534CD56F00321E.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.29

release-1.0.28

10 months ago

OpenXR SDK 1.0.28 (2023-07-10)

This release contains improved compatibility and code quality fixes for the loader, support for loading certain API layers on Android-based devices, and a number of other improvements, in addition to the new extensions. Additionally, the loader documentation now describes how OpenXR handles compatibility with Android API levels of 30 and above: runtimes may need to update accordingly to support this compatibility solution.

Attached release artifacts are signed by specification editor Ryan Pavlik's key, with fingerprint F029455EAB70F520FF4A03BD7F534CD56F00321E.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.28

release-1.0.27

1 year ago

OpenXR SDK 1.0.27 (2023-03-21)

This release contains a large list of improvements, including interaction profile definitions in machine-readable format in the XML, consistent tool-based formatting of the XML, a new list_json tool to ease updates to OpenXR-Inventory, and a wide variety of new vendor and multi-vendor extensions, in addition to a collection of smaller improvements.

Attached release artifacts are signed by specification editor Ryan Pavlik's key, with fingerprint F029455EAB70F520FF4A03BD7F534CD56F00321E.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.27

release-1.0.26

1 year ago

OpenXR SDK 1.0.26 (2022-11-18)

This release contains new reflection headers, fixes and improvements to the loader and hello_xr (especially on Android), some spec clarifications, improvements to tooling, and a variety of new vendor and multi-vendor extensions.

Attached release artifacts are signed by specification editor Ryan Pavlik's key, with fingerprint F029455EAB70F520FF4A03BD7F534CD56F00321E.

Additional binaries are available from the OpenXR-SDK-Source repo release 1.0.26