Skip to content

Releases: KhronosGroup/OpenXR-Registry

OpenXR Specification 1.0.29

25 Aug 22:04
release-1.0.29
Compare
Choose a tag to compare

OpenXR Specification 1.0.29 (2023-08-25)

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

  • Registry
    • Change PFNEGLGETPROCADDRESSPROC (for eglGetProcAddress) to a locally
      defined type to avoid compiler errors.
      (internal MR 2468)
    • Extension reservation: Register author ID and reserve vendor extensions for
      YVR.
      (internal MR 2832)
    • New vendor extension: XR_META_passthrough_preferences
      (internal MR 2694)
    • XR_HTCX_vive_tracker_interaction: Added new role paths for wrists and ankles.
      (internal MR 2728)
  • Specification
    • Change PFNEGLGETPROCADDRESSPROC (for eglGetProcAddress) to a locally
      defined type to avoid compiler errors.
      (internal MR 2468)
    • Fix specification text mentions of eyeVisibility field in Khronos composition
      layer extensions, to match the XML and headers.
      (internal MR 2878)
    • Improvement: Add note to OpenXR styleguide to discourage use of callback
      functions in OpenXR extensions.
      (internal MR 2734)
    • Loader spec: Clarify and deduplicate the loader specification's listing of
      android manifest search paths.
      (internal MR 2829,
      internal issue 2046)
    • Loader spec: Fix description of <queries> element contents: existing
      description would fail to install.
      (internal MR 2840,
      internal issue 2053)
    • Makefile: Remove obsolete cygwin support in spec building target, no longer
      needed and actually caused it to not work under MSYS2.
      (internal MR 2885)
    • New vendor extension specification: XR_META_passthrough_preferences
      (internal MR 2694)
    • Style guide: Document the XML schema of xr.xml
      (internal MR 2875)
    • XR_HTCX_vive_tracker_interaction: Added new role paths for wrists and ankles.
      (internal MR 2728)
    • XR_OPPO_controller_interaction: Fix formatting of path lists.
      (internal MR 2831,
      OpenXR-Docs issue 156,
      internal issue 2047)
    • scripts: Provide better feedback on interface struct erroneously having a
      values attribute.
      (internal MR 2856)
    • scripts: Update regex in xrconventions to allow words in type naming that
      succeed digits but start with a "D"
      (internal MR 2857)
    • scripts: Fix formatting of "basetype" (generally typedef) names to once again
      be monospace "code".
      (internal MR 2890,
      internal issue 2048)

OpenXR Specification 1.0.28

10 Jul 22:37
release-1.0.28
Compare
Choose a tag to compare

OpenXR Specification 1.0.28 (2023-07-10)

