1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-21 14:57:09 +00:00

openxr: Sync with upstream 1.0.30

This commit is contained in:
Rémi Verschelde
2023-09-30 13:01:45 +02:00
parent fd33c7b32f
commit 94810115fe
20 changed files with 485 additions and 123 deletions

View File

@@ -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, 28)
#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)
@@ -491,6 +491,7 @@ typedef enum XrStructureType {
XR_TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB = 1000209002,
XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB = 1000212000,
XR_TYPE_LOCAL_DIMMING_FRAME_END_INFO_META = 1000216000,
XR_TYPE_PASSTHROUGH_PREFERENCES_META = 1000217000,
XR_TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META = 1000219001,
XR_TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META = 1000219002,
XR_TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META = 1000219003,
@@ -1799,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;
@@ -2115,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,
@@ -2453,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;
@@ -3266,7 +3267,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrRequestDisplayRefreshRateFB(
#define XR_HTCX_vive_tracker_interaction 1
#define XR_HTCX_vive_tracker_interaction_SPEC_VERSION 2
#define XR_HTCX_vive_tracker_interaction_SPEC_VERSION 3
#define XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME "XR_HTCX_vive_tracker_interaction"
typedef struct XrViveTrackerPathsHTCX {
XrStructureType type;
@@ -3451,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
@@ -3463,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 */
@@ -3756,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
@@ -3893,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,
@@ -4084,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
@@ -4243,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);
@@ -4261,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,
@@ -5238,6 +5239,31 @@ typedef struct XrLocalDimmingFrameEndInfoMETA {
#define XR_META_passthrough_preferences 1
#define XR_META_passthrough_preferences_SPEC_VERSION 1
#define XR_META_PASSTHROUGH_PREFERENCES_EXTENSION_NAME "XR_META_passthrough_preferences"
typedef XrFlags64 XrPassthroughPreferenceFlagsMETA;
// Flag bits for XrPassthroughPreferenceFlagsMETA
static const XrPassthroughPreferenceFlagsMETA XR_PASSTHROUGH_PREFERENCE_DEFAULT_TO_ACTIVE_BIT_META = 0x00000001;
typedef struct XrPassthroughPreferencesMETA {
XrStructureType type;
const void* XR_MAY_ALIAS next;
XrPassthroughPreferenceFlagsMETA flags;
} XrPassthroughPreferencesMETA;
typedef XrResult (XRAPI_PTR *PFN_xrGetPassthroughPreferencesMETA)(XrSession session, XrPassthroughPreferencesMETA* preferences);
#ifndef XR_NO_PROTOTYPES
#ifdef XR_EXTENSION_PROTOTYPES
XRAPI_ATTR XrResult XRAPI_CALL xrGetPassthroughPreferencesMETA(
XrSession session,
XrPassthroughPreferencesMETA* preferences);
#endif /* XR_EXTENSION_PROTOTYPES */
#endif /* !XR_NO_PROTOTYPES */
#define XR_META_virtual_keyboard 1
XR_DEFINE_HANDLE(XrVirtualKeyboardMETA)
#define XR_MAX_VIRTUAL_KEYBOARD_COMMIT_TEXT_SIZE_META 3992
@@ -5934,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"
@@ -6128,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

View File

@@ -491,14 +491,15 @@ 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 PFN_xrVoidFunction (*PFN_xrEglGetProcAddressMNDX)(const char *name);
// XrGraphicsBindingEGLMNDX extends XrSessionCreateInfo
typedef struct XrGraphicsBindingEGLMNDX {
XrStructureType type;
const void* XR_MAY_ALIAS next;
PFNEGLGETPROCADDRESSPROC getProcAddress;
EGLDisplay display;
EGLConfig config;
EGLContext context;
XrStructureType type;
const void* XR_MAY_ALIAS next;
PFN_xrEglGetProcAddressMNDX getProcAddress;
EGLDisplay display;
EGLConfig config;
EGLContext context;
} XrGraphicsBindingEGLMNDX;
#endif /* XR_USE_PLATFORM_EGL */

View File

@@ -386,6 +386,7 @@ XR_ENUM_STR(XrResult);
_(XR_TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB, 1000209002) \
_(XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB, 1000212000) \
_(XR_TYPE_LOCAL_DIMMING_FRAME_END_INFO_META, 1000216000) \
_(XR_TYPE_PASSTHROUGH_PREFERENCES_META, 1000217000) \
_(XR_TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META, 1000219001) \
_(XR_TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META, 1000219002) \
_(XR_TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META, 1000219003) \
@@ -1269,6 +1270,9 @@ XR_ENUM_STR(XrResult);
_(XR_COMPOSITION_LAYER_SETTINGS_NORMAL_SHARPENING_BIT_FB, 0x00000004) \
_(XR_COMPOSITION_LAYER_SETTINGS_QUALITY_SHARPENING_BIT_FB, 0x00000008) \
#define XR_LIST_BITS_XrPassthroughPreferenceFlagsMETA(_) \
_(XR_PASSTHROUGH_PREFERENCE_DEFAULT_TO_ACTIVE_BIT_META, 0x00000001) \
#define XR_LIST_BITS_XrVirtualKeyboardInputStateFlagsMETA(_) \
_(XR_VIRTUAL_KEYBOARD_INPUT_STATE_PRESSED_BIT_META, 0x00000001) \
@@ -3588,6 +3592,12 @@ XR_ENUM_STR(XrResult);
_(next) \
_(localDimmingMode) \
/// Calls your macro with the name of each member of XrPassthroughPreferencesMETA, in order.
#define XR_LIST_STRUCT_XrPassthroughPreferencesMETA(_) \
_(type) \
_(next) \
_(flags) \
/// Calls your macro with the name of each member of XrSystemVirtualKeyboardPropertiesMETA, in order.
#define XR_LIST_STRUCT_XrSystemVirtualKeyboardPropertiesMETA(_) \
_(type) \
@@ -4227,6 +4237,7 @@ XR_ENUM_STR(XrResult);
_(XrDevicePcmSampleRateStateFB, XR_TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB) \
_(XrCompositionLayerDepthTestFB, XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB) \
_(XrLocalDimmingFrameEndInfoMETA, XR_TYPE_LOCAL_DIMMING_FRAME_END_INFO_META) \
_(XrPassthroughPreferencesMETA, XR_TYPE_PASSTHROUGH_PREFERENCES_META) \
_(XrSystemVirtualKeyboardPropertiesMETA, XR_TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META) \
_(XrVirtualKeyboardCreateInfoMETA, XR_TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META) \
_(XrVirtualKeyboardSpaceCreateInfoMETA, XR_TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META) \
@@ -4556,6 +4567,7 @@ XR_ENUM_STR(XrResult);
_(XR_FB_haptic_pcm, 210) \
_(XR_FB_composition_layer_depth_test, 213) \
_(XR_META_local_dimming, 217) \
_(XR_META_passthrough_preferences, 218) \
_(XR_META_virtual_keyboard, 220) \
_(XR_OCULUS_external_camera, 227) \
_(XR_META_vulkan_swapchain_create_info, 228) \
@@ -4576,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

View File

@@ -268,6 +268,7 @@ This file contains expansion macros (X Macros) for OpenXR structures.
_avail(XrDevicePcmSampleRateStateFB, XR_TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB) \
_avail(XrCompositionLayerDepthTestFB, XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB) \
_avail(XrLocalDimmingFrameEndInfoMETA, XR_TYPE_LOCAL_DIMMING_FRAME_END_INFO_META) \
_avail(XrPassthroughPreferencesMETA, XR_TYPE_PASSTHROUGH_PREFERENCES_META) \
_avail(XrSystemVirtualKeyboardPropertiesMETA, XR_TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META) \
_avail(XrVirtualKeyboardCreateInfoMETA, XR_TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META) \
_avail(XrVirtualKeyboardSpaceCreateInfoMETA, XR_TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META) \