Skip to content

Commit

Permalink
OpenXR SDK 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 SDK, including fixing a loader bug related
to layers, 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)
-   SDK
    -   Add installable manual page for openxr_runtime_list_json.
        (internal MR 2899)
    -   Remove unused diagram exports from loader directory. (internal
        MR 2907)
    -   Update URLs in manual pages. (internal MR 2935)
    -   Validation Layer: Remove conditional XR_KHR_headless support as
        the extension is not part of OpenXR 1.0. (internal MR 2901)
    -   build system: Add CTest support for running the loader test.
        (internal MR 2289, OpenXR-SDK-Source issue 309, internal issue
        1733)
    -   hello_xr: Clean up how we specify the default graphics plugin on
        Android. (internal MR 2917)
    -   list_json: Add missing return statement for exit code. (internal
        MR 2936)
    -   loader: fix for implicit/explicit api layer loading logic
        (OpenXR-SDK-Source PR 421, internal issue 2079)

GitOrigin-RevId: f7a0c0f3691f0c7b0a239cb34e41d01042d5a02a
  • Loading branch information
rpavlik committed Sep 20, 2023
1 parent 90734c5 commit 5522447
Show file tree
Hide file tree
Showing 9 changed files with 174 additions and 55 deletions.
2 changes: 1 addition & 1 deletion .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#
# SPDX-License-Identifier: Apache-2.0

version: 1.0.29.{build}
version: 1.0.30.{build}
image: Visual Studio 2017


Expand Down
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
39 changes: 39 additions & 0 deletions CHANGELOG.SDK.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,45 @@ along with any public pull requests that have been accepted.
In this repository in particular, since it is primarily software,
pull requests may be integrated as they are accepted even between periodic updates.

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