This release features a number of new extensions, including several multi-vendor
extensions, among other improvements and clarifications.

  • Registry
  • Specification
    • Added normative language clarifying that XrViewConfigurationType usage must
      be 'activated' by xrBeginSession (or by extensions). This was previously
      described clearly but non-normatively.
      (internal MR 2700)
    • Clarify the behavior of functions which initiate an asynchronous request when
      the function fails immediately.
      (internal MR 2716)
    • Clarify that we do intend to capture most invalid usage with return codes,
      unlike Vulkan, which is where we borrowed some of this language from.
      (internal MR 2762)
    • Corrected the extension enum base to 10^9.
      (internal MR 2693,
      OpenXR-Docs issue 148,
      internal issue 1979)
    • Fix nesting level of "Valid Usage" sections and headings, which resulted in a
      re-numbering of sections between 2.7 and 3.
      (internal MR 2761,
      OpenXR-Docs issue 149,
      internal issue 1989)
    • Fix nesting level of some sections and headings in the Rendering chapter, which
      resulted in a re-numbering of sections between 10.4 and 11.
      (internal MR 2761,
      OpenXR-Docs issue 149,
      internal issue 1989)
    • Fix flags-type boilerplate to mention XrCompositionLayerFlagBits in the body
      of the ref page of XrCompositionLayerFlags for a more usable ref page
      experience.
      (internal MR 2813)
    • Fix markup of a subpathname: which was marked as a pathname:.
      (internal MR 2673)
    • Loader docs: Specify the required queries elements for an OpenXR application
      on Android, so that runtime and layer components loaded in the application
      process may access their own package in API >29.
      (internal MR 2708)
    • New multi-vendor extension specification: XR_EXT_hand_interaction
      (internal MR 2116)
    • New multi-vendor extension specification: XR_EXT_plane_detection
      (internal MR 2510,
      internal MR 2781,
      internal MR 2791)
    • New multi-vendor extension specification: XR_EXT_hand_tracking_data_source
      (internal MR 2568)
    • New vendor extension specification: XR_META_passthrough_color_lut
      (internal MR 2507)
    • New vendor extension specification: XR_META_virtual_keyboard
      (internal MR 2555)
    • New vendor extension specification: XR_OPPO_controller_interaction
      (OpenXR-Docs PR 146)
    • Refine the spec language for a few MSFT extensions, including a clarification
      for controller model's dependency to an active grip pose action, and a
      correction to the xrTryCreateSpatialGraphStaticNodeBindingMSFT function's
      behavior.
      (internal MR 2600)
    • Remove incorrect/unused exception in the structure type value format rule.
      (internal MR 2762)
    • XR_EXT_debug_utils: Remove erroneous member documentation.
      (internal MR 2763,
      OpenXR-Docs issue 151,
      internal issue 2015)
    • XR_EXT_debug_utils: Clarify requirement on ending label regions.
      (internal MR 2763,
      OpenXR-Docs issue 150,
      internal issue 2014)
    • XR_FB_scene: Introduce XrSemanticLabelsSupportInfoFB and bump spec version to
      3.
      (internal MR 2682)
    • XR_FB_scene: Fixed specification language for XrRoomLayoutFB and
      XrBoundary2DFB which incorrectly described the input capacity parameter as
      referring to the number of bytes when, in fact, it refers to the number of
      elements in the array.
      (internal MR 2713)
    • XR_FB_scene: Clarified the meaning of the 2D and 3D bounding boxes obtained
      by xrGetSpaceBoundingBox2DFB and xrGetSpaceBoundingBox3DFB.
      (internal MR 2714)
    • XR_FB_scene: Clarify the behavior of xrGetSpaceRoomLayoutFB during the
      first call of the two-call idiom when the user retrieves the required buffer
      length.
      (internal MR 2715)
    • XR_FB_scene ...
Read more

OpenXR Specification 1.0.27

22 Mar 17:54
release-1.0.27
Compare
Choose a tag to compare

OpenXR Specification 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, several spec cleanups and clarifications, and a wide
variety of new vendor and multi-vendor extensions.

Read more

OpenXR Specification 1.0.26

19 Nov 03:30
release-1.0.26
Compare
Choose a tag to compare

OpenXR Specification 1.0.26 (2022-11-18)

This release contains some spec clarifications, improvements to tooling, and a
variety of new vendor and multi-vendor extensions.

  • Registry
  • Specification
    • Clarify the valid swapchain face count values for layer types.
      (internal MR 2354,
      internal issue 1750)
    • Clarify error codes returned in vendor extension XR_META_performance_metrics.
      (internal MR 2422)
    • Clarify function xrEnumerateInstanceExtensionProperties by removing
      conflicting and redundant language about two-call idiom.
      (internal MR 2441)
    • Clarify language around swapchain creation format matching usage.
      (internal MR 2446)
    • Document new XR_EXT_active_action_set_priority vendor extension.
      (internal MR 2288,
      internal issue 1699)
    • Document new XR_HTC_passthrough vendor extension.
      (internal MR 2349)
    • Document new XR_HTC_foveation vendor extension.
      (internal MR 2377)
    • Document new XR_META_headset_id vendor extension.
      (internal MR 2410)
    • Fix naming of member descriptions for XrInputSourceLocalizedNameGetInfo.
      (internal MR 2419,
      internal issue 1614,
      OpenXR-Docs issue 106)
    • Loader spec: Update to note that the Android installable broker no longer checks for
      permission. The permission, normally auto-granted, was removed due to causing
      conflicts with installation order.
      (internal MR 2452,
      internal issue 1836)
    • Move the documentation of XrSwapchainUsageFlags/XrSwapchainUsageFlagBits to
      its usage, next to XrSwapchainCreateFlags, and mark up normative language.
      (internal MR 2435)
    • Move flag bit documentation to the FlagBit type ref pages, and move the
      typedefs for the Flags types into new corresponding flag ref pages. This
      resolves an unneeded inconsistency between core and extensions as well as
      between core and other related specifications like Vulkan.
      (internal MR 2435)
    • Optimize images included in the specification.
      (internal MR 2493)
    • XR_EXT_performance_settings: Updated generated valid usage through XML
      change, bump revision accordingly.
      (internal MR 2306)
    • XR_HTC_facial_tracking: Update vendor extension to fix an error in the blink
      blend shape ranges, increasing its revision to 2.
      (internal MR 2416)
    • XR_KHR_vulkan_enable2 - Add missing member documentation for type, next,
      and createFlags in XrVulkanInstanceCreateInfoKHR
      (internal MR 2435)

