Skip to content

Commit ac3eadf

Browse files
committed
Merge pull request #97524 from BastiaanOlij/openxr_1141
Update thirdparty OpenXR to 1.1.41
2 parents ab1f55e + e0478fe commit ac3eadf

20 files changed

+1437
-73
lines changed

thirdparty/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -757,7 +757,7 @@ with the provided patch.
757757
## openxr
758758

759759
- Upstream: https://github.com/KhronosGroup/OpenXR-SDK
760-
- Version: 1.1.38 (f90488c4fb1537f4256d09d4a4d3ad5543ebaf24, 2024)
760+
- Version: 1.1.41 (7d1c0961351bac61fd7bb72d402649d5ac3f2935, 2024)
761761
- License: Apache 2.0
762762

763763
Files extracted from upstream source:

thirdparty/openxr/COPYING.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
This document is shared across a number of OpenXR GitHub projects, as the
88
set of files in those projects is partially overlapping.
9-
(There is a single "source of truth" internal Khronos GitLab repo these
9+
(There is a single "source of truth" internal Khronos GitLab monorepo these
1010
GitHub repositories interact with.)
1111

1212
== Licenses
@@ -17,7 +17,7 @@ https://reuse.software/spec/[REUSE 3.0 specification] with clear copyright
1717
holders and license identifier listed for each file, preferably in each
1818
file.
1919
Where this is not possible, or e.g. when we are using files unmodified from
20-
other open-source projects, license data is listed:
20+
other open source projects, license data is listed:
2121

2222
* in an adjacent file of the same name, with the additional extension
2323
"`.license`"

thirdparty/openxr/include/openxr/openxr.h

Lines changed: 641 additions & 3 deletions
Large diffs are not rendered by default.

thirdparty/openxr/include/openxr/openxr_platform.h

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -356,6 +356,43 @@ XRAPI_ATTR XrResult XRAPI_CALL xrGetD3D12GraphicsRequirementsKHR(
356356
#endif /* !XR_NO_PROTOTYPES */
357357
#endif /* XR_USE_GRAPHICS_API_D3D12 */
358358

359+
#ifdef XR_USE_GRAPHICS_API_METAL
360+
361+
// XR_KHR_metal_enable is a preprocessor guard. Do not pass it to API calls.
362+
#define XR_KHR_metal_enable 1
363+
#define XR_KHR_metal_enable_SPEC_VERSION 1
364+
#define XR_KHR_METAL_ENABLE_EXTENSION_NAME "XR_KHR_metal_enable"
365+
// XrGraphicsBindingMetalKHR extends XrSessionCreateInfo
366+
typedef struct XrGraphicsBindingMetalKHR {
367+
XrStructureType type;
368+
const void* XR_MAY_ALIAS next;
369+
void* XR_MAY_ALIAS commandQueue;
370+
} XrGraphicsBindingMetalKHR;
371+
372+
typedef struct XrSwapchainImageMetalKHR {
373+
XrStructureType type;
374+
const void* XR_MAY_ALIAS next;
375+
void* XR_MAY_ALIAS texture;
376+
} XrSwapchainImageMetalKHR;
377+
378+
typedef struct XrGraphicsRequirementsMetalKHR {
379+
XrStructureType type;
380+
void* XR_MAY_ALIAS next;
381+
void* XR_MAY_ALIAS metalDevice;
382+
} XrGraphicsRequirementsMetalKHR;
383+
384+
typedef XrResult (XRAPI_PTR *PFN_xrGetMetalGraphicsRequirementsKHR)(XrInstance instance, XrSystemId systemId, XrGraphicsRequirementsMetalKHR* graphicsRequirements);
385+
386+
#ifndef XR_NO_PROTOTYPES
387+
#ifdef XR_EXTENSION_PROTOTYPES
388+
XRAPI_ATTR XrResult XRAPI_CALL xrGetMetalGraphicsRequirementsKHR(
389+
XrInstance instance,
390+
XrSystemId systemId,
391+
XrGraphicsRequirementsMetalKHR* graphicsRequirements);
392+
#endif /* XR_EXTENSION_PROTOTYPES */
393+
#endif /* !XR_NO_PROTOTYPES */
394+
#endif /* XR_USE_GRAPHICS_API_METAL */
395+
359396
#ifdef XR_USE_PLATFORM_WIN32
360397

361398
// XR_KHR_win32_convert_performance_counter_time is a preprocessor guard. Do not pass it to API calls.

0 commit comments

Comments
 (0)