OpenXR SDK 1.1.50 (2025-07-24)
This release features a new loader extension for some specific automation use cases, several new vendor extensions, and code quality improvements, among other changes.
- SDK
- Fix: Revise how OpenGL compatibility is detected in the build system on Windows. (internal MR 3883)
- Fix: Add missing include directive in loader code. (OpenXR-SDK-Source PR 554)
- Improvement: Add support for sanitizers in CMake with sanitizers-cmake project. (internal MR 3716)
- Improvement: add
.clang-tidy
file. (internal MR 3802) - Improvement: Enable the clang-tidy cert-dcl16-c, bugprone-too-small-loop- variable, and bugprone-switch-missing-default-case checks, making fixes required to satisfy them. (internal MR 3882, internal MR 3893)
- Improvement: Disable the clang-tidy bugprone-reserved-identifier, cert-dcl37-c, and cert-dcl51-cpp checks. (internal MR 3882, internal MR 3893)
- Loader: Implement
XR_EXT_loader_init_properties
extension and enableXR_KHR_loader_init
on all platforms. (internal MR 2454) - Loader: Refactor loader data class and handling, preparing for loader data properties. (internal MR 3834, internal MR 3839)
- Loader: Ensure that only the first Android property is used. (internal MR 3834, internal MR 3839)
- Scripts: Handle the case where "current_ref_page" is a string rather than an object. (internal MR 3834, internal MR 3839)
- Validation Layer: Accept unknown or duplicated structure types in the
next
chain, and dump debug messages for them. (internal MR 3828) - hello_xr: Optimize graphics synchronization when using Vulkan. (internal MR 3681)
- Registry
- Change: Update the
XrSpatialAnchorCreateCompletionBD
structure, and increment the revision ofXR_BD_spatial_anchor
. (internal MR 3876) - Fix: Remove
XR_EXT_palm_pose
paths fromXR_HTCX_vive_tracker_interaction
, as the /user/hand/left|right paths are not valid paths for Vive Trackers. (internal MR 3844) - Fix: Include
XR_ERROR_SESSION_NOT_RUNNING
in list of errorsxrEnumerateInteractionRenderModelIdsEXT
can return. (Already in specification prose.) (internal MR 3889) - Fix: Typo in comment for
XR_ERROR_SPATIAL_PERSISTENCE_SCOPE_INCOMPATIBLE_EXT
. (internal MR 3897) - Fix: Add explicit dependency to
XR_ML_compat
forXrCoordinateSpaceCreateInfoML
. (internal MR 3907) - Improvement: Add comments for the
XrResult
values added byXR_BD_spatial_anchor
andXR_BD_spatial_anchor_sharing
. (internal MR 3861, internal issue 2535) - New multi-vendor extension:
XR_EXT_loader_init_properties
(internal MR 2454) - New vendor extension:
XR_META_body_tracking_calibration
. (internal MR 2963) - New vendor extension:
XR_ANDROID_passthrough_camera_state
. (internal MR 3614) - New vendor extension:
XR_ANDROID_trackables
. (internal MR 3615) - New vendor extension:
XR_ANDROID_raycast
. (internal MR 3620) - New vendor extension:
XR_ANDROID_trackables_object
. (internal MR 3623) - New vendor extension:
XR_ANDROID_device_anchor_persistence
. (internal MR 3626) - New vendor extension:
XR_ANDROID_anchor_sharing_export
. (internal MR 3627) - New vendor extension:
XR_ANDROID_trackables_marker
. (internal MR 3774)
The Android loader can be found on Maven Central, by adding the following line to your Android app's build.gradle dependencies section:
:::gradle
implementation 'org.khronos.openxr:openxr_loader_for_android:1.1.50'
(There may be a delay of a few hours after release before artifacts are accessible on Maven Central.)
Alternately, the AAR file (plus signature by the dedicated spec editor key and associated POM) are attached to this release.
Other release files are signed by specification editor Rylie Pavlik's key, with key fingerprint 45207B2B1E53E1F2755FF63CC5A2D593A61DBC9D. Link goes to full public key.