OpenXR Specification 1.0.25

03 Sep 02:48
release-1.0.25
Compare
Choose a tag to compare

OpenXR Specification 1.0.25 (2022-09-02)

This release contains a few specification clarifications and consistency improvements,
as well as some new vendor extensions. The spec generation toolchain scripts have
been synchronized with Vulkan, which adds some additional detail to the generated
spec document. The loader design document has also been updated to correct an error
and document the loader's API layer functionality now available on Android.

  • Registry
    • Add new XR_ML_ml2_controller_interaction vendor extension.
      (internal MR 2344)
    • Clarification: Note that all specialized swapchain image structures are
      "returnedonly", which removes some unneeded generated implicit valid usage.
      (internal MR 2303)
    • Clarification: Note that all event structs are "returnedonly", which removes
      some unneeded generated implicit valid usage.
      (internal MR 2305)
    • Register author ID for Oppo.
      (OpenXR-Docs PR 129)
    • Register author ID for Fred Emmott.
      (OpenXR-Docs PR 131)
    • Register author ID for Acer.
      (OpenXR-Docs PR 132)
    • Reserve extension numbers for anticipated cross-vendor and Khronos extensions.
      (internal MR 2337,
      internal MR 2338,
      internal MR 2389)
    • Reserve a vendor extension for Huawei.
      (internal MR 2356)
    • Reserve vendor extensions for MNDX.
      (OpenXR-Docs PR 133)
    • Update XR_MSFT_scene_understanding and
      XR_MSFT_scene_understanding_serialization vendor extensions to list error
      codes that may be returned by functions.
      (internal MR 2316)
    • XR_FB_color_space: Mark XrSystemColorSpacePropertiesFB as "returned-only"
      for consistency and to correct the implicit valid usage.
      (internal MR 2304)
    • XR_FB_display_refresh_rate: Mark XrEventDataDisplayRefreshRateChangedFB as
      "returned only" for consistency.
      (internal MR 2308)
    • XR_FB_hand_tracking_mesh: Fix two-call-idiom markup for
      XrHandTrackingMeshFB, affecting implicit valid usage, and increment the
      revision.
      (internal MR 2311)
    • XR_FB_passthrough: Add XrSystemPassthroughProperties2FB and
      XR_PASSTHROUGH_LAYER_DEPTH_BIT_FB, update spec version to 3.
      (internal MR 2333)
    • XR_FB_render_model: Mark XrRenderModelCapabilitiesRequestFB as "returned-
      only" for consistency and to correct the implicit valid usage.
      (internal MR 2309)
  • Specification
    • Clarify that orientation behaves the same as position when tracking loss occurs
      for static spaces.
      (internal MR 2235)
    • Clarify the interaction of xrGetInputSourceLocalizedName and
      xrEnumerateBoundSourcesForAction, the paths they operate on, and details of a
      "bound source" for an action.
      (internal MR 2251,
      internal issue 1671)
    • Clarify when pose actions with multiple bindings may change source
      (internal MR 2277)
    • Clarify: Add language to OpenXR patch versions to clarify that it may be used
      to gate runtime implementation changes
      (internal MR 2290,
      internal issue 1713)
    • Document new XR_ML_ml2_controller_interaction vendor extension with the Magic
      Leap 2 controller interaction profile.
      (internal MR 2344)
    • Loader design doc: Correct a wrong description of extension implementation
      chosen by the loader when duplicates.
      (internal MR 2324,
      internal issue 1731)
    • Loader design doc: Add Android support for API Layers in the application APK.
      (internal MR 2350)
    • XR_FB_color_space: Mark XrSystemColorSpacePropertiesFB as "returned-only"
      for consistency and to correct the implicit valid usage, bumping the revision
      number.
      (internal MR 2304)
    • XR_FB_hand_tracking_mesh: Fix XrHandTrackingMeshFB two-call-idiom implicit
      valid usage, and increment the revision.
      (internal MR 2311)
    • XR_FB_passthrough: Add XrSystemPassthroughProperties2FB and
      XR_PASSTHROUGH_LAYER_DEPTH_BIT_FB.
      (internal MR 2333,
      internal MR 2393)
    • XR_FB_render_model: Mark XrRenderModelCapabilitiesRequestFB, as "returned-
      only" for consistency and to correct the implicit valid usage, incrementing the
      revision number.
      (internal MR 2309)
    • XR_MSFT_scene_understanding_serialization: Update vendor extension to
      document when xrDeserializeSceneMSFT must return
      XR_ERROR_COMPUTE_NEW_SCENE_NOT_COMPLETED_MSFT.
      (internal MR 2316)
    • scripts: Synchronize scripts with Vulkan, and move all generated files into a
      single target directory.
      (internal MR 2335,
      internal issue 1693,
      internal MR 2393,
      internal MR 2400)

