Skip to content

Commit

Permalink
OpenXR Specification 1.0.30 (2023-09-20)
Browse files Browse the repository at this point in the history
This release is primarily a quality improvement release, fixing a range
of issues in the registry and specification, in addition to a new vendor
extension and an updated vendor extension.

-   Registry
    -   Add missing enum tags for enum-sized array struct members.
        (internal MR 2731)
    -   Fix EGL “get proc addr” function pointer typedef. (internal MR
        2939)
    -   New vendor extension: XR_YVR_controller_interaction (internal MR
        2841)
    -   XR_BD_controller_interaction: Add support for G3 devices
        (internal MR 2872)
    -   Fix specification errors highlighted by fixed tooling. (internal
        MR 2923)
-   Specification
    -   Clarify how prior frame state is reset when a session starts
        running. (internal MR 2759, internal issue 2029)
    -   Clean up normative language in FB vendor extensions. (internal
        MR 2563)
    -   Clean up normative language in the Rendering chapter. (internal
        MR 2801)
    -   Fix formatting and markup errors in the loader design document.
        (internal MR 2866)
    -   Fix generated broken links from valid usage in ref pages to the
        next chain fundamentals. (internal MR 2931, internal issue 1369)
    -   Fix broken links and update URLs in specification, extension
        process, style guide, and loader doc. (internal MR 2935)
    -   New vendor extension specification:
        XR_YVR_controller_interaction (internal MR 2841)
    -   XR_BD_controller_interaction: Add support for G3 devices
        (internal MR 2872)
    -   XR_EXT_debug_utils: Fix XML to reflect that
        XrDebugUtilsMessengerCallbackDataEXT parameters messageId and
        functionName are optional. (internal MR 2864)
    -   scripts: Fix member name lookups in entity_db, enabling numerous
        spec warnings that had been hidden. (internal MR 2923)
    -   Fix specification errors (core and extension) highlighted by
        fixed tooling. (internal MR 2923)

GitOrigin-RevId: f7a0c0f3691f0c7b0a239cb34e41d01042d5a02a
  • Loading branch information
rpavlik committed Sep 20, 2023
1 parent 77afb1f commit 4f1867e
Show file tree
Hide file tree
Showing 44 changed files with 515 additions and 220 deletions.
6 changes: 3 additions & 3 deletions .reuse/dep5
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: OpenXR
Upstream-Contact: Ryan Pavlik <openxr-speceditor AT khronos DOT org>
Source: https://khronos.org/registry/OpenXR/
Source: https://registry.khronos.org/OpenXR/

