Releases: KhronosGroup/OpenXR-Docs
OpenXR Specification (Source) 1.0.21
This release was withdrawn due to a typo noticed after initial publication.
All changes are now listed under 1.0.22.
OpenXR Specification (Source) 1.0.20
OpenXR Specification 1.0.20 (2021-10-04)
This release includes a number of new vendor extensions and a few minor clarifications.
- Registry
- Add new
XR_HTCX_vive_tracker_interaction
provisional vendor extension.
(internal MR 1983) - Add new
XR_VARJO_marker_tracking
vendor extension.
(internal MR 2129) - Add new
XR_FB_triangle_mesh
vendor extension.
(internal MR 2130) - Add new
XR_FB_passthrough
vendor extension.
(internal MR 2130) - Reserve vendor extensions for Facebook.
(internal MR 2131) - Reserve a vendor extension for Almalence.
(OpenXR-Docs PR 99) - XR_FB_color_space: Fix XML markup to indicate that
XrSystemColorSpacePropertiesFB
is chained toXrSystemProperties
.
(internal MR 2143)
- Add new
- Specification
- Clarify that swapchain image wait must not timeout before releasing.
(internal MR 2134,
OpenXR-Docs issue 101,
internal issue 1603) - D3D11 and D3D12 extensions: Specify handling of swapchain usage flags.
(internal MR 2133,
internal issue 1500) - OpenGL and OpenGL ES extensions: Specify handling of swapchain usage flags.
(internal MR 2127,
internal issue 1500) - Document new
XR_HTCX_vive_tracker_interaction
provisional vendor extension.
(internal MR 1983) - Document new
XR_VARJO_marker_tracking
vendor extension.
(internal MR 2129) - Document new
XR_FB_triangle_mesh
vendor extension.
(internal MR 2130) - Document new
XR_FB_passthrough
vendor extension.
(internal MR 2130) - Fix generated links from OpenXR ref pages to Vulkan ref pages.
(internal MR 2126) - Loader specification: Describe a cross-vendor loader for use on Android.
(internal MR 1949,
internal issue 1425) - Scripts: Fix reflow script error message and make sure it creates the necessary
output directory.
(OpenXR-Docs PR 97)
- Clarify that swapchain image wait must not timeout before releasing.
OpenXR Specification (Source) 1.0.19
OpenXR Specification 1.0.19 (2021-08-24)
This release features a number of new or updated vendor extensions, as well as
some minor spec clarifications.
- Registry
- Add
XR_SESSION_NOT_FOCUSED
as a possible success return code to
xrApplyHapticFeedback
andxrStopHapticFeedback
.
(internal MR 2106,
internal issue 1270) - Add new
XR_FB_hand_tracking_mesh
vendor extension.
(internal MR 2089) - Add new
XR_FB_hand_tracking_capsules
vendor extension.
(internal MR 2089) - Add new
XR_FB_hand_tracking_aim
vendor extension.
(internal MR 2089) - Add version 1 of new
XR_FB_space_warp
vendor extension.
(internal MR 2115) - Register new Author ID for Almalence.
(OpenXR-Docs PR 92,
OpenXR-Docs PR 93) - Update to version 2 of
XR_VALVE_analog_threshold
.
(internal MR 2113)
- Add
- Specification
- Clarifies the
imageRect
inXrSwapchainSubImage
uses a graphics API-specific
coordinate origin.
(internal MR 2104,
OpenXR-Docs issue 86,
internal issue 1587) - Clarify text that haptics are suppressed when the session does not have or
loses focus.
(internal MR 2106,
internal issue 1270) - Document new
XR_FB_hand_tracking_mesh
vendor extension.
(internal MR 2089) - Document new
XR_FB_hand_tracking_capsules
vendor extension.
(internal MR 2089) - Document new
XR_FB_hand_tracking_aim
vendor extension.
(internal MR 2089) - Document updated version 2 of
XR_VALVE_analog_threshold
. This adapts the
extension for usage withXR_KHR_binding_modification
, deprecating the
previous direct binding modification technique.
(internal MR 2113) - Document version 1 of new
XR_FB_space_warp
vendor extension.
(internal MR 2115) - scripts: Some typing annotations and type-related cleanup found by using type-
aware Python editors.
(internal MR 2100)
- Clarifies the
OpenXR Specification (Source) 1.0.18
OpenXR Specification 1.0.18 (2021-07-30)
The main changes in this release include clarifications to the Session chapter
of the specification, plus the addition of diagrams to the text describing grip
and aim pose. The release also adds one new ratified KHR extension (promoted
from a vendor extension), and a number of new vendor extensions.
- Registry
- Add ratified
XR_KHR_swapchain_usage_input_attachment_bit
Khronos extension.
(Promotion ofXR_MND_swapchain_usage_input_attachment_bit
, which is now
deprecated.)
(internal MR 2045) - Add new
XR_FB_foveation
,XR_FB_foveation_configuration
, and
XR_FB_foveation_vulkan
vendor extensions.
(internal MR 2050) - Add additional extension dependencies to
XR_FB_swapchain_update_state
.
(internal MR 2072,
internal issue 1572) - Add new
XR_FB_composition_layer_secure_content
vendor extension.
(internal MR 2075) - Add new
XR_FB_composition_layer_alpha_blend
vendor extension.
(internal MR 2078) - Add new
XR_FB_composition_layer_image_layout
vendor extension.
(internal MR 2090) - Add new
XR_MSFT_spatial_anchor_persistence
vendor extension.
(internal MR 2093) - Add some simple Schematron rules and a script to
check the XML registry against them.
(internal MR 2103) - Register author ID and reserve vendor extensions for Unity.
(internal MR 2105) - Reserve extension ID range 187-196 for LIV Inc.
(internal MR 2102)
- Add ratified
- Specification
- Rewrite the introduction of Session chapter to explain a typical session
lifecycle.
(internal MR 2087) - Add grip diagram to specification
(internal MR 2092,
internal issue 1545,
OpenXR-Docs PR 45,
OpenXR-Docs issue 44) - Describe how runtimes may register themselves at installation time for manual
selection.
(internal MR 2081,
internal MR 2109,
internal issue 1574) - Document new ratified
XR_KHR_swapchain_usage_input_attachment_bit
Khronos
extension. (Promotion ofXR_MND_swapchain_usage_input_attachment_bit
, which
is now deprecated.)
(internal MR 2045) - Document new
XR_FB_foveation
,XR_FB_foveation_configuration
, and
XR_FB_foveation_vulkan
vendor extensions.
(internal MR 2050) - Document new
XR_FB_composition_layer_secure_content
vendor extension.
(internal MR 2075) - Document new
XR_FB_composition_layer_alpha_blend
vendor extension.
(internal MR 2078) - Document new
XR_FB_composition_layer_image_layout
vendor extension.
(internal MR 2090) - Document new
XR_MSFT_spatial_anchor_persistence
vendor extension.
(internal MR 2093) - Minor cleanups to the loader documentation/specification.
(internal MR 2108) - Revise Varjo vendor extensions so that the sample code is buildable (and build
during CI testing).
(internal MR 2020) - Scripts: Verify
externsync
attributes of destroy calls.
(internal MR 2065) - Update
XR_MSFT_spatial_anchor
to note the external sync requirements of the
destroy call.
(internal MR 2065) - Add missing copyright/license notice for FB extension sources
(internal MR 2076,
internal issue 1562) - Add missing item to new enum constants of spatial anchors extension
(internal MR 2088) - scripts: Handle aliased bitmask values properly in header files.
(internal MR 2045)
- Rewrite the introduction of Session chapter to explain a typical session
OpenXR Specification (Source) 1.0.17
OpenXR Specification 1.0.17 (2021-06-08)
This release includes a variety of new vendor extensions, as well as some
clean-up changes to the API registry and specification, mostly related to
valid/available return codes. An update to an earlier vendor extension is also
included.
- Registry
- Add
XR_MSFT_scene_understanding
vendor extension.
(internal MR 2032) - Add
XR_MSFT_scene_understanding_serialization
vendor extension.
(internal MR 2032) - Add
XR_MSFT_composition_layer_reprojection
vendor extension.
(internal MR 2033) - Add
XR_OCULUS_audio_device_guid
vendor extension.
(internal MR 2053) - Add version 3 of
XR_FB_swapchain_update_state
vendor extension, which splits
platform and graphics API specific structs into separate extensions.
(internal MR 2059) - Apply formatting to registry XML by selectively committing changes made by
https://github.com/rpavlik/PrettyRegistryXml.
(internal MR 2070,
OpenXR-SDK-Source/#256) - Enforce that all
xrCreate
functions must be able to return
XR_ERROR_LIMIT_REACHED
andXR_ERROR_OUT_OF_MEMORY
, and adjust lists of
error codes accordingly.
(internal MR 2064) - Fix a usage of
>
without escaping as an XML entity.
(internal MR 2064) - Fix all cases of a success code (most often
XR_SESSION_LOSS_PENDING
)
appearing in theerrorcodes
attribute of a command.
(internal MR 2064,
internal issue 1566) - Improve comments for several enum values.
(internal MR 1982) - Perform some script clean-up and refactoring, including selective type
annotation and moving the Conventions abstract base class tospec_tools
.
(internal MR 2064) - Sort return codes, with some general, popular codes made to be early. Script
sort_codes.py
can be used to maintain this, though it mangles other XML
formatting, so use it with care. https://github.com/rpavlik/PrettyRegistryXml
can format, and eventually sort return codes (currently sort order does not
match).
(internal MR 2064,
OpenXR-SDK-Source/#256)
- Add
- Specification
- Clarify that values for a given query to
xrEnumerateBoundSourcesForAction
may
only change atxrSyncActions
.
(internal MR 2026,
internal issue 1540,
OpenXR-Docs/#82) - Document new
XR_MSFT_scene_understanding
extension.
(internal MR 2032) - Document new
XR_MSFT_scene_understanding_serialization
extension.
(internal MR 2032) - Document new
XR_MSFT_composition_layer_reprojection
vendor extension.
(internal MR 2033) - Document new
XR_OCULUS_audio_device_guid
extension.
(internal MR 2053) - Document version 2 of
XR_FB_swapchain_update_state
which provides a mechanism
to query state.
(internal MR 2048) - Document version 3 of
XR_FB_swapchain_update_state
which splits platform and
graphics API specific structs into separate extensions.
(internal MR 2059) - Make explicit the recommended use of preferred swapchain texture formats.
(internal MR 2061) - Reserve extension numbers 167-176 for Facebook use.
(internal MR 2060) - Use flag descriptions generated from XML comments for
XrSpaceVelocityFlagBits
,XrSwapchainUsageFlagBits
, and
XrCompositionLayerFlagBits
in the specification.
(internal MR 1982)
- Clarify that values for a given query to
OpenXR Specification (Source) 1.0.16
OpenXR Specification 1.0.16 (2021-05-11)
This release contains improved/clarified behavior for xrCreateInstance
and
xrEnumerateInstanceProperties
, a new multi-vendor extension, a new vendor
extension, and a collection of clarifications.
- Registry
- Add new
XR_ERROR_RUNTIME_UNAVAILABLE
error code, add
XR_ERROR_RUNTIME_UNAVAILABLE
as a supported error code toxrCreateInstance
andxrEnumerateInstanceProperties
, and removeXR_ERROR_INSTANCE_LOST
as a
supported error code fromxrCreateInstance
.
(internal MR 2024,
internal issue 1552,
OpenXR-SDK-Source/#177) - Add
XR_EXT_hand_joint_motion_range
multi-vendor extension.
(internal MR 1995) - Add
XR_FB_swapchain_update_state
vendor extension.
(internal MR 1997) - Fix missing
XR_ERROR_INSTANCE_LOST
return codes for extension functions in
XR_EXT_performance_settings
,XR_EXT_debug_utils
,
XR_EXT_conformance_automation
, andXR_EXT_thermal_query
.
(internal MR 2023,
OpenXR-Docs/#10,
internal issue 1256) - Reserve extension 166 for working group use.
(internal MR 2025)
- Add new
- Specification
- Clarify use of
xrRequestExitSession
on platforms with managed application
lifecycle.
(internal MR 1978) - Clarify hand grip orientation Z semantics.
(internal MR 2008) - Clarify unordered swapchain usage flag meaning.
(internal MR 2029,
internal issue 1543) - Clarify that hysteresis should be used when applying thresholds to scalar
input.
(internal MR 2031,
internal issue 1260,
OpenXR-Docs/#27) - Document new multi-vendor extension
XR_EXT_hand_joint_motion_range
- allows
applications to request specific motion ranges when using
XR_EXT_hand_tracking
.
(internal MR 1995) - Document new
XR_FB_swapchain_update_state
vendor extension.
(internal MR 1997) - Fix
xml_consistency
scripts to properly identify missing error codes from
handle ancestors, and suppress warnings about all missing_LOST
and
_LOSS_PENDING
onxrDestroy
functions.
(internal MR 2023,
OpenXR-Docs/#10,
internal issue 1256) - Modify language in
XR_EXT_hand_tracking
to explicitly state that an "empty
hand" range of motion is the default.
(internal MR 1995) - Session: Explicitly name the pattern for "get graphics requirements" functions,
and place a generic version of the
XR_ERROR_GRAPHICS_REQUIREMENTS_CALL_MISSING
return code text from graphics
extensions in the core spec.
(OpenXR-Docs/#79,
internal issue 1547) - Style guide: Update "Extensions" chapter to simplify and reflect actual
practice and policy.
(internal MR 2027) - Extension process document: Update to note the working group policy on extending
core/KHR bitmasks.
(internal MR 2025) - scripts: Have
reflow.py
identify a file's current newline convention, and
reproduce it upon writing the output.
(internal MR 2028)
- Clarify use of
OpenXR Specification (Source) 1.0.15
OpenXR Specification 1.0.15 (2021-04-13)
This release contains three new vendor extensions plus an assortment of small
spec fixes.
- Registry
- Add
XR_VARJO_foveated_rendering
vendor extension.
(internal MR 1981) - Add
XR_VARJO_composition_layer_depth_test
vendor extension.
(internal MR 1998) - Add
XR_VARJO_environment_depth_estimation
vendor extension.
(internal MR 1998) - Add
uint16_t
toopenxr_platform_defines
(and associated scripts) so it may
be used easily by extensions.
(internal MR 2017) - Reserve extension 149 for working group use.
(internal MR 1999) - Reserve extension numbers 150 to 155 for ULTRALEAP extensions
(internal MR 2006) - Reserve extension numbers 156-165 for Facebook.
(internal MR 2018)
- Add
- Specification
- Add note to recommend joint names for hand skeletons when using
XR_EXT_hand_tracking
(internal MR 1959,
OpenXR-SDK-Source/#223) - Added anchor to the spec of grip pose and aim pose for easy linking to their
definitions.
(internal MR 2016) - Clarify runtime behavior on providing wrong type of images to
xrEnumerateSwapchainImages
.
(internal MR 2000,
internal issue 1512,
OpenXR-Docs/#68) - Correct function parameter documentation in
XR_EXT_conformance_automation
.
(internal MR 2003,
internal issue 1445,
OpenXR-Docs/#60) - Document new
XR_VARJO_foveated_rendering
vendor extension.
(internal MR 1981) - Document new
XR_VARJO_composition_layer_depth_test
vendor extension.
(internal MR 1998) - Document new
XR_VARJO_environment_depth_estimation
vendor extension.
(internal MR 1998) - Fix generated valid usage language for
xrGetVulkanInstanceExtensionsKHR
and
xrGetVulkanDeviceExtensionsKHR
, and fix minor vulkan_enable2 typo.
(internal MR 2002,
internal issue 1515,
OpenXR-Docs/#77) - Fix sample code in
XR_EXT_hand_tracking
to show proper retrieval of function
pointers.
(internal MR 2019) - Fix sample code in
XR_EXT_performance_settings
to show proper retrieval of
function pointers.
(internal MR 2019) - Fix sample code callouts in
XR_EXT_performance_settings
that were broken by
reflow.
(internal MR 2019) - Fix sample code in
XR_MSFT_hand_tracking_mesh
to show proper retrieval of
function pointers.
(internal MR 2019) - Remove language about display time synchronization for
EXTX_overlay
(internal MR 1951) - Reword the description for
xrAttachSessionActionSets
.
(internal MR 1986) - Specify interpretation of premultiplied alpha color when alpha is zero.
(internal MR 1971) - Specify that rules for extension revisions compatibility requirements do not
apply to experimental extensions.
(internal MR 1992) - Update
reflow.py
so it does not reflow source code callout annotations.
(internal MR 2019) - Update
reflow.py
so it does not break directives to include an image.
(internal MR 2019) - Vulkan extensions: Specify expected mapping of swapchain image flags to Vulkan
equivalents.
(internal MR 1966,
internal issue 1500)
- Add note to recommend joint names for hand skeletons when using
OpenXR Specification (Source) 1.0.14
OpenXR Specification 1.0.14 (2021-01-27)
This release contains a collection of fixes and improvements, including one new
vendor extension.
- Registry
- Add new
XR_FB_android_surface_swapchain_create
vendor extension.
(internal MR 1939,
internal issue 1493,
internal MR 1968) - Add missing
optional
attributes toXR_KHR_vulkan_enable2
structs. Fixes
validation layer.
(OpenXR-Docs/#72) - Correction to
locationFlags
field inXrHandJointLocationEXT
to be optional.
(internal MR 1945) - Reserve vendor extensions for Varjo.
(internal MR 1935) - Reserve vendor extensions for Magic Leap.
(internal MR 1967,
internal MR 1970) - Reserve extension number 143 to 148 for MSFT extensions.
(internal MR 1969) - Update Magic Leap ID and contact information.
(internal MR 1967)
- Add new
- Specification
- Add missing asciidoctor markup to names in
XrResult
comments, and include
those comments in theXrResult
ref page.
(OpenXR-Docs/#71) - Clarify specification for thumbstick's Y direction should be pointing Up.
(internal MR 1944) - Clarify in the
xrGetCurrentInteractionProfile
docs, not just in the output
struct, thatXR_NULL_PATH
may be returned.
(OpenXR-Docs/#64) - Correct specification readme asciidoctor install references
(internal MR 1942) - Document new
XR_FB_android_surface_swapchain_create
vendor extension.
(internal MR 1939,
internal issue 1493,
internal MR 1968) - Fix broken link in
XR_EXTX_overlay
.
(internal MR 1975) - Some typo fixes.
(OpenXR-Docs/#76) - XR_KHR_vulkan_enable2: Refer to
xrGetVulkanGraphicsRequirements2KHR
instead
ofxrGetVulkanGraphicsRequirementsKHR
.
(OpenXR-Docs/#74) - scripts: Enforce that types specified in
structextends
attribute actually
exist.
(internal MR 1928) - scripts: Bundle Jinja2 in the OpenXR-Docs repo.
(internal MR 1936,
OpenXR-Docs/#61,
internal issue 1446) - scripts: Update bundled Jinja2 to 2.10.3, the last version to support Python
3.3 and 3.4.
(internal MR 1936) - scripts: Enforce style guide requirements that enum values should start with
the UPPER_SNAKE_CASE type name. (Checks to make sure the longest common token-
wise prefix of all values matches the type name, to ensure the type is named
appropriately too.)
(internal MR 1948) - scripts: Update AsciiDoctor extensions for no-warning behavior under
AsciiDoctor 2.
(internal MR 1975)
- Add missing asciidoctor markup to names in
Spec release 1.0.0
Official release of the OpenXR 1.0.0 specification.