This release is primarily a quality improvement release, fixing a range of
issues in the registry and SDK, including fixing a loader bug related to layers,
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))
- SDK
- Add installable manual page for `openxr_runtime_list_json`.
([internal MR 2899](https://gitlab.khronos.org/openxr/openxr/merge_requests/2899))
- Remove unused diagram exports from loader directory.
([internal MR 2907](https://gitlab.khronos.org/openxr/openxr/merge_requests/2907))
- Update URLs in manual pages.
([internal MR 2935](https://gitlab.khronos.org/openxr/openxr/merge_requests/2935))
- Validation Layer: Remove conditional `XR_KHR_headless` support as the extension
is not part of OpenXR 1.0.
([internal MR 2901](https://gitlab.khronos.org/openxr/openxr/merge_requests/2901))
- build system: Add CTest support for running the loader test.
([internal MR 2289](https://gitlab.khronos.org/openxr/openxr/merge_requests/2289),
[OpenXR-SDK-Source issue 309](https://github.com/KhronosGroup/OpenXR-SDK-Source/issues/309),
[internal issue 1733](https://gitlab.khronos.org/openxr/openxr/issues/1733))
- hello_xr: Clean up how we specify the default graphics plugin on Android.
([internal MR 2917](https://gitlab.khronos.org/openxr/openxr/merge_requests/2917))
- list_json: Add missing return statement for exit code.
([internal MR 2936](https://gitlab.khronos.org/openxr/openxr/merge_requests/2936))
- loader: fix for implicit/explicit api layer loading logic
([OpenXR-SDK-Source PR 421](https://github.com/KhronosGroup/OpenXR-SDK-Source/pull/421),
[internal issue 2079](https://gitlab.khronos.org/openxr/openxr/issues/2079))

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

This release contains several fixes to the specification registry, improvements
Expand Down
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ cmake_minimum_required(VERSION 3.0)
project(OPENXR)

find_package(PythonInterp 3)
include(CTest)

# Enable IDE GUI folders. "Helper targets" that don't have interesting source code should set their FOLDER property to this
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
Expand Down
29 changes: 17 additions & 12 deletions include/openxr/openxr.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ extern "C" {
((((major) & 0xffffULL) << 48) | (((minor) & 0xffffULL) << 32) | ((patch) & 0xffffffffULL))

// OpenXR current version number.
#define XR_CURRENT_API_VERSION XR_MAKE_VERSION(1, 0, 29)
#define XR_CURRENT_API_VERSION XR_MAKE_VERSION(1, 0, 30)

#define XR_VERSION_MAJOR(version) (uint16_t)(((uint64_t)(version) >> 48)& 0xffffULL)
#define XR_VERSION_MINOR(version) (uint16_t)(((uint64_t)(version) >> 32) & 0xffffULL)
Expand Down Expand Up @@ -1800,7 +1800,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrThermalGetTemperatureTrendEXT(

#define XR_EXT_debug_utils 1
XR_DEFINE_HANDLE(XrDebugUtilsMessengerEXT)
#define XR_EXT_debug_utils_SPEC_VERSION 4
#define XR_EXT_debug_utils_SPEC_VERSION 5
#define XR_EXT_DEBUG_UTILS_EXTENSION_NAME "XR_EXT_debug_utils"
typedef XrFlags64 XrDebugUtilsMessageSeverityFlagsEXT;

Expand Down Expand Up @@ -2116,9 +2116,9 @@ XRAPI_ATTR XrResult XRAPI_CALL xrSetInputDeviceLocationEXT(

#define XR_MSFT_spatial_graph_bridge 1
XR_DEFINE_HANDLE(XrSpatialGraphNodeBindingMSFT)
#define XR_GUID_SIZE_MSFT 16
#define XR_MSFT_spatial_graph_bridge_SPEC_VERSION 2
#define XR_MSFT_SPATIAL_GRAPH_BRIDGE_EXTENSION_NAME "XR_MSFT_spatial_graph_bridge"
#define XR_GUID_SIZE_MSFT 16

typedef enum XrSpatialGraphNodeTypeMSFT {
XR_SPATIAL_GRAPH_NODE_TYPE_STATIC_MSFT = 1,
Expand Down Expand Up @@ -2454,9 +2454,9 @@ typedef struct XrSecondaryViewConfigurationSwapchainCreateInfoMSFT {
#define XR_NULL_CONTROLLER_MODEL_KEY_MSFT 0

XR_DEFINE_ATOM(XrControllerModelKeyMSFT)
#define XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT 64
#define XR_MSFT_controller_model_SPEC_VERSION 2
#define XR_MSFT_CONTROLLER_MODEL_EXTENSION_NAME "XR_MSFT_controller_model"
#define XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT 64
typedef struct XrControllerModelKeyStateMSFT {
XrStructureType type;
void* XR_MAY_ALIAS next;
Expand Down Expand Up @@ -3452,7 +3452,7 @@ typedef struct XrSystemColorSpacePropertiesFB {
} XrSystemColorSpacePropertiesFB;

typedef XrResult (XRAPI_PTR *PFN_xrEnumerateColorSpacesFB)(XrSession session, uint32_t colorSpaceCapacityInput, uint32_t* colorSpaceCountOutput, XrColorSpaceFB* colorSpaces);
typedef XrResult (XRAPI_PTR *PFN_xrSetColorSpaceFB)(XrSession session, const XrColorSpaceFB colorspace);
typedef XrResult (XRAPI_PTR *PFN_xrSetColorSpaceFB)(XrSession session, const XrColorSpaceFB colorSpace);

#ifndef XR_NO_PROTOTYPES
#ifdef XR_EXTENSION_PROTOTYPES
Expand All @@ -3464,7 +3464,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateColorSpacesFB(

XRAPI_ATTR XrResult XRAPI_CALL xrSetColorSpaceFB(
XrSession session,
const XrColorSpaceFB colorspace);
const XrColorSpaceFB colorSpace);
#endif /* XR_EXTENSION_PROTOTYPES */
#endif /* !XR_NO_PROTOTYPES */

Expand Down Expand Up @@ -3757,9 +3757,9 @@ typedef struct XrFoveationLevelProfileCreateInfoFB {


#define XR_FB_keyboard_tracking 1
#define XR_MAX_KEYBOARD_TRACKING_NAME_SIZE_FB 128
#define XR_FB_keyboard_tracking_SPEC_VERSION 1
#define XR_FB_KEYBOARD_TRACKING_EXTENSION_NAME "XR_FB_keyboard_tracking"
#define XR_MAX_KEYBOARD_TRACKING_NAME_SIZE_FB 128
typedef XrFlags64 XrKeyboardTrackingFlagsFB;

// Flag bits for XrKeyboardTrackingFlagsFB
Expand Down Expand Up @@ -3894,9 +3894,9 @@ XRAPI_ATTR XrResult XRAPI_CALL xrTriangleMeshEndVertexBufferUpdateFB(
XR_DEFINE_HANDLE(XrPassthroughFB)
XR_DEFINE_HANDLE(XrPassthroughLayerFB)
XR_DEFINE_HANDLE(XrGeometryInstanceFB)
#define XR_PASSTHROUGH_COLOR_MAP_MONO_SIZE_FB 256
#define XR_FB_passthrough_SPEC_VERSION 3
#define XR_FB_PASSTHROUGH_EXTENSION_NAME "XR_FB_passthrough"
#define XR_PASSTHROUGH_COLOR_MAP_MONO_SIZE_FB 256

typedef enum XrPassthroughLayerPurposeFB {
XR_PASSTHROUGH_LAYER_PURPOSE_RECONSTRUCTION_FB = 0,
Expand Down Expand Up @@ -4085,9 +4085,9 @@ XRAPI_ATTR XrResult XRAPI_CALL xrGeometryInstanceSetTransformFB(
#define XR_NULL_RENDER_MODEL_KEY_FB 0

XR_DEFINE_ATOM(XrRenderModelKeyFB)
#define XR_MAX_RENDER_MODEL_NAME_SIZE_FB 64
#define XR_FB_render_model_SPEC_VERSION 4
#define XR_FB_RENDER_MODEL_EXTENSION_NAME "XR_FB_render_model"
#define XR_MAX_RENDER_MODEL_NAME_SIZE_FB 64
typedef XrFlags64 XrRenderModelFlagsFB;

// Flag bits for XrRenderModelFlagsFB
Expand Down Expand Up @@ -4244,7 +4244,7 @@ typedef struct XrMarkerSpaceCreateInfoVARJO {

typedef XrResult (XRAPI_PTR *PFN_xrSetMarkerTrackingVARJO)(XrSession session, XrBool32 enabled);
typedef XrResult (XRAPI_PTR *PFN_xrSetMarkerTrackingTimeoutVARJO)(XrSession session, uint64_t markerId, XrDuration timeout);
typedef XrResult (XRAPI_PTR *PFN_xrSetMarkerTrackingPredictionVARJO)(XrSession session, uint64_t markerId, XrBool32 enabled);
typedef XrResult (XRAPI_PTR *PFN_xrSetMarkerTrackingPredictionVARJO)(XrSession session, uint64_t markerId, XrBool32 enable);
typedef XrResult (XRAPI_PTR *PFN_xrGetMarkerSizeVARJO)(XrSession session, uint64_t markerId, XrExtent2Df* size);
typedef XrResult (XRAPI_PTR *PFN_xrCreateMarkerSpaceVARJO)(XrSession session, const XrMarkerSpaceCreateInfoVARJO* createInfo, XrSpace* space);

Expand All @@ -4262,7 +4262,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrSetMarkerTrackingTimeoutVARJO(
XRAPI_ATTR XrResult XRAPI_CALL xrSetMarkerTrackingPredictionVARJO(
XrSession session,
uint64_t markerId,
XrBool32 enabled);
XrBool32 enable);

XRAPI_ATTR XrResult XRAPI_CALL xrGetMarkerSizeVARJO(
XrSession session,
Expand Down Expand Up @@ -5960,7 +5960,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrApplyForceFeedbackCurlMNDX(


#define XR_BD_controller_interaction 1
#define XR_BD_controller_interaction_SPEC_VERSION 1
#define XR_BD_controller_interaction_SPEC_VERSION 2
#define XR_BD_CONTROLLER_INTERACTION_EXTENSION_NAME "XR_BD_controller_interaction"


Expand Down Expand Up @@ -6154,6 +6154,11 @@ XRAPI_ATTR XrResult XRAPI_CALL xrGetPlanePolygonBufferEXT(
#define XR_OPPO_controller_interaction_SPEC_VERSION 1
#define XR_OPPO_CONTROLLER_INTERACTION_EXTENSION_NAME "XR_OPPO_controller_interaction"


#define XR_YVR_controller_interaction 1
#define XR_YVR_controller_interaction_SPEC_VERSION 1
#define XR_YVR_CONTROLLER_INTERACTION_EXTENSION_NAME "XR_YVR_controller_interaction"

#ifdef __cplusplus
}
#endif
Expand Down
2 changes: 1 addition & 1 deletion include/openxr/openxr_platform.h
Original file line number Diff line number Diff line change
Expand Up @@ -491,7 +491,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrGetVulkanGraphicsRequirements2KHR(
#define XR_MNDX_egl_enable 1
#define XR_MNDX_egl_enable_SPEC_VERSION 1
#define XR_MNDX_EGL_ENABLE_EXTENSION_NAME "XR_MNDX_egl_enable"
typedef void *(*PFN_xrEglGetProcAddressMNDX)(const char *name);
typedef PFN_xrVoidFunction (*PFN_xrEglGetProcAddressMNDX)(const char *name);
// XrGraphicsBindingEGLMNDX extends XrSessionCreateInfo
typedef struct XrGraphicsBindingEGLMNDX {
XrStructureType type;
Expand Down
1 change: 1 addition & 0 deletions include/openxr/openxr_reflection.h
Original file line number Diff line number Diff line change
Expand Up @@ -4588,6 +4588,7 @@ XR_ENUM_STR(XrResult);
_(XR_EXT_hand_tracking_data_source, 429) \
_(XR_EXT_plane_detection, 430) \
_(XR_OPPO_controller_interaction, 454) \
_(XR_YVR_controller_interaction, 498) \


#endif
Expand Down
Loading

0 comments on commit 5522447

Please sign in to comment.