Files: changes/conformance/*
changes/registry/*
Expand Down Expand Up @@ -54,8 +54,8 @@ Comment: Unmodified, vendored copy of a subset of the tiny-gltf repo v2.8.9
Files: src/external/d3dx12/*
Copyright: Copyright (c) Microsoft Corporation.
License: MIT
Comment: Unmodified, vendored copy of DirectX-Headers commit da7aedb
of https://github.com/microsoft/DirectX-Headers filtered to just d3dx12 headers
Comment: Unmodified, vendored copy of d3dx12.h from directx-vs-templates commit 86b9c45
This repo includes ifdefs to improve compatibility with older Windows SDK verions.

Files: src/external/mikktspace/*
Copyright: 2011 by Morten S. Mikkelsen
Expand Down
48 changes: 48 additions & 0 deletions CHANGELOG.Docs.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,54 @@ any public pull requests that have been accepted.
This changelog only lists changes that affect the registry,
headers, and/or specification text.

## OpenXR Specification 1.0.30 (2023-09-20)

This release is primarily a quality improvement release, fixing a range of
issues in the registry and specification, in addition to a new vendor extension
and an updated vendor extension.

- Registry
- Add missing enum tags for enum-sized array struct members.
([internal MR 2731](https://gitlab.khronos.org/openxr/openxr/merge_requests/2731))
- Fix EGL "get proc addr" function pointer typedef.
([internal MR 2939](https://gitlab.khronos.org/openxr/openxr/merge_requests/2939))
- New vendor extension: `XR_YVR_controller_interaction`
([internal MR 2841](https://gitlab.khronos.org/openxr/openxr/merge_requests/2841))
- `XR_BD_controller_interaction`: Add support for G3 devices
([internal MR 2872](https://gitlab.khronos.org/openxr/openxr/merge_requests/2872))
- Fix specification errors highlighted by fixed tooling.
([internal MR 2923](https://gitlab.khronos.org/openxr/openxr/merge_requests/2923))
- Specification
- Clarify how prior frame state is reset when a session starts running.
([internal MR 2759](https://gitlab.khronos.org/openxr/openxr/merge_requests/2759),
[internal issue 2029](https://gitlab.khronos.org/openxr/openxr/issues/2029))
- Clean up normative language in FB vendor extensions.
([internal MR 2563](https://gitlab.khronos.org/openxr/openxr/merge_requests/2563))
- Clean up normative language in the Rendering chapter.
([internal MR 2801](https://gitlab.khronos.org/openxr/openxr/merge_requests/2801))
- Fix formatting and markup errors in the loader design document.
([internal MR 2866](https://gitlab.khronos.org/openxr/openxr/merge_requests/2866))
- Fix generated broken links from valid usage in ref pages to the next chain
fundamentals.
([internal MR 2931](https://gitlab.khronos.org/openxr/openxr/merge_requests/2931),
[internal issue 1369](https://gitlab.khronos.org/openxr/openxr/issues/1369))
- Fix broken links and update URLs in specification, extension process, style
guide, and loader doc.
([internal MR 2935](https://gitlab.khronos.org/openxr/openxr/merge_requests/2935))
- New vendor extension specification: `XR_YVR_controller_interaction`
([internal MR 2841](https://gitlab.khronos.org/openxr/openxr/merge_requests/2841))
- `XR_BD_controller_interaction`: Add support for G3 devices
([internal MR 2872](https://gitlab.khronos.org/openxr/openxr/merge_requests/2872))
- `XR_EXT_debug_utils`: Fix XML to reflect that
`XrDebugUtilsMessengerCallbackDataEXT` parameters `messageId` and
`functionName` are optional.
([internal MR 2864](https://gitlab.khronos.org/openxr/openxr/merge_requests/2864))
- scripts: Fix member name lookups in `entity_db`, enabling numerous spec
warnings that had been hidden.
([internal MR 2923](https://gitlab.khronos.org/openxr/openxr/merge_requests/2923))
- Fix specification errors (core and extension) highlighted by fixed tooling.
([internal MR 2923](https://gitlab.khronos.org/openxr/openxr/merge_requests/2923))

## OpenXR Specification 1.0.29 (2023-08-25)

This release contains several fixes to the specification, as well as
Expand Down
9 changes: 4 additions & 5 deletions specification/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ ifneq (,$(strip $(VERY_STRICT)))
ASCIIDOC := $(ASCIIDOC) --failure-level WARN
endif

SPECREVISION = 1.0.29
SPECREVISION = 1.0.30
REVISION_COMPONENTS = $(subst ., ,$(SPECREVISION))
MAJORMINORVER = $(word 1,$(REVISION_COMPONENTS)).$(word 2,$(REVISION_COMPONENTS))

Expand All @@ -57,7 +57,7 @@ PYAPIMAP := $(GENDIR)/apimap.py
RBAPIMAP := $(GENDIR)/apimap.rb
METADIR := $(GENDIR)/meta

VK_REF_PAGE_ROOT := https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html
VK_REF_PAGE_ROOT := https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/

MAKE_RELATIVE = $(patsubst $(CURDIR)/%,%,$(1))

Expand Down Expand Up @@ -406,7 +406,7 @@ MANSOURCES = $(CORESOURCES) $(VENSOURCES) $(KHRSOURCES)
MANGENERATED = $(wildcard $(REFPATH)/*)
MANHTML = $(MANSOURCES:$(REFPATH)/%.txt=$(MANHTMLDIR)/%.html)
MANDEPS = $(GENINCLUDE) $(GENDEPENDS)
HTML_SPEC_RELATIVE ?= ../../$(SPEC_FILENAME_STEM).html
HTML_SPEC_RELATIVE ?= ../../html/$(SPEC_FILENAME_STEM).html

# Asciidoctor options to build refpages
#
Expand All @@ -421,8 +421,7 @@ ADOCREFOPTS = -a stylesheet=khronos.css \
-a refprefix='refpage.' \
-a isrefpage \
-a html_spec_relative='$(HTML_SPEC_RELATIVE)' \
-a imagesdir=$(CURDIR)/sources \
-a vkRefPageRoot='$(VK_REF_PAGE_ROOT)'
-a imagesdir=$(CURDIR)/sources

# Pure makefile lowercase function, generated by a script.
make_lower = $(subst A,a,$(subst B,b,$(subst C,c,$(subst D,d,$(subst E,e,$(subst F,f,$(subst G,g,$(subst H,h,$(subst I,i,$(subst J,j,$(subst K,k,$(subst L,l,$(subst M,m,$(subst N,n,$(subst O,o,$(subst P,p,$(subst Q,q,$(subst R,r,$(subst S,s,$(subst T,t,$(subst U,u,$(subst V,v,$(subst W,w,$(subst X,x,$(subst Y,y,$(subst Z,z,$(1)))))))))))))))))))))))))))
Expand Down
31 changes: 30 additions & 1 deletion specification/config/attribs.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,36 @@ ifndef::backend-html5[]
:wbro:
endif::backend-html5[]


// Placeholders for synchronization block text
:externsynctitle: Thread Safety
:externsyncprefix: Access to

// next chain link to avoid broken links in ref pages
// This section is not in a ref page so cross-file-links is not the right attribute to check.
ifdef::doctype-manpage[]
:uri-next-chain: {html_spec_relative}#valid-usage-for-structure-pointer-chains
endif::doctype-manpage[]
ifndef::doctype-manpage[]
:uri-next-chain: #valid-usage-for-structure-pointer-chains
endif::doctype-manpage[]

// URIs used in the spec:
// If it's in the main spec and extracted to the ref pages, put it here.

// OpenXR URIs
:uri-openxr-registry-root: https://registry.khronos.org/OpenXR
:uri-openxr-ratified-spec: {uri-openxr-registry-root}/specs/1.0-khr/html/xrspec.html
:uri-github-openxr-docs: https://github.com/KhronosGroup/OpenXR-Docs

// glTF URIs
:uri-gltf2: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html
:uri-gltf2-basisu: https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Khronos/KHR_texture_basisu

// Vulkan URIs
:uri-vk-ref-page-root: https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html
:uri-vkCreateInstance: {uri-vk-ref-page-root}/vkCreateInstance.html
:uri-VkInstanceCreateInfo: {uri-vk-ref-page-root}/VkInstanceCreateInfo.html
:uri-VkAllocationCallbacks: {uri-vk-ref-page-root}/VkAllocationCallbacks.html
:uri-vkCreateDevice: {uri-vk-ref-page-root}/vkCreateDevice.html
:uri-VkDeviceCreateInfo: {uri-vk-ref-page-root}/VkDeviceCreateInfo.html
:uri-VkAllocationCallbacks: {uri-vk-ref-page-root}/VkAllocationCallbacks.html
2 changes: 1 addition & 1 deletion specification/config/copyright-spec.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ trademarks in relation to that implementation, and receive reciprocal patent
license protection under the Khronos Intellectual Property Rights Policy
must become Adopters and confirm the implementation as conformant under the
process defined by Khronos for this Specification; see
https://www.khronos.org/adopters.
https://www.khronos.org/adopters .
endif::ratified_core_spec[]

// Enabled in all other builds
Expand Down
2 changes: 1 addition & 1 deletion specification/current_version.ini
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@
# Similarly, update specification/scripts/extensionmetadocgenerator.py as well.
MAJOR=1
MINOR=0
PATCH=29
PATCH=30
1 change: 1 addition & 0 deletions specification/registry/registry.sch
Original file line number Diff line number Diff line change
Expand Up @@ -848,6 +848,7 @@
'/interaction_profiles/ml/ml2_controller',
'/interaction_profiles/bytedance/pico_neo3_controller',
'/interaction_profiles/bytedance/pico4_controller',
'/interaction_profiles/bytedance/pico_g3_controller',
'/interaction_profiles/facebook/touch_controller_pro'
)"/>
<sch:assert test="ends-with(@name, $vendor-tag) or $is_exception">
Expand Down
Loading

0 comments on commit 4f1867e

Please sign in to comment.