OpenXR Specification 1.0.24

23 Jun 17:55
release-1.0.24
Compare
Choose a tag to compare

OpenXR Specification 1.0.24 (2022-06-23)

OpenXR Specification 1.0.23

28 May 02:44
release-1.0.23
Compare
Choose a tag to compare

OpenXR Specification 1.0.23 (2022-05-27)

This release includes a large number of new vendor and multi-vendor extensions,
as well as some updates to existing extensions. It also adds some details about
app manifest requirements on Android.

  • Registry
    • Add new XR_ULTRALEAP_hand_tracking_forearm vendor extension.
      (internal MR 2154)
    • Add new XR_EXT_dpad_binding multi-vendor extension.
      (internal MR 2159)
    • Add "externally synchronized" markup for xrBeginFrame and xrEndFrame so
      they get the matching box and their session parameters are included in the list
      of externally-synchronized parameters in the "Threading" section.
      (internal MR 2179,
      OpenXR-Docs issue 23,
      internal issue 1216)
    • Add new XR_FB_spatial_entity vendor extension.
      (internal MR 2194)
    • Add new XR_FB_spatial_entity_storage vendor extension.
      (internal MR 2194)
    • Add new XR_FB_spatial_entity_query vendor extension.
      (internal MR 2194)
    • Add new XR_FB_composition_layer_settings vendor extension.
      (internal MR 2221)
    • Add new XR_FB_spatial_entity_container vendor extension.
      (internal MR 2236)
    • Add new XR_HTC_vive_wrist_tracker_interaction vendor extension.
      (internal MR 2252)
    • Add XR_HTC_hand_interaction extension.
      (internal MR 2254)
    • Add new XR_VARJO_view_offset vendor extension.
      (internal MR 2255)
    • Add new XR_META_performance_metrics vendor extension.
      (internal MR 2256)
    • Add new XR_META_vulkan_swapchain_create_info vendor extension.
      (internal MR 2257)
    • Change the XML type of XR_MIN_COMPOSITION_LAYERS_SUPPORTED so it outputs an
      includable snippet for the spec text.
      (internal MR 2201,
      internal issue 1652,
      OpenXR-Docs issue 117)
    • Fix registry consistency script and codegen scripts to allow extension of KHR
      and EXT enumerations with vendor-specific members.
      (internal MR 2213,
      internal MR 2243)
    • Fix warning print statement arguments in header generation/validation script.
      (internal MR 2244)
    • Reserve the extension number for multi-vendor hand interaction profile
      extension.
      (internal MR 2206)
    • Reserve vendor extensions 304-317 for Qualcomm
      (internal MR 2258)
    • Reserve vendor extensions 318-370 for HTC.
      (internal MR 2266)
    • KHR_composition_layer_depth: Update spec version to 6 for updated spec text.
      (internal MR 2207,
      internal issue 1651)
    • XR_EXT_eye_gaze_interaction: Update the spec version for spec text change.
      (internal MR 2227)
    • XR_EXT_uuid: Add enum tags to XR_UUID_SIZE_EXT to ensure it is defined
      before XrUuidEXT in generated header
      (internal MR 2234,
      internal issue 1673)
    • XR_FB_hand_aim_tracking, XR_FB_hand_tracking_capsule,
      XR_FB_hand_tracking_mesh: Fix documentation to specify correct next chain
      usage.
      (internal MR 2229)
    • XR_FB_hand_tracking_capsules: Update XrHandCapsuleFB and
      XrHandTrackingCapsulesStateFB to use
      XR_HAND_TRACKING_CAPSULE_POINT_COUNT_FB and
      XR_HAND_TRACKING_CAPSULE_COUNT_FB enums when defining arrays so they match
      the usual practice for vendor extensions
      (internal MR 2216)
    • XR_FB_passthrough_keyboard_hands: Add
      XR_PASSTHROUGH_LAYER_PURPOSE_TRACKED_KEYBOARD_MASKED_HANDS_FB, update spec
      version to 2.
      (internal MR 2270)
    • XR_FB_passthrough: add XrPassthroughBrightnessContrastSaturationFB, update
      spec version to 2
      (internal MR 2222)
    • XR_FB_render_model: Add capability support levels, bump spec version to 2.
      (internal MR 2264)
    • XR_FB_space_warp: Add
      XR_COMPOSITION_LAYER_SPACE_WARP_INFO_FRAME_SKIP_BIT_FB into
      XrCompositionLayerSpaceWarpInfoFlagBitsFB, update spec version to 2.
      (internal MR 2193)
    • XR_HTC_vive_focus3_controller_interaction: Support component path
      "/input/squeeze/value", update spec version to 2.
      (internal MR 2253)
    • XR_KHR_D3D11_enable and XR_KHR_D3D12_enable: Update to describe error
      conditions for XR_ERROR_GRAPHICS_DEVICE_INVALID.
      (internal MR 2176,
      internal issue 1617)
    • XR_MSFT_spatial_graph_bridge: Update to revision 2.
      (internal MR 2182)
  • Specification
    • Add spec language for XR_MIN_COMPOSITION_LAYERS_SUPPORTED.
      (internal MR 2201,
      internal issue 1652,
      OpenXR-Docs issue 117)
    • Add a few level 4 headers so the sub chapters in extensions can be referenced
      with anchors.
      (internal MR 2205)
    • Add text in the appendix describing adding
      org.khronos.openxr.intent.category.IMMERSIVE_HMD category to intent-filter
      for AndroidManifest.xml, to indicate an immersive application.
      (internal MR 2219)
    • Change instances of Samsung Electronics authorship references to only have
      first and last name of author, and to spell out Samsung Electronics instead of
      just Samsung.
      (internal MR 2211)
    • Clarify that XR_SPACE_VELOCITY_LINEAR_VALID_BIT and
      XR_SPACE_VELOCITY_ANGULAR_VALID_BIT work just like
      XR_SPACE_LOCATION_POSITION_VALID_BIT and
      XR_SPACE_LOCATION_ORIENTATION_VALID_BIT: Don't read the corresponding field
      if it's not set.
      (internal MR 2185,
      OpenXR-Docs issue 35,
      internal issue 1264)
    • Document new XR_HTC_hand_interaction extension.
      (internal MR 2254)
    • Document new XR_ULTRALEAP_hand_tracking_forearm vendor extension.
      (internal MR 2154)
    • Document new XR_EXT_dpad_binding multi-vendor extension.
      (internal MR 2159)
    • Document new XR_FB_spatial_entity vendor extension.
      (internal MR 2194)
    • Document new XR_FB_spatial_entity_storage vendor extension.
      (internal MR 2194)
    • Document new XR_FB_spatial_entity_query vendor extension.
      (internal MR 2194)
    • Document out of range XrSwapchainSubImage imageArrayIndex
      (internal MR 2220)
    • Document new XR_FB_composition_layer_settings vendor extension.
      (internal MR 2221)
    • Document new XR_FB_spatial_entity_container vendor extension.
      (internal MR 2236)
    • Document new XR_HTC_vive_wrist_tracker_interaction vendor extension.
      (internal MR 2252)
    • Document new XR_VARJO_view_offset vendor extension.
      (internal MR 2255)
    • Document new XR_META_performance_metrics vendor extension.
      ([internal MR 2256](https://gitl...
Read more

OpenXR Specification 1.0.22

12 Jan 23:04
release-1.0.22
Compare
Choose a tag to compare

OpenXR Specification 1.0.22 (2022-01-12)

This release features a number of new vendor and multi-vendor extensions, plus a
few extension corrections. There are a few small core specification fixes as
well, including a clarification that going forward, xrBeginFrame is not a
blocking function (which was implied but not explicitly stated).

  • Registry
  • Specification
    • Clarify that xrBeginFrame is not a blocking function for frame
      synchronization purposes.
      (internal MR 2145)
    • Correct winding order for XR_MSFT_hand_tracking_mesh extension to clockwise
      to match runtime behavior.
      (internal MR 2151)
    • Document new XR_FB_render_model vendor extension.
      (internal MR 2117,
      internal MR 2169)
    • Document new XR_HTC_facial_tracker vendor extension.
      (internal MR 2120)
    • Document new XR_FB_keyboard_tracking vendor extension.
      (internal MR 2128)
    • Document new XR_EXT_uuid multi-vendor extension.
      (internal MR 2152)
    • Document new XR_FB_passthrough_keyboard_hands vendor extension.
      (internal MR 2162)
    • Document new XR_HTC_vive_focus3_controller_interaction vendor extension.
      (internal MR 2178)
    • Document new XR_ALMALENCE_digital_lens_control vendor extension.
      (OpenXR-Docs PR 104,
      internal issue 1615)
    • Fix typos/naming convention errors in XR_FB_hand_tracking_capsules: rename
      XR_FB_HAND_TRACKING_CAPSULE_POINT_COUNT to
      XR_HAND_TRACKING_CAPSULE_POINT_COUNT_FB and
      XR_FB_HAND_TRACKING_CAPSULE_COUNT to XR_HAND_TRACKING_CAPSULE_COUNT_FB,
      providing the old names as compatibility aliases.
      (internal MR 1547,
      internal issue 1519)
    • Semantic paths: Note that "back" (as a button) is an acceptable standard
      identifier: the core specification already includes interaction profiles using
      it, but it was inadvertently omitted from the standard identifier list.
      (internal MR 2166)
    • Update xml consistency script to verify correct application of vendor naming
      rules.
      (internal MR 1547,
      internal issue 1618)
    • Update docs for XR_TYPE_EVENT_DATA_INSTANCE_LOSS_PENDING to specify that
      xrCreateInstance returns XR_ERROR_RUNTIME_UNAVAILABLE as long as it is
      unable to create the instance.
      (internal MR 2149)
    • Update docs for XR_FB_color_space to correct preferred color space for Oculus
      HMDs.
      (internal MR 2155)

This release replaces 1.0.21.

OpenXR Specification 1.0.21

12 Jan 20:05
release-1.0.21
Compare
Choose a tag to compare
Pre-release

This release was withdrawn due to a typo noticed after initial publication.
All changes are now listed under 1.0.22.

OpenXR Specification 1.0.20

04 Oct 22:31
release-1.0.20
Compare
Choose a tag to compare

OpenXR Specification 1.0.20 (2021-10-04)

This release includes a number of new vendor extensions and a few minor clarifications.