OpenXR SDK (Source) 1.0.32 with 1.0.32.1 SDK hotfix
OpenXR SDK 1.0.32 (2023-11-29)
NOTE: Binary artifacts for Windows attached to this release correspond to the hotfix release release-1.0.32.1 tag, to fix an issue with building for the Universal Windows Platform (UWP). See below for details on this SDK hotfix release.
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.
- OpenXR SDK 1.0.32.1 hotfix release includes the following fix.
- Loader: Fix loader build on Universal Windows Platform: build-system-only
change.
(internal MR 3071) - Internal CI fix to archive the source JAR for the Android loader.
- Loader: Fix loader build on Universal Windows Platform: build-system-only
- Registry
- Extension reservation: Reserve extension id for
XR_KHR_maintenance1
(internal MR 3010) - Extension reservation: Reserve extension id for
XR_KHR_game_controller
(internal MR 3019) - New vendor extension:
XR_HTC_anchor
(internal MR 2667) - New vendor extension:
XR_META_touch_controller_plus
(internal MR 2702) - New vendor extension:
XR_ML_marker_understanding
(internal MR 2750) - New vendor extension:
XR_ML_localization_map
(internal MR 2802,
internal MR 3045,
internal MR 3047) XR_KHR_loader_init
: New Khronos ratified revision, adds support for
forwarding loader init calls to API layers
(internal MR 2703)
- Extension reservation: Reserve extension id for
- SDK
- Loader: Pass
xrInitializeLoaderKHR
calls to enabled API layers if
XR_KHR_loader_init
is enabled, per ratified update to that extension.
(internal MR 2703) - Loader: Partial fix for the loader not honoring
BUILD_LOADER_WITH_EXCEPTION_HANDLING
on Android.
(internal MR 2870,
OpenXR-SDK-Source PR 405,
internal issue 1999) - Loader Android AAR: Strip binaries before inclusion in AAR, as loader is stable
(and mostly shared with all platforms) and size difference is substantial. - Loader Android AAR: Expose
OpenXR::headers
prefab imported target just as on
desktop builds
(internal MR 2886) - Loader Android AAR: Generate a source jar file for completeness.
(internal MR 2886) - Loader Android AAR: Add
<uses-sdk>
elements to Android loader AAR manifest,
to prevent the manifest merger from assuming a version < 4 and adding unneeded
permissions accordingly.
(internal MR 3029)
(internal MR 3032) - Clean up our CMake build substantially, correcting dependencies and narrowing
the scope of includes.
(internal MR 2886,
OpenXR-SDK-Source issue 344,
internal issue 1872,
OpenXR-SDK-Source issue 419,
internal issue 2071,
internal MR 2987) - Fix build in directories containing spaces.
(internal MR 2886,
OpenXR-SDK-Source issue 344,
internal issue 1872,
OpenXR-SDK-Source issue 419,
internal issue 2071,
internal MR 2987) - Fix linking to GLX when glvnd is not found on the system
(internal MR 3000) - Fix use of
OpenXR::headers
target when not building the loader.
(internal MR 2886,
OpenXR-SDK-Source issue 344,
internal issue 1872,
OpenXR-SDK-Source issue 419,
internal issue 2071,
internal MR 2987) - scripts: Migrate
namedtuple
usage to dataclass, and expose the definitions
for reuse.
(internal MR 2183) - scripts: Clean up formatting, clean up some issues found by type-aware Python
editors, and improve the experience of editing Python scripts in some editors
by adding a.env
file.
(internal MR 2183) - scripts: Support base header types with no derived types defined yet.
(internal MR 2802)
- Loader: Pass
GitOrigin-RevId: 0a6bbc30cf10fdec436dfa81abf27747251a0821
The Android loader can be found on Maven Central, by adding the following line to your Android app's build.gradle dependencies section:
implementation 'org.khronos.openxr:openxr_loader_for_android:1.0.32'
(or, equivalently, but with a source JAR published as well:
implementation 'org.khronos.openxr:openxr_loader_for_android:1.0.32.1'
)
Alternately, the AAR file (plus signature by the spec editor key and associated POM) are attached to this release.
Other release files are signed by Ryan Pavlik's key, key fingerprint F029455EAB70F520FF4A03BD7F534CD56F00321E.