diff --git a/modules/lwjgl/openxr/src/templates/kotlin/openxr/ExtensionTypes.kt b/modules/lwjgl/openxr/src/templates/kotlin/openxr/ExtensionTypes.kt
index 38bd5ff0f9..342cf51f5a 100644
--- a/modules/lwjgl/openxr/src/templates/kotlin/openxr/ExtensionTypes.kt
+++ b/modules/lwjgl/openxr/src/templates/kotlin/openxr/ExtensionTypes.kt
@@ -30,10 +30,7 @@ val XrSpatialAnchorStoreConnectionMSFT = XR_DEFINE_HANDLE("XrSpatialAnchorStoreC
val XrSpaceUserFB = XR_DEFINE_HANDLE("XrSpaceUserFB")
val XrFaceTrackerFB = XR_DEFINE_HANDLE("XrFaceTrackerFB")
val XrEyeTrackerFB = XR_DEFINE_HANDLE("XrEyeTrackerFB")
-val XrVirtualKeyboardMETA = XR_DEFINE_HANDLE("XrVirtualKeyboardMETA")
-val XrPassthroughColorLutMETA = XR_DEFINE_HANDLE("XrPassthroughColorLutMETA")
val XrPassthroughHTC = XR_DEFINE_HANDLE("XrPassthroughHTC")
-val XrPlaneDetectorEXT = XR_DEFINE_HANDLE("XrPlaneDetectorEXT")
// Enum types
val XrPerfSettingsDomainEXT = "XrPerfSettingsDomainEXT".enumType
@@ -48,7 +45,6 @@ val XrHandJointEXT = "XrHandJointEXT".enumType
val XrHandJointSetEXT = "XrHandJointSetEXT".enumType
val XrHandPoseTypeMSFT = "XrHandPoseTypeMSFT".enumType
val XrReprojectionModeMSFT = "XrReprojectionModeMSFT".enumType
-val XrCompositionLayerSecureContentFlagBitsFB = "XrCompositionLayerSecureContentFlagBitsFB".enumType
val XrBodyJointFB = "XrBodyJointFB".enumType
val XrBodyJointSetFB = "XrBodyJointSetFB".enumType
val XrHandJointsMotionRangeEXT = "XrHandJointsMotionRangeEXT".enumType
@@ -72,7 +68,6 @@ val XrHandForearmJointULTRALEAP = "XrHandForearmJointULTRALEAP".enumType
val XrSpaceQueryActionFB = "XrSpaceQueryActionFB".enumType
val XrSpaceStorageLocationFB = "XrSpaceStorageLocationFB".enumType
val XrSpacePersistenceModeFB = "XrSpacePersistenceModeFB".enumType
-val XrSemanticLabelsSupportFlagBitsFB = "XrSemanticLabelsSupportFlagBitsFB".enumType
val XrFoveationEyeTrackedProfileCreateFlagBitsMETA = "XrFoveationEyeTrackedProfileCreateFlagBitsMETA".enumType
val XrFoveationEyeTrackedStateFlagBitsMETA = "XrFoveationEyeTrackedStateFlagBitsMETA".enumType
val XrFaceExpressionFB = "XrFaceExpressionFB".enumType
@@ -81,22 +76,14 @@ val XrFaceConfidenceFB = "XrFaceConfidenceFB".enumType
val XrEyePositionFB = "XrEyePositionFB".enumType
val XrCompareOpFB = "XrCompareOpFB".enumType
val XrLocalDimmingModeMETA = "XrLocalDimmingModeMETA".enumType
-val XrPassthroughPreferenceFlagBitsMETA = "XrPassthroughPreferenceFlagBitsMETA".enumType
-val XrVirtualKeyboardLocationTypeMETA = "XrVirtualKeyboardLocationTypeMETA".enumType
-val XrVirtualKeyboardInputSourceMETA = "XrVirtualKeyboardInputSourceMETA".enumType
val XrExternalCameraAttachedToDeviceOCULUS = "XrExternalCameraAttachedToDeviceOCULUS".enumType
val XrPerformanceMetricsCounterUnitMETA = "XrPerformanceMetricsCounterUnitMETA".enumType
-val XrPassthroughColorLutChannelsMETA = "XrPassthroughColorLutChannelsMETA".enumType
val XrTrackingOptimizationSettingsDomainQCOM = "XrTrackingOptimizationSettingsDomainQCOM".enumType
val XrTrackingOptimizationSettingsHintQCOM = "XrTrackingOptimizationSettingsHintQCOM".enumType
val XrPassthroughFormHTC = "XrPassthroughFormHTC".enumType
val XrFoveationModeHTC = "XrFoveationModeHTC".enumType
val XrFoveationLevelHTC = "XrFoveationLevelHTC".enumType
val XrForceFeedbackCurlLocationMNDX = "XrForceFeedbackCurlLocationMNDX".enumType
-val XrHandTrackingDataSourceEXT = "XrHandTrackingDataSourceEXT".enumType
-val XrPlaneDetectorOrientationEXT = "XrPlaneDetectorOrientationEXT".enumType
-val XrPlaneDetectorSemanticTypeEXT = "XrPlaneDetectorSemanticTypeEXT".enumType
-val XrPlaneDetectionStateEXT = "XrPlaneDetectionStateEXT".enumType
// Bitmask types
val XrDebugUtilsMessageSeverityFlagsEXT = typedef(XrFlags64, "XrDebugUtilsMessageSeverityFlagsEXT")
@@ -120,18 +107,13 @@ val XrRenderModelFlagsFB = typedef(XrFlags64, "XrRenderModelFlagsFB")
val XrFrameEndInfoFlagsML = typedef(XrFlags64, "XrFrameEndInfoFlagsML")
val XrGlobalDimmerFrameEndInfoFlagsML = typedef(XrFlags64, "XrGlobalDimmerFrameEndInfoFlagsML")
val XrCompositionLayerSpaceWarpInfoFlagsFB = typedef(XrFlags64, "XrCompositionLayerSpaceWarpInfoFlagsFB")
-val XrSemanticLabelsSupportFlagsFB = typedef(XrFlags64, "XrSemanticLabelsSupportFlagsFB")
val XrDigitalLensControlFlagsALMALENCE = typedef(XrFlags64, "XrDigitalLensControlFlagsALMALENCE")
val XrFoveationEyeTrackedProfileCreateFlagsMETA = typedef(XrFlags64, "XrFoveationEyeTrackedProfileCreateFlagsMETA")
val XrFoveationEyeTrackedStateFlagsMETA = typedef(XrFlags64, "XrFoveationEyeTrackedStateFlagsMETA")
val XrCompositionLayerSettingsFlagsFB = typedef(XrFlags64, "XrCompositionLayerSettingsFlagsFB")
-val XrPassthroughPreferenceFlagsMETA = typedef(XrFlags64, "XrPassthroughPreferenceFlagsMETA")
-val XrVirtualKeyboardInputStateFlagsMETA = typedef(XrFlags64, "XrVirtualKeyboardInputStateFlagsMETA")
val XrExternalCameraStatusFlagsOCULUS = typedef(XrFlags64, "XrExternalCameraStatusFlagsOCULUS")
val XrPerformanceMetricsCounterFlagsMETA = typedef(XrFlags64, "XrPerformanceMetricsCounterFlagsMETA")
val XrFoveationDynamicFlagsHTC = typedef(XrFlags64, "XrFoveationDynamicFlagsHTC")
-val XrPlaneDetectionCapabilityFlagsEXT = typedef(XrFlags64, "XrPlaneDetectionCapabilityFlagsEXT")
-val XrPlaneDetectorFlagsEXT = typedef(XrFlags64, "XrPlaneDetectorFlagsEXT")
// Function pointer types
val _XrDebugUtilsMessengerCallbackDataEXT = struct(Module.OPENXR, "XrDebugUtilsMessengerCallbackDataEXT")
@@ -187,7 +169,7 @@ val XrCompositionLayerCubeKHR = struct(Module.OPENXR, "XrCompositionLayerCubeKHR
- The {@link KHRCompositionLayerCube XR_KHR_composition_layer_cube} extension must be enabled prior to using ##XrCompositionLayerCubeKHR
- {@code type} must be #TYPE_COMPOSITION_LAYER_CUBE_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code layerFlags} must be 0 or a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code space} must be a valid {@code XrSpace} handle
- {@code eyeVisibility} must be a valid {@code XrEyeVisibility} value
@@ -203,12 +185,39 @@ val XrCompositionLayerCubeKHR = struct(Module.OPENXR, "XrCompositionLayerCubeKHR
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrCompositionLayerFlags("layerFlags", "any flags to apply to this layer.")
XrSpace("space", "the {@code XrSpace} in which the {@code orientation} of the cube layer is evaluated over time.")
- XrEyeVisibility("eyeVisibility", "the eye represented by this layer.")
+ XrEyeVisibility("eyeVisibility", "")
XrSwapchain("swapchain", "the swapchain, which must have been created with a {@code faceCount} of 6.")
uint32_t("imageArrayIndex", "the image array index, with 0 meaning the first or only array element.")
XrQuaternionf("orientation", "the orientation of the environment map in the {@code space}.")
}
+val XrInstanceCreateInfoAndroidKHR = struct(Module.OPENXR, "XrInstanceCreateInfoAndroidKHR") {
+ documentation =
+ """
+ Creates an OpenXR Instance.
+
+ Description
+ ##XrInstanceCreateInfoAndroidKHR contains additional Android specific information needed when calling #CreateInstance(). The {@code applicationVM} field should be populated with the {@code JavaVM} structure received by the {@code JNI_OnLoad} function, while the {@code applicationActivity} field will typically contain a reference to a Java activity object received through an application-specific native method. The ##XrInstanceCreateInfoAndroidKHR structure must be provided in the {@code next} chain of the ##XrInstanceCreateInfo structure when calling #CreateInstance().
+
+ Valid Usage (Implicit)
+
+ - The {@link KHRAndroidCreateInstance XR_KHR_android_create_instance} extension must be enabled prior to using ##XrInstanceCreateInfoAndroidKHR
+ - {@code type} must be #TYPE_INSTANCE_CREATE_INFO_ANDROID_KHR
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code applicationVM} must be a pointer value
+ - {@code applicationActivity} must be a pointer value
+
+
+ See Also
+ #CreateInstance(), #DestroyInstance()
+ """
+
+ Expression("#TYPE_INSTANCE_CREATE_INFO_ANDROID_KHR")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
+ nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
+ opaque_p("applicationVM", "a pointer to the JNI’s opaque {@code JavaVM} structure, cast to a void pointer.")
+ opaque_p("applicationActivity", "a JNI reference to an {@code android.app.Activity} that will drive the session lifecycle of this instance, cast to a void pointer.")
+}
+
val XrCompositionLayerDepthInfoKHR = struct(Module.OPENXR, "XrCompositionLayerDepthInfoKHR") {
documentation =
"""
@@ -235,7 +244,7 @@ val XrCompositionLayerDepthInfoKHR = struct(Module.OPENXR, "XrCompositionLayerDe
- The {@link KHRCompositionLayerDepth XR_KHR_composition_layer_depth} extension must be enabled prior to using ##XrCompositionLayerDepthInfoKHR
- {@code type} must be #TYPE_COMPOSITION_LAYER_DEPTH_INFO_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code subImage} must be a valid ##XrSwapchainSubImage structure
@@ -262,7 +271,7 @@ val XrVulkanSwapchainFormatListCreateInfoKHR = struct(Module.OPENXR, "XrVulkanSw
- The {@link KHRVulkanSwapchainFormatList XR_KHR_vulkan_swapchain_format_list} extension must be enabled prior to using ##XrVulkanSwapchainFormatListCreateInfoKHR
- {@code type} must be #TYPE_VULKAN_SWAPCHAIN_FORMAT_LIST_CREATE_INFO_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code viewFormatCount} is not 0, {@code viewFormats} must be a pointer to an array of {@code viewFormatCount} valid {@code VkFormat} values
@@ -285,7 +294,7 @@ val XrEventDataPerfSettingsEXT = struct(Module.OPENXR, "XrEventDataPerfSettingsE
- The {@link EXTPerformanceSettings XR_EXT_performance_settings} extension must be enabled prior to using ##XrEventDataPerfSettingsEXT
- {@code type} must be #TYPE_EVENT_DATA_PERF_SETTINGS_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -309,7 +318,7 @@ val XrCompositionLayerCylinderKHR = struct(Module.OPENXR, "XrCompositionLayerCyl
- The {@link KHRCompositionLayerCylinder XR_KHR_composition_layer_cylinder} extension must be enabled prior to using ##XrCompositionLayerCylinderKHR
- {@code type} must be #TYPE_COMPOSITION_LAYER_CYLINDER_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code layerFlags} must be 0 or a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code space} must be a valid {@code XrSpace} handle
- {@code eyeVisibility} must be a valid {@code XrEyeVisibility} value
@@ -324,7 +333,7 @@ val XrCompositionLayerCylinderKHR = struct(Module.OPENXR, "XrCompositionLayerCyl
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrCompositionLayerFlags("layerFlags", "specifies options for the layer.")
XrSpace("space", "the {@code XrSpace} in which the {@code pose} of the cylinder layer is evaluated over time.")
- XrEyeVisibility("eyeVisibility", "the eye represented by this layer.")
+ XrEyeVisibility("eyeVisibility", "")
XrSwapchainSubImage("subImage", "identifies the image ##XrSwapchainSubImage to use. The swapchain must have been created with a {@code faceCount} of 1.")
XrPosef("pose", "an ##XrPosef defining the position and orientation of the center point of the view of the cylinder within the reference frame of the {@code space}.")
float("radius", "the non-negative radius of the cylinder. Values of zero or floating point positive infinity are treated as an infinite cylinder.")
@@ -344,7 +353,7 @@ val XrCompositionLayerEquirectKHR = struct(Module.OPENXR, "XrCompositionLayerEqu
- The {@link KHRCompositionLayerEquirect XR_KHR_composition_layer_equirect} extension must be enabled prior to using ##XrCompositionLayerEquirectKHR
- {@code type} must be #TYPE_COMPOSITION_LAYER_EQUIRECT_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code layerFlags} must be 0 or a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code space} must be a valid {@code XrSpace} handle
- {@code eyeVisibility} must be a valid {@code XrEyeVisibility} value
@@ -359,7 +368,7 @@ val XrCompositionLayerEquirectKHR = struct(Module.OPENXR, "XrCompositionLayerEqu
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrCompositionLayerFlags("layerFlags", "specifies options for the layer.")
XrSpace("space", "the {@code XrSpace} in which the {@code pose} of the equirect layer is evaluated over time.")
- XrEyeVisibility("eyeVisibility", "the eye represented by this layer.")
+ XrEyeVisibility("eyeVisibility", "")
XrSwapchainSubImage("subImage", "identifies the image ##XrSwapchainSubImage to use. The swapchain must have been created with a {@code faceCount} of 1.")
XrPosef("pose", "an ##XrPosef defining the position and orientation of the center point of the sphere onto which the equirect image data is mapped, relative to the reference frame of the {@code space}.")
float("radius", "the non-negative radius of the sphere onto which the equirect image data is mapped. Values of zero or floating point positive infinity are treated as an infinite sphere.")
@@ -382,7 +391,7 @@ val XrDebugUtilsObjectNameInfoEXT = struct(Module.OPENXR, "XrDebugUtilsObjectNam
- The {@link EXTDebugUtils XR_EXT_debug_utils} extension must be enabled prior to using ##XrDebugUtilsObjectNameInfoEXT
- {@code type} must be #TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code objectType} must be a valid {@code XrObjectType} value
- If {@code objectName} is not {@code NULL}, {@code objectName} must be a null-terminated UTF-8 string
@@ -407,7 +416,7 @@ val XrDebugUtilsLabelEXT = struct(Module.OPENXR, "XrDebugUtilsLabelEXT") {
- The {@link EXTDebugUtils XR_EXT_debug_utils} extension must be enabled prior to using ##XrDebugUtilsLabelEXT
- {@code type} must be #TYPE_DEBUG_UTILS_LABEL_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code labelName} must be a null-terminated UTF-8 string
@@ -429,7 +438,7 @@ val XrDebugUtilsMessengerCallbackDataEXT = struct(Module.OPENXR, "XrDebugUtilsMe
- The {@link EXTDebugUtils XR_EXT_debug_utils} extension must be enabled prior to using ##XrDebugUtilsMessengerCallbackDataEXT
- {@code type} must be #TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code messageId} must be a null-terminated UTF-8 string
- {@code functionName} must be a null-terminated UTF-8 string
- {@code message} must be a null-terminated UTF-8 string
@@ -453,9 +462,11 @@ val XrDebugUtilsMessengerCallbackDataEXT = struct(Module.OPENXR, "XrDebugUtilsMe
charUTF8.const.p("functionName", "a {@code NULL} terminated string that identifies the OpenXR function that was executing at the time the message callback was triggered. This value may be {@code NULL} in cases where it is difficult to determine the originating OpenXR function.")
charUTF8.const.p("message", "a {@code NULL} terminated string detailing the trigger conditions.")
AutoSize("objects", optional = true)..uint32_t("objectCount", "a count of items contained in the {@code objects} array. This may be 0.")
- nullable..XrDebugUtilsObjectNameInfoEXT.p("objects", "{@code NULL} or a pointer to an array of ##XrDebugUtilsObjectNameInfoEXT objects related to the detected issue. The array is roughly in order of importance, but the 0th element is always guaranteed to be the most important object for this message.")
+ nullable..XrDebugUtilsObjectNameInfoEXT.p("objects", "a pointer to an array of ##XrDebugUtilsObjectNameInfoEXT objects related to the detected issue. The array is roughly in order or importance, but the 0th element is always guaranteed to be the most important object for this message.")
AutoSize("sessionLabels", optional = true)..uint32_t("sessionLabelCount", "a count of items contained in the {@code sessionLabels} array. This may be 0.")
- nullable..XrDebugUtilsLabelEXT.p("sessionLabels", "{@code NULL} or a pointer to an array of ##XrDebugUtilsLabelEXT active in the current {@code XrSession} at the time the callback was triggered. Refer to Session Labels for more information.")
+ nullable..XrDebugUtilsLabelEXT.p("sessionLabels", """a pointer to an array of ##XrDebugUtilsLabelEXT objects related to the detected issue. The array is roughly in order or importance, but the 0th element is always guaranteed to be the most important object for this message.
+
+ NULL or a pointer to an array of ##XrDebugUtilsLabelEXT active in the current {@code XrSession} at the time the callback was triggered. Refer to Session Labels for more information.""")
}
val XrDebugUtilsMessengerCreateInfoEXT = struct(Module.OPENXR, "XrDebugUtilsMessengerCreateInfoEXT") {
@@ -472,7 +483,7 @@ val XrDebugUtilsMessengerCreateInfoEXT = struct(Module.OPENXR, "XrDebugUtilsMess
- The {@link EXTDebugUtils XR_EXT_debug_utils} extension must be enabled prior to using ##XrDebugUtilsMessengerCreateInfoEXT
- {@code type} must be #TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code messageSeverities} must be a valid combination of {@code XrDebugUtilsMessageSeverityFlagBitsEXT} values
- {@code messageSeverities} must not be 0
- {@code messageTypes} must be a valid combination of {@code XrDebugUtilsMessageTypeFlagBitsEXT} values
@@ -519,7 +530,7 @@ val XrGraphicsBindingOpenGLWin32KHR = struct(Module.OPENXR, "XrGraphicsBindingOp
- The {@link KHROpenGLEnable XR_KHR_opengl_enable} extension must be enabled prior to using ##XrGraphicsBindingOpenGLWin32KHR
- {@code type} must be #TYPE_GRAPHICS_BINDING_OPENGL_WIN32_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code hDC} must be a valid {@code HDC} value
- {@code hGLRC} must be a valid {@code HGLRC} value
@@ -550,7 +561,7 @@ val XrGraphicsBindingOpenGLXlibKHR = struct(Module.OPENXR, "XrGraphicsBindingOpe
- The {@link KHROpenGLEnable XR_KHR_opengl_enable} extension must be enabled prior to using ##XrGraphicsBindingOpenGLXlibKHR
- {@code type} must be #TYPE_GRAPHICS_BINDING_OPENGL_XLIB_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code xDisplay} must be a pointer to a {@code Display} value
- {@code glxFBConfig} must be a valid {@code GLXFBConfig} value
- {@code glxDrawable} must be a valid {@code GLXDrawable} value
@@ -584,7 +595,7 @@ val XrGraphicsBindingOpenGLXcbKHR = struct(Module.OPENXR, "XrGraphicsBindingOpen
- The {@link KHROpenGLEnable XR_KHR_opengl_enable} extension must be enabled prior to using ##XrGraphicsBindingOpenGLXcbKHR
- {@code type} must be #TYPE_GRAPHICS_BINDING_OPENGL_XCB_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code connection} must be a pointer to an {@code xcb_connection_t} value
- {@code fbconfigid} must be a valid {@code xcb_glx_fbconfig_t} value
- {@code visualid} must be a valid {@code xcb_visualid_t} value
@@ -620,7 +631,7 @@ val XrGraphicsBindingOpenGLWaylandKHR = struct(Module.OPENXR, "XrGraphicsBinding
- The {@link KHROpenGLEnable XR_KHR_opengl_enable} extension must be enabled prior to using ##XrGraphicsBindingOpenGLWaylandKHR
- {@code type} must be #TYPE_GRAPHICS_BINDING_OPENGL_WAYLAND_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code display} must be a pointer to a {@code wl_display} value
@@ -654,7 +665,7 @@ val XrSwapchainImageOpenGLKHR = struct(Module.OPENXR, "XrSwapchainImageOpenGLKHR
- The {@link KHROpenGLEnable XR_KHR_opengl_enable} extension must be enabled prior to using ##XrSwapchainImageOpenGLKHR
- {@code type} must be #TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -678,7 +689,7 @@ val XrGraphicsRequirementsOpenGLKHR = struct(Module.OPENXR, "XrGraphicsRequireme
- The {@link KHROpenGLEnable XR_KHR_opengl_enable} extension must be enabled prior to using ##XrGraphicsRequirementsOpenGLKHR
- {@code type} must be #TYPE_GRAPHICS_REQUIREMENTS_OPENGL_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -691,6 +702,96 @@ val XrGraphicsRequirementsOpenGLKHR = struct(Module.OPENXR, "XrGraphicsRequireme
XrVersion("maxApiVersionSupported", "the maximum version of OpenGL that the runtime has been tested on and is known to support. Newer OpenGL versions might work if they are compatible. Uses #XR_MAKE_VERSION() on major and minor API version, ignoring any patch version component.")
}
+val XrGraphicsBindingOpenGLESAndroidKHR = struct(Module.OPENXR, "XrGraphicsBindingOpenGLESAndroidKHR") {
+ javaImport("org.lwjgl.egl.*")
+ documentation =
+ """
+ The graphics binding structure to be passed at session creation to use OpenGL ES on Android.
+
+ Description
+ When creating an OpenGL ES-backed {@code XrSession} on Android, the application will provide a pointer to an ##XrGraphicsBindingOpenGLESAndroidKHR structure in the {@code next} chain of the ##XrSessionCreateInfo.
+
+ The required window system configuration define to expose this structure type is #USE_PLATFORM_ANDROID.
+
+ Valid Usage (Implicit)
+
+ - The {@link KHROpenGLESEnable XR_KHR_opengl_es_enable} extension must be enabled prior to using ##XrGraphicsBindingOpenGLESAndroidKHR
+ - {@code type} must be #TYPE_GRAPHICS_BINDING_OPENGL_ES_ANDROID_KHR
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code display} must be a valid {@code EGLDisplay} value
+ - {@code config} must be a valid {@code EGLConfig} value
+ - {@code context} must be a valid {@code EGLContext} value
+
+
+ See Also
+ #CreateSession()
+ """
+
+ Expression("#TYPE_GRAPHICS_BINDING_OPENGL_ES_ANDROID_KHR")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
+ nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
+ EGLDisplay("display", "a valid Android OpenGL ES {@code EGLDisplay}.")
+ EGLConfig("config", "a valid Android OpenGL ES {@code EGLConfig}.")
+ EGLContext("context", "a valid Android OpenGL ES {@code EGLContext}.")
+}
+
+val XrSwapchainImageOpenGLESKHR = struct(Module.OPENXR, "XrSwapchainImageOpenGLESKHR", mutable = false, parentStruct = XrSwapchainImageBaseHeader) {
+ documentation =
+ """
+ OpenGL ES-specific swapchain image structure.
+
+ Description
+ If a given session was created with a stext:XrGraphicsBindingOpenGLES*KHR, the following conditions must apply.
+
+
+ - Calls to #EnumerateSwapchainImages() on an {@code XrSwapchain} in that session must return an array of ##XrSwapchainImageOpenGLESKHR structures.
+ - Whenever an OpenXR function accepts an ##XrSwapchainImageBaseHeader pointer as a parameter in that session, the runtime must also accept a pointer to an ##XrSwapchainImageOpenGLESKHR structure.
+
+
+ The OpenXR runtime must interpret the bottom-left corner of the swapchain image as the coordinate origin unless specified otherwise by extension functionality.
+
+ The OpenXR runtime must interpret the swapchain images in a clip space of positive Y pointing up, near Z plane at -1, and far Z plane at 1.
+
+ Valid Usage (Implicit)
+
+ - The {@link KHROpenGLESEnable XR_KHR_opengl_es_enable} extension must be enabled prior to using ##XrSwapchainImageOpenGLESKHR
+ - {@code type} must be #TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+
+
+ See Also
+ ##XrSwapchainImageBaseHeader
+ """
+
+ Expression("#TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
+ nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
+ uint32_t("image", "an index indicating the current OpenGL ES swapchain image to use.")
+}
+
+val XrGraphicsRequirementsOpenGLESKHR = struct(Module.OPENXR, "XrGraphicsRequirementsOpenGLESKHR") {
+ documentation =
+ """
+ OpenGL ES API version requirements.
+
+ Description
+ ##XrGraphicsRequirementsOpenGLESKHR is populated by #GetOpenGLESGraphicsRequirementsKHR() with the runtime’s OpenGL ES API version requirements.
+
+ Valid Usage (Implicit)
+
+ - The {@link KHROpenGLESEnable XR_KHR_opengl_es_enable} extension must be enabled prior to using ##XrGraphicsRequirementsOpenGLESKHR
+ - {@code type} must be #TYPE_GRAPHICS_REQUIREMENTS_OPENGL_ES_KHR
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+
+
+ See Also
+ #GetOpenGLESGraphicsRequirementsKHR()
+ """
+
+ Expression("#TYPE_GRAPHICS_REQUIREMENTS_OPENGL_ES_KHR")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
+ nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
+ XrVersion("minApiVersionSupported", "the minimum version of OpenGL ES that the runtime supports. Uses #XR_MAKE_VERSION() on major and minor API version, ignoring any patch version component.")
+ XrVersion("maxApiVersionSupported", "the maximum version of OpenGL ES that the runtime has been tested on and is known to support. Newer OpenGL ES versions might work if they are compatible. Uses #XR_MAKE_VERSION() on major and minor API version, ignoring any patch version component.")
+}
+
val XrGraphicsBindingVulkanKHR = struct(Module.OPENXR, "XrGraphicsBindingVulkanKHR") {
javaImport("org.lwjgl.vulkan.*")
documentation =
@@ -712,7 +813,7 @@ val XrGraphicsBindingVulkanKHR = struct(Module.OPENXR, "XrGraphicsBindingVulkanK
- The {@link KHRVulkanEnable XR_KHR_vulkan_enable} extension must be enabled prior to using ##XrGraphicsBindingVulkanKHR
- {@code type} must be #TYPE_GRAPHICS_BINDING_VULKAN_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code instance} must be a valid {@code VkInstance} value
- {@code physicalDevice} must be a valid {@code VkPhysicalDevice} value
- {@code device} must be a valid {@code VkDevice} value
@@ -753,7 +854,7 @@ val XrSwapchainImageVulkanKHR = struct(Module.OPENXR, "XrSwapchainImageVulkanKHR
- The {@link KHRVulkanEnable XR_KHR_vulkan_enable} extension must be enabled prior to using ##XrSwapchainImageVulkanKHR
- {@code type} must be #TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSwapchainImageFoveationVulkanFB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSwapchainImageFoveationVulkanFB
See Also
@@ -780,7 +881,7 @@ val XrGraphicsRequirementsVulkanKHR = struct(Module.OPENXR, "XrGraphicsRequireme
- The {@link KHRVulkanEnable XR_KHR_vulkan_enable} extension must be enabled prior to using ##XrGraphicsRequirementsVulkanKHR
- {@code type} must be #TYPE_GRAPHICS_REQUIREMENTS_VULKAN_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -802,7 +903,7 @@ val XrSystemEyeGazeInteractionPropertiesEXT = struct(Module.OPENXR, "XrSystemEye
- The {@link EXTEyeGazeInteraction XR_EXT_eye_gaze_interaction} extension must be enabled prior to using ##XrSystemEyeGazeInteractionPropertiesEXT
- {@code type} must be #TYPE_SYSTEM_EYE_GAZE_INTERACTION_PROPERTIES_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -820,7 +921,7 @@ val XrEyeGazeSampleTimeEXT = struct(Module.OPENXR, "XrEyeGazeSampleTimeEXT") {
- The {@link EXTEyeGazeInteraction XR_EXT_eye_gaze_interaction} extension must be enabled prior to using ##XrEyeGazeSampleTimeEXT
- {@code type} must be #TYPE_EYE_GAZE_SAMPLE_TIME_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -834,21 +935,15 @@ val XrVisibilityMaskKHR = struct(Module.OPENXR, "XrVisibilityMaskKHR") {
"""
Visibility Mask.
- Valid Usage (Implicit)
-
- - The {@link KHRVisibilityMask XR_KHR_visibility_mask} extension must be enabled prior to using ##XrVisibilityMaskKHR
- - {@code type} must be #TYPE_VISIBILITY_MASK_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - If {@code vertexCapacityInput} is not 0, {@code vertices} must be a pointer to an array of {@code vertexCapacityInput} ##XrVector2f structures
- - If {@code indexCapacityInput} is not 0, {@code indices} must be a pointer to an array of {@code indexCapacityInput} {@code uint32_t} values
-
-
See Also
- ##XrVector2f, #GetVisibilityMaskKHR()
+ {@code XR_KHR_visibility_mask}, {@code XrStructureType}, ##XrVector2f, #GetVisibilityMaskKHR()
+
+ Document Notes
+ #XrVisibilityMaskKHR
"""
- Expression("#TYPE_VISIBILITY_MASK_KHR")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
+ Expression("#TYPE_VISIBILITY_MASK_KHR")..XrStructureType("type", "must be #TYPE_VISIBILITY_MASK_KHR")
+ nullable..opaque_p("next", "must be {@code NULL} or a valid pointer to the next structure in a structure chain")
AutoSize("vertices", optional = true)..uint32_t("vertexCapacityInput", "the capacity of the {@code vertices} array, or 0 to indicate a request to retrieve the required capacity.")
uint32_t("vertexCountOutput", "filled in by the runtime with the count of vertices written or the required capacity in the case that {@code vertexCapacityInput} or {@code indexCapacityInput} is insufficient.")
nullable..XrVector2f.p("vertices", "an array of vertices filled in by the runtime that specifies mask coordinates in the z=-1 plane of the rendered view—i.e. one meter in front of the view. When rendering the mask for use in a projection layer, these vertices must be transformed by the application’s projection matrix used for the respective ##XrCompositionLayerProjectionView.")
@@ -866,7 +961,7 @@ val XrEventDataVisibilityMaskChangedKHR = struct(Module.OPENXR, "XrEventDataVisi
- The {@link KHRVisibilityMask XR_KHR_visibility_mask} extension must be enabled prior to using ##XrEventDataVisibilityMaskChangedKHR
- {@code type} must be #TYPE_EVENT_DATA_VISIBILITY_MASK_CHANGED_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -886,7 +981,7 @@ val XrSessionCreateInfoOverlayEXTX = struct(Module.OPENXR, "XrSessionCreateInfoO
- The {@link EXTXOverlay XR_EXTX_overlay} extension must be enabled prior to using ##XrSessionCreateInfoOverlayEXTX
- {@code type} must be #TYPE_SESSION_CREATE_INFO_OVERLAY_EXTX
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code createFlags} must be 0
"""
@@ -914,7 +1009,7 @@ val XrEventDataMainSessionVisibilityChangedEXTX = struct(Module.OPENXR, "XrEvent
- The {@link EXTXOverlay XR_EXTX_overlay} extension must be enabled prior to using ##XrEventDataMainSessionVisibilityChangedEXTX
- {@code type} must be #TYPE_EVENT_DATA_MAIN_SESSION_VISIBILITY_CHANGED_EXTX
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -938,7 +1033,7 @@ val XrCompositionLayerColorScaleBiasKHR = struct(Module.OPENXR, "XrCompositionLa
- The {@link KHRCompositionLayerColorScaleBias XR_KHR_composition_layer_color_scale_bias} extension must be enabled prior to using ##XrCompositionLayerColorScaleBiasKHR
- {@code type} must be #TYPE_COMPOSITION_LAYER_COLOR_SCALE_BIAS_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -960,7 +1055,7 @@ val XrSpatialAnchorCreateInfoMSFT = struct(Module.OPENXR, "XrSpatialAnchorCreate
- The {@link MSFTSpatialAnchor XR_MSFT_spatial_anchor} extension must be enabled prior to using ##XrSpatialAnchorCreateInfoMSFT
- {@code type} must be #TYPE_SPATIAL_ANCHOR_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code space} must be a valid {@code XrSpace} handle
@@ -984,7 +1079,7 @@ val XrSpatialAnchorSpaceCreateInfoMSFT = struct(Module.OPENXR, "XrSpatialAnchorS
- The {@link MSFTSpatialAnchor XR_MSFT_spatial_anchor} extension must be enabled prior to using ##XrSpatialAnchorSpaceCreateInfoMSFT
- {@code type} must be #TYPE_SPATIAL_ANCHOR_SPACE_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code anchor} must be a valid {@code XrSpatialAnchorMSFT} handle
@@ -1012,7 +1107,7 @@ val XrCompositionLayerImageLayoutFB = struct(Module.OPENXR, "XrCompositionLayerI
- The {@link FBCompositionLayerImageLayout XR_FB_composition_layer_image_layout} extension must be enabled prior to using ##XrCompositionLayerImageLayoutFB
- {@code type} must be #TYPE_COMPOSITION_LAYER_IMAGE_LAYOUT_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be 0 or a valid combination of {@code XrCompositionLayerImageLayoutFlagBitsFB} values
@@ -1039,7 +1134,7 @@ val XrCompositionLayerAlphaBlendFB = struct(Module.OPENXR, "XrCompositionLayerAl
- The {@link FBCompositionLayerAlphaBlend XR_FB_composition_layer_alpha_blend} extension must be enabled prior to using ##XrCompositionLayerAlphaBlendFB
- {@code type} must be #TYPE_COMPOSITION_LAYER_ALPHA_BLEND_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code srcFactorColor} must be a valid {@code XrBlendFactorFB} value
- {@code dstFactorColor} must be a valid {@code XrBlendFactorFB} value
- {@code srcFactorAlpha} must be a valid {@code XrBlendFactorFB} value
@@ -1070,7 +1165,7 @@ val XrViewConfigurationDepthRangeEXT = struct(Module.OPENXR, "XrViewConfiguratio
- The {@link EXTViewConfigurationDepthRange XR_EXT_view_configuration_depth_range} extension must be enabled prior to using ##XrViewConfigurationDepthRangeEXT
- {@code type} must be #TYPE_VIEW_CONFIGURATION_DEPTH_RANGE_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1100,8 +1195,8 @@ val XrGraphicsBindingEGLMNDX = struct(Module.OPENXR, "XrGraphicsBindingEGLMNDX")
- The {@link MNDXEGLEnable XR_MNDX_egl_enable} extension must be enabled prior to using ##XrGraphicsBindingEGLMNDX
- {@code type} must be #TYPE_GRAPHICS_BINDING_EGL_MNDX
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code getProcAddress} must be a valid {@code PFN_xrEglGetProcAddressMNDX} value
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code getProcAddress} must be a valid {@code PFNEGLGETPROCADDRESSPROC} value
- {@code display} must be a valid {@code EGLDisplay} value
- {@code config} must be a valid {@code EGLConfig} value
- {@code context} must be a valid {@code EGLContext} value
@@ -1113,14 +1208,13 @@ val XrGraphicsBindingEGLMNDX = struct(Module.OPENXR, "XrGraphicsBindingEGLMNDX")
Expression("#TYPE_GRAPHICS_BINDING_EGL_MNDX")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- PFN_xrEglGetProcAddressMNDX("getProcAddress", "a valid function pointer to {@code eglGetProcAddress}.")
+ PFNEGLGETPROCADDRESSPROC("getProcAddress", "a valid function pointer to {@code eglGetProcAddress}.")
EGLDisplay("display", "a valid EGL {@code EGLDisplay}.")
EGLConfig("config", "a valid EGL {@code EGLConfig}.")
EGLContext("context", "a valid EGL {@code EGLContext}.")
}
val XrSpatialGraphNodeSpaceCreateInfoMSFT = struct(Module.OPENXR, "XrSpatialGraphNodeSpaceCreateInfoMSFT") {
- javaImport("static org.lwjgl.openxr.MSFTSpatialGraphBridge.*")
documentation =
"""
The information to create space from a spatial graph node.
@@ -1129,7 +1223,7 @@ val XrSpatialGraphNodeSpaceCreateInfoMSFT = struct(Module.OPENXR, "XrSpatialGrap
- The {@link MSFTSpatialGraphBridge XR_MSFT_spatial_graph_bridge} extension must be enabled prior to using ##XrSpatialGraphNodeSpaceCreateInfoMSFT
- {@code type} must be #TYPE_SPATIAL_GRAPH_NODE_SPACE_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code nodeType} must be a valid {@code XrSpatialGraphNodeTypeMSFT} value
@@ -1140,7 +1234,7 @@ val XrSpatialGraphNodeSpaceCreateInfoMSFT = struct(Module.OPENXR, "XrSpatialGrap
Expression("#TYPE_SPATIAL_GRAPH_NODE_SPACE_CREATE_INFO_MSFT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrSpatialGraphNodeTypeMSFT("nodeType", "an {@code XrSpatialGraphNodeTypeMSFT} specifying the spatial node type.")
- uint8_t("nodeId", "a global unique identifier (a.k.a. GUID or 16 byte array), representing the spatial node that is being tracked.")["XR_GUID_SIZE_MSFT"]
+ uint8_t("nodeId", "a global unique identifier (a.k.a. GUID or 16 byte array), representing the spatial node that is being tracked.")[XR_GUID_SIZE_MSFT]
XrPosef("pose", "an ##XrPosef defining the position and orientation of the new space’s origin within the natural reference frame of the spatial graph node.")
}
@@ -1153,7 +1247,7 @@ val XrSpatialGraphStaticNodeBindingCreateInfoMSFT = struct(Module.OPENXR, "XrSpa
- The {@link MSFTSpatialGraphBridge XR_MSFT_spatial_graph_bridge} extension must be enabled prior to using ##XrSpatialGraphStaticNodeBindingCreateInfoMSFT
- {@code type} must be #TYPE_SPATIAL_GRAPH_STATIC_NODE_BINDING_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code space} must be a valid {@code XrSpace} handle
@@ -1177,7 +1271,7 @@ val XrSpatialGraphNodeBindingPropertiesGetInfoMSFT = struct(Module.OPENXR, "XrSp
- The {@link MSFTSpatialGraphBridge XR_MSFT_spatial_graph_bridge} extension must be enabled prior to using ##XrSpatialGraphNodeBindingPropertiesGetInfoMSFT
- {@code type} must be #TYPE_SPATIAL_GRAPH_NODE_BINDING_PROPERTIES_GET_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1189,7 +1283,6 @@ val XrSpatialGraphNodeBindingPropertiesGetInfoMSFT = struct(Module.OPENXR, "XrSp
}
val XrSpatialGraphNodeBindingPropertiesMSFT = struct(Module.OPENXR, "XrSpatialGraphNodeBindingPropertiesMSFT") {
- javaImport("static org.lwjgl.openxr.MSFTSpatialGraphBridge.*")
documentation =
"""
The spatial graph node binding properties.
@@ -1198,7 +1291,7 @@ val XrSpatialGraphNodeBindingPropertiesMSFT = struct(Module.OPENXR, "XrSpatialGr
- The {@link MSFTSpatialGraphBridge XR_MSFT_spatial_graph_bridge} extension must be enabled prior to using ##XrSpatialGraphNodeBindingPropertiesMSFT
- {@code type} must be #TYPE_SPATIAL_GRAPH_NODE_BINDING_PROPERTIES_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1207,7 +1300,7 @@ val XrSpatialGraphNodeBindingPropertiesMSFT = struct(Module.OPENXR, "XrSpatialGr
Expression("#TYPE_SPATIAL_GRAPH_NODE_BINDING_PROPERTIES_MSFT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- uint8_t("nodeId", "a global unique identifier (a.k.a. GUID or 16 byte array), representing the spatial graph node.")["XR_GUID_SIZE_MSFT"]
+ uint8_t("nodeId", "a global unique identifier (a.k.a. GUID or 16 byte array), representing the spatial graph node.")[XR_GUID_SIZE_MSFT]
XrPosef("poseInNodeSpace", "an ##XrPosef defining the pose in the underlying node’s space.")
}
@@ -1220,7 +1313,7 @@ val XrSystemHandTrackingPropertiesEXT = struct(Module.OPENXR, "XrSystemHandTrack
- The {@link EXTHandTracking XR_EXT_hand_tracking} extension must be enabled prior to using ##XrSystemHandTrackingPropertiesEXT
- {@code type} must be #TYPE_SYSTEM_HAND_TRACKING_PROPERTIES_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
If a runtime returns #FALSE for {@code supportsHandTracking}, the runtime must return #ERROR_FEATURE_UNSUPPORTED from #CreateHandTrackerEXT().
@@ -1240,7 +1333,7 @@ val XrHandTrackerCreateInfoEXT = struct(Module.OPENXR, "XrHandTrackerCreateInfoE
- The {@link EXTHandTracking XR_EXT_hand_tracking} extension must be enabled prior to using ##XrHandTrackerCreateInfoEXT
- {@code type} must be #TYPE_HAND_TRACKER_CREATE_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrHandPoseTypeInfoMSFT, ##XrHandTrackingDataSourceInfoEXT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrHandPoseTypeInfoMSFT
- {@code hand} must be a valid {@code XrHandEXT} value
- {@code handJointSet} must be a valid {@code XrHandJointSetEXT} value
@@ -1251,7 +1344,7 @@ val XrHandTrackerCreateInfoEXT = struct(Module.OPENXR, "XrHandTrackerCreateInfoE
Expression("#TYPE_HAND_TRACKER_CREATE_INFO_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
PointerSetter(
- "XrHandPoseTypeInfoMSFT", "XrHandTrackingDataSourceInfoEXT",
+ "XrHandPoseTypeInfoMSFT",
prepend = true
)..nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrHandEXT("hand", "an {@code XrHandEXT} which describes which hand the tracker is tracking.")
@@ -1267,7 +1360,7 @@ val XrHandJointsLocateInfoEXT = struct(Module.OPENXR, "XrHandJointsLocateInfoEXT
- The {@link EXTHandTracking XR_EXT_hand_tracking} extension must be enabled prior to using ##XrHandJointsLocateInfoEXT
- {@code type} must be #TYPE_HAND_JOINTS_LOCATE_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrHandJointsMotionRangeInfoEXT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrHandJointsMotionRangeInfoEXT
- {@code baseSpace} must be a valid {@code XrSpace} handle
@@ -1352,7 +1445,7 @@ val XrHandJointLocationsEXT = struct(Module.OPENXR, "XrHandJointLocationsEXT") {
- The {@link EXTHandTracking XR_EXT_hand_tracking} extension must be enabled prior to using ##XrHandJointLocationsEXT
- {@code type} must be #TYPE_HAND_JOINT_LOCATIONS_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrHandJointVelocitiesEXT, ##XrHandTrackingAimStateFB, ##XrHandTrackingCapsulesStateFB, ##XrHandTrackingDataSourceStateEXT, ##XrHandTrackingScaleFB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrHandJointVelocitiesEXT, ##XrHandTrackingAimStateFB, ##XrHandTrackingCapsulesStateFB, ##XrHandTrackingScaleFB
- {@code jointLocations} must be a pointer to an array of {@code jointCount} ##XrHandJointLocationEXT structures
- The {@code jointCount} parameter must be greater than 0
@@ -1363,7 +1456,7 @@ val XrHandJointLocationsEXT = struct(Module.OPENXR, "XrHandJointLocationsEXT") {
Expression("#TYPE_HAND_JOINT_LOCATIONS_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
PointerSetter(
- "XrHandJointVelocitiesEXT", "XrHandTrackingAimStateFB", "XrHandTrackingCapsulesStateFB", "XrHandTrackingDataSourceStateEXT", "XrHandTrackingScaleFB",
+ "XrHandJointVelocitiesEXT", "XrHandTrackingAimStateFB", "XrHandTrackingCapsulesStateFB", "XrHandTrackingScaleFB",
prepend = true
)..nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain, such as ##XrHandJointVelocitiesEXT.")
XrBool32("isActive", "an {@code XrBool32} indicating if the hand tracker is actively tracking.")
@@ -1391,7 +1484,7 @@ val XrHandJointVelocitiesEXT = struct(Module.OPENXR, "XrHandJointVelocitiesEXT")
- The {@link EXTHandTracking XR_EXT_hand_tracking} extension must be enabled prior to using ##XrHandJointVelocitiesEXT
- {@code type} must be #TYPE_HAND_JOINT_VELOCITIES_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code jointVelocities} must be a pointer to an array of {@code jointCount} ##XrHandJointVelocityEXT structures
- The {@code jointCount} parameter must be greater than 0
@@ -1420,7 +1513,7 @@ val XrSystemHandTrackingMeshPropertiesMSFT = struct(Module.OPENXR, "XrSystemHand
- The {@link MSFTHandTrackingMesh XR_MSFT_hand_tracking_mesh} extension must be enabled prior to using ##XrSystemHandTrackingMeshPropertiesMSFT
- {@code type} must be #TYPE_SYSTEM_HAND_TRACKING_MESH_PROPERTIES_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1443,7 +1536,7 @@ val XrHandMeshSpaceCreateInfoMSFT = struct(Module.OPENXR, "XrHandMeshSpaceCreate
- The {@link MSFTHandTrackingMesh XR_MSFT_hand_tracking_mesh} extension must be enabled prior to using ##XrHandMeshSpaceCreateInfoMSFT
- {@code type} must be #TYPE_HAND_MESH_SPACE_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code handPoseType} must be a valid {@code XrHandPoseTypeMSFT} value
@@ -1471,7 +1564,7 @@ val XrHandMeshUpdateInfoMSFT = struct(Module.OPENXR, "XrHandMeshUpdateInfoMSFT")
- The {@link MSFTHandTrackingMesh XR_MSFT_hand_tracking_mesh} extension must be enabled prior to using ##XrHandMeshUpdateInfoMSFT
- {@code type} must be #TYPE_HAND_MESH_UPDATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code handPoseType} must be a valid {@code XrHandPoseTypeMSFT} value
@@ -1595,7 +1688,7 @@ val XrHandMeshMSFT = struct(Module.OPENXR, "XrHandMeshMSFT") {
- The {@link MSFTHandTrackingMesh XR_MSFT_hand_tracking_mesh} extension must be enabled prior to using ##XrHandMeshMSFT
- {@code type} must be #TYPE_HAND_MESH_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code indexBuffer} must be a valid ##XrHandMeshIndexBufferMSFT structure
- {@code vertexBuffer} must be a valid ##XrHandMeshVertexBufferMSFT structure
@@ -1622,7 +1715,7 @@ val XrHandPoseTypeInfoMSFT = struct(Module.OPENXR, "XrHandPoseTypeInfoMSFT") {
- The {@link MSFTHandTrackingMesh XR_MSFT_hand_tracking_mesh} extension must be enabled prior to using ##XrHandPoseTypeInfoMSFT
- {@code type} must be #TYPE_HAND_POSE_TYPE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code handPoseType} must be a valid {@code XrHandPoseTypeMSFT} value
@@ -1651,7 +1744,7 @@ val XrSecondaryViewConfigurationSessionBeginInfoMSFT = struct(Module.OPENXR, "Xr
- The {@link MSFTSecondaryViewConfiguration XR_MSFT_secondary_view_configuration} extension must be enabled prior to using ##XrSecondaryViewConfigurationSessionBeginInfoMSFT
- {@code type} must be #TYPE_SECONDARY_VIEW_CONFIGURATION_SESSION_BEGIN_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code enabledViewConfigurationTypes} must be a pointer to an array of {@code viewConfigurationCount} valid {@code XrViewConfigurationType} values
- The {@code viewConfigurationCount} parameter must be greater than 0
@@ -1682,7 +1775,7 @@ val XrSecondaryViewConfigurationStateMSFT = struct(Module.OPENXR, "XrSecondaryVi
- The {@link MSFTSecondaryViewConfiguration XR_MSFT_secondary_view_configuration} extension must be enabled prior to using ##XrSecondaryViewConfigurationStateMSFT
- {@code type} must be #TYPE_SECONDARY_VIEW_CONFIGURATION_STATE_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code viewConfigurationType} must be a valid {@code XrViewConfigurationType} value
@@ -1708,7 +1801,7 @@ val XrSecondaryViewConfigurationFrameStateMSFT = struct(Module.OPENXR, "XrSecond
- The {@link MSFTSecondaryViewConfiguration XR_MSFT_secondary_view_configuration} extension must be enabled prior to using ##XrSecondaryViewConfigurationFrameStateMSFT
- {@code type} must be #TYPE_SECONDARY_VIEW_CONFIGURATION_FRAME_STATE_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code viewConfigurationStates} must be a pointer to an array of {@code viewConfigurationCount} ##XrSecondaryViewConfigurationStateMSFT structures
- The {@code viewConfigurationCount} parameter must be greater than 0
@@ -1741,7 +1834,7 @@ val XrSecondaryViewConfigurationLayerInfoMSFT = struct(Module.OPENXR, "XrSeconda
- The {@link MSFTSecondaryViewConfiguration XR_MSFT_secondary_view_configuration} extension must be enabled prior to using ##XrSecondaryViewConfigurationLayerInfoMSFT
- {@code type} must be #TYPE_SECONDARY_VIEW_CONFIGURATION_LAYER_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code viewConfigurationType} must be a valid {@code XrViewConfigurationType} value
- {@code environmentBlendMode} must be a valid {@code XrEnvironmentBlendMode} value
- {@code layers} must be a pointer to an array of {@code layerCount} valid ##XrCompositionLayerBaseHeader-based structures. See also: ##XrCompositionLayerCubeKHR, ##XrCompositionLayerCylinderKHR, ##XrCompositionLayerEquirect2KHR, ##XrCompositionLayerEquirectKHR, ##XrCompositionLayerPassthroughHTC, ##XrCompositionLayerProjection, ##XrCompositionLayerQuad
@@ -1755,7 +1848,7 @@ val XrSecondaryViewConfigurationLayerInfoMSFT = struct(Module.OPENXR, "XrSeconda
Expression("#TYPE_SECONDARY_VIEW_CONFIGURATION_LAYER_INFO_MSFT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrViewConfigurationType("viewConfigurationType", "{@code XrViewConfigurationType} to which the composition layers will be displayed.")
- XrEnvironmentBlendMode("environmentBlendMode", "the {@code XrEnvironmentBlendMode} value representing the desired environment blend mode for this view configuration.")
+ XrEnvironmentBlendMode("environmentBlendMode", "the {@code XrEnvironmentBlendMode} value representing the desired environment blend mode for this view configuration.")
AutoSize("layers")..uint32_t("layerCount", "the number of composition layers in this frame for the secondary view configuration type. The maximum supported layer count is identified by ##XrSystemGraphicsProperties::maxLayerCount. If layerCount is greater than the maximum supported layer count then #ERROR_LAYER_LIMIT_EXCEEDED is returned.")
XrCompositionLayerBaseHeader.const.p.const.p("layers", "a pointer to an array of ##XrCompositionLayerBaseHeader pointers.")
}
@@ -1776,7 +1869,7 @@ val XrSecondaryViewConfigurationFrameEndInfoMSFT = struct(Module.OPENXR, "XrSeco
- The {@link MSFTSecondaryViewConfiguration XR_MSFT_secondary_view_configuration} extension must be enabled prior to using ##XrSecondaryViewConfigurationFrameEndInfoMSFT
- {@code type} must be #TYPE_SECONDARY_VIEW_CONFIGURATION_FRAME_END_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code viewConfigurationLayersInfo} must be a pointer to an array of {@code viewConfigurationCount} valid ##XrSecondaryViewConfigurationLayerInfoMSFT structures
- The {@code viewConfigurationCount} parameter must be greater than 0
@@ -1805,7 +1898,7 @@ val XrSecondaryViewConfigurationSwapchainCreateInfoMSFT = struct(Module.OPENXR,
- The {@link MSFTSecondaryViewConfiguration XR_MSFT_secondary_view_configuration} extension must be enabled prior to using ##XrSecondaryViewConfigurationSwapchainCreateInfoMSFT
- {@code type} must be #TYPE_SECONDARY_VIEW_CONFIGURATION_SWAPCHAIN_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code viewConfigurationType} must be a valid {@code XrViewConfigurationType} value
@@ -1828,13 +1921,11 @@ val XrControllerModelKeyStateMSFT = struct(Module.OPENXR, "XrControllerModelKeyS
A {@code modelKey} value of #NULL_CONTROLLER_MODEL_KEY_MSFT, represents an invalid model key and indicates there is no controller model yet available. The application should keep calling #GetControllerModelKeyMSFT() because the model may become available at a later point.
- The returned {@code modelKey} value depends on an active action binding to the corresponding subpathname:/grip/pose of the controller. Therefore, the application must have provided a valid action set containing an action for subpathname:/grip/pose, and have successfully completed an #SyncActions() call, in order to obtain a valid {@code modelKey}.
-
Valid Usage (Implicit)
- The {@link MSFTControllerModel XR_MSFT_controller_model} extension must be enabled prior to using ##XrControllerModelKeyStateMSFT
- {@code type} must be #TYPE_CONTROLLER_MODEL_KEY_STATE_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1847,7 +1938,6 @@ val XrControllerModelKeyStateMSFT = struct(Module.OPENXR, "XrControllerModelKeyS
}
val XrControllerModelNodePropertiesMSFT = struct(Module.OPENXR, "XrControllerModelNodePropertiesMSFT") {
- javaImport("static org.lwjgl.openxr.MSFTControllerModel.*")
documentation =
"""
Describes the controller model node properties.
@@ -1863,9 +1953,9 @@ val XrControllerModelNodePropertiesMSFT = struct(Module.OPENXR, "XrControllerMod
- The {@link MSFTControllerModel XR_MSFT_controller_model} extension must be enabled prior to using ##XrControllerModelNodePropertiesMSFT
- {@code type} must be #TYPE_CONTROLLER_MODEL_NODE_PROPERTIES_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code parentNodeName} must be a null-terminated UTF-8 string whose length is less than or equal to #MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT
- - {@code nodeName} must be a null-terminated UTF-8 string whose length is less than or equal to #MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code parentNodeName} must be a null-terminated UTF-8 string whose length is less than or equal to XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT
+ - {@code nodeName} must be a null-terminated UTF-8 string whose length is less than or equal to XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT
See Also
@@ -1874,8 +1964,8 @@ val XrControllerModelNodePropertiesMSFT = struct(Module.OPENXR, "XrControllerMod
Expression("#TYPE_CONTROLLER_MODEL_NODE_PROPERTIES_MSFT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- charUTF8("parentNodeName", "the name of the parent node in the provided glTF file. The parent name may be empty if it should not be used to locate this node.")["XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT"]
- charUTF8("nodeName", "the name of this node in the provided glTF file.")["XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT"]
+ charUTF8("parentNodeName", "the name of the parent node in the provided glTF file. The parent name may be empty if it should not be used to locate this node.")[XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT]
+ charUTF8("nodeName", "the name of this node in the provided glTF file.")[XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT]
}
val XrControllerModelPropertiesMSFT = struct(Module.OPENXR, "XrControllerModelPropertiesMSFT") {
@@ -1887,7 +1977,7 @@ val XrControllerModelPropertiesMSFT = struct(Module.OPENXR, "XrControllerModelPr
- The {@link MSFTControllerModel XR_MSFT_controller_model} extension must be enabled prior to using ##XrControllerModelPropertiesMSFT
- {@code type} must be #TYPE_CONTROLLER_MODEL_PROPERTIES_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code nodeCapacityInput} is not 0, {@code nodeProperties} must be a pointer to an array of {@code nodeCapacityInput} ##XrControllerModelNodePropertiesMSFT structures
@@ -1916,7 +2006,7 @@ val XrControllerModelNodeStateMSFT = struct(Module.OPENXR, "XrControllerModelNod
- The {@link MSFTControllerModel XR_MSFT_controller_model} extension must be enabled prior to using ##XrControllerModelNodeStateMSFT
- {@code type} must be #TYPE_CONTROLLER_MODEL_NODE_STATE_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1937,7 +2027,7 @@ val XrControllerModelStateMSFT = struct(Module.OPENXR, "XrControllerModelStateMS
- The {@link MSFTControllerModel XR_MSFT_controller_model} extension must be enabled prior to using ##XrControllerModelStateMSFT
- {@code type} must be #TYPE_CONTROLLER_MODEL_STATE_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code nodeCapacityInput} is not 0, {@code nodeStates} must be a pointer to an array of {@code nodeCapacityInput} ##XrControllerModelNodeStateMSFT structures
@@ -1961,7 +2051,7 @@ val XrViewConfigurationViewFovEPIC = struct(Module.OPENXR, "XrViewConfigurationV
- The {@link EPICViewConfigurationFov XR_EPIC_view_configuration_fov} extension must be enabled prior to using ##XrViewConfigurationViewFovEPIC
- {@code type} must be #TYPE_VIEW_CONFIGURATION_VIEW_FOV_EPIC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1990,7 +2080,7 @@ val XrHolographicWindowAttachmentMSFT = struct(Module.OPENXR, "XrHolographicWind
- The {@link MSFTHolographicWindowAttachment XR_MSFT_holographic_window_attachment} extension must be enabled prior to using ##XrHolographicWindowAttachmentMSFT
- {@code type} must be #TYPE_HOLOGRAPHIC_WINDOW_ATTACHMENT_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code holographicSpace} must be a pointer to an {@code IUnknown} value
- {@code coreWindow} must be a pointer to an {@code IUnknown} value
@@ -2014,7 +2104,7 @@ val XrCompositionLayerReprojectionInfoMSFT = struct(Module.OPENXR, "XrCompositio
- The {@link MSFTCompositionLayerReprojection XR_MSFT_composition_layer_reprojection} extension must be enabled prior to using ##XrCompositionLayerReprojectionInfoMSFT
- {@code type} must be #TYPE_COMPOSITION_LAYER_REPROJECTION_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code reprojectionMode} must be a valid {@code XrReprojectionModeMSFT} value
@@ -2036,26 +2126,15 @@ val XrCompositionLayerReprojectionPlaneOverrideMSFT = struct(Module.OPENXR, "XrC
"""
Describe the parameters to override the reprojection plane.
- Description
- A runtime must return #ERROR_VALIDATION_FAILURE if the {@code normal} vector deviates by more than 1% from unit length.
-
- Adding a reprojection plane override may benefit various reprojection modes including #REPROJECTION_MODE_DEPTH_MSFT, #REPROJECTION_MODE_PLANAR_FROM_DEPTH_MSFT and #REPROJECTION_MODE_PLANAR_MANUAL_MSFT.
-
- When application choose #REPROJECTION_MODE_ORIENTATION_ONLY_MSFT mode, the reprojection plane override may be ignored by the runtime.
-
- Valid Usage (Implicit)
-
- - The {@link MSFTCompositionLayerReprojection XR_MSFT_composition_layer_reprojection} extension must be enabled prior to using ##XrCompositionLayerReprojectionPlaneOverrideMSFT
- - {@code type} must be #TYPE_COMPOSITION_LAYER_REPROJECTION_PLANE_OVERRIDE_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
-
-
See Also
- ##XrVector3f
+ {@code XR_MSFT_composition_layer_reprojection}, {@code XrStructureType}, ##XrVector3f
+
+ Document Notes
+ #XrCompositionLayerReprojectionPlaneOverrideMSFT
"""
- Expression("#TYPE_COMPOSITION_LAYER_REPROJECTION_PLANE_OVERRIDE_MSFT")..XrStructureType("type", "")
- nullable..opaque_const_p("next", "")
+ Expression("#TYPE_COMPOSITION_LAYER_REPROJECTION_PLANE_OVERRIDE_MSFT")..XrStructureType("type", "must be #TYPE_COMPOSITION_LAYER_REPROJECTION_PLANE_OVERRIDE_MSFT")
+ nullable..opaque_const_p("next", "must be {@code NULL} or a valid pointer to the next structure in a structure chain")
XrVector3f("position", "describes the position of the focus plane represented in the corresponding ##XrCompositionLayerProjection{@code ::space}.")
XrVector3f("normal", "a unit vector describes the focus plane normal represented in the corresponding ##XrCompositionLayerProjection{@code ::space}.")
XrVector3f("velocity", "a velocity of the position in the corresponding ##XrCompositionLayerProjection{@code ::space} measured in meters per second.")
@@ -2072,8 +2151,8 @@ val XrSwapchainStateBaseHeaderFB = struct(Module.OPENXR, "XrSwapchainStateBaseHe
Valid Usage (Implicit)
- The {@link FBSwapchainUpdateState XR_FB_swapchain_update_state} extension must be enabled prior to using ##XrSwapchainStateBaseHeaderFB
- - {@code type} must be one of the following XrStructureType values: #TYPE_SWAPCHAIN_STATE_FOVEATION_FB, #TYPE_SWAPCHAIN_STATE_SAMPLER_OPENGL_ES_FB, #TYPE_SWAPCHAIN_STATE_SAMPLER_VULKAN_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code type} must be one of the following XrStructureType values: #TYPE_SWAPCHAIN_STATE_ANDROID_SURFACE_DIMENSIONS_FB, #TYPE_SWAPCHAIN_STATE_FOVEATION_FB, #TYPE_SWAPCHAIN_STATE_SAMPLER_OPENGL_ES_FB, #TYPE_SWAPCHAIN_STATE_SAMPLER_VULKAN_FB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -2100,7 +2179,7 @@ val XrCompositionLayerSecureContentFB = struct(Module.OPENXR, "XrCompositionLaye
- The {@link FBCompositionLayerSecureContent XR_FB_composition_layer_secure_content} extension must be enabled prior to using ##XrCompositionLayerSecureContentFB
- {@code type} must be #TYPE_COMPOSITION_LAYER_SECURE_CONTENT_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be a valid combination of {@code XrCompositionLayerSecureContentFlagBitsFB} values
- {@code flags} must not be 0
@@ -2146,7 +2225,7 @@ val XrSystemBodyTrackingPropertiesFB = struct(Module.OPENXR, "XrSystemBodyTracki
- The {@link FBBodyTracking XR_FB_body_tracking} extension must be enabled prior to using ##XrSystemBodyTrackingPropertiesFB
- {@code type} must be #TYPE_SYSTEM_BODY_TRACKING_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -2164,7 +2243,7 @@ val XrBodyTrackerCreateInfoFB = struct(Module.OPENXR, "XrBodyTrackerCreateInfoFB
- The {@link FBBodyTracking XR_FB_body_tracking} extension must be enabled prior to using ##XrBodyTrackerCreateInfoFB
- {@code type} must be #TYPE_BODY_TRACKER_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code bodyJointSet} must be a valid {@code XrBodyJointSetFB} value
@@ -2210,7 +2289,7 @@ val XrBodySkeletonFB = struct(Module.OPENXR, "XrBodySkeletonFB") {
- The {@link FBBodyTracking XR_FB_body_tracking} extension must be enabled prior to using ##XrBodySkeletonFB
- {@code type} must be #TYPE_BODY_SKELETON_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code joints} must be a pointer to an array of {@code jointCount} ##XrBodySkeletonJointFB structures
- The {@code jointCount} parameter must be greater than 0
@@ -2237,7 +2316,7 @@ val XrBodyJointsLocateInfoFB = struct(Module.OPENXR, "XrBodyJointsLocateInfoFB")
- The {@link FBBodyTracking XR_FB_body_tracking} extension must be enabled prior to using ##XrBodyJointsLocateInfoFB
- {@code type} must be #TYPE_BODY_JOINTS_LOCATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code baseSpace} must be a valid {@code XrSpace} handle
@@ -2271,7 +2350,7 @@ val XrBodyJointLocationsFB = struct(Module.OPENXR, "XrBodyJointLocationsFB") {
- The {@link FBBodyTracking XR_FB_body_tracking} extension must be enabled prior to using ##XrBodyJointLocationsFB
- {@code type} must be #TYPE_BODY_JOINT_LOCATIONS_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code jointLocations} must be a pointer to an array of {@code jointCount} ##XrBodyJointLocationFB structures
- The {@code jointCount} parameter must be greater than 0
@@ -2297,7 +2376,7 @@ val XrInteractionProfileDpadBindingEXT = struct(Module.OPENXR, "XrInteractionPro
Interaction profile dpad binding.
Description
- The ##XrInteractionProfileDpadBindingEXT structure is an input struct that defines how to use any two-axis input to provide dpad-like functionality to the application. The struct must be added for each input that should be treated as a dpad to the {@code bindingModifications} array of the ##XrBindingModificationsKHR structure (See {@link KHRBindingModification XR_KHR_binding_modification} extension).
+ The ##XrInteractionProfileDpadBindingEXT structure is an input struct that defines how to use any two-axis input to provide dpad-like functionality to the application. The struct must be added for each input that should be treated as a dpad to the {@code bindingModifications} array of the ##XrBindingModificationsKHR structure (See XR_KHR_binding_modification extension).
Runtimes are free to ignore any of the fields when not obeying the bindings, but may use it for automatic rebindings of actions.
@@ -2310,7 +2389,7 @@ val XrInteractionProfileDpadBindingEXT = struct(Module.OPENXR, "XrInteractionPro
- {@code wedgeAngle} outside the half-open range
[0, π)
- If more than one ##XrInteractionProfileDpadBindingEXT is provided for the same input identifier, including top level path (e.g. pathname:/user/hand/left/input/thumbstick), and two or more of them specify the same actionset, the runtime must return #ERROR_VALIDATION_FAILURE. If the same input identifier, including top level path, is used for more than one action set, in addition to inputs being suppressed by higher priority action sets, haptic events from dpads are also suppressed.
+ If more than one ##XrInteractionProfileDpadBindingEXT is provided for the same input identifier, including top level path (e.g. pathname:/user/hand/left/input/thumbstick), and two or more of them specify the same actionset, the runtime must return #ERROR_VALIDATION_FAILURE. If the same input identifier, including top level path, is used for more than one action set, in addition to inputs being suppressed by higher priority action sets, haptic events from dpads are also suppressed.
For example, a Valve Index controller binding with a "Walking" action set can have a dpad on each of:
@@ -2327,7 +2406,7 @@ val XrInteractionProfileDpadBindingEXT = struct(Module.OPENXR, "XrInteractionPro
- The {@link EXTDpadBinding XR_EXT_dpad_binding} extension must be enabled prior to using ##XrInteractionProfileDpadBindingEXT
- {@code type} must be #TYPE_INTERACTION_PROFILE_DPAD_BINDING_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code actionSet} must be a valid {@code XrActionSet} handle
- If {@code onHaptic} is not {@code NULL}, {@code onHaptic} must be a pointer to a valid ##XrHapticBaseHeader-based structure. See also: ##XrHapticAmplitudeEnvelopeVibrationFB, ##XrHapticPcmVibrationFB, ##XrHapticVibration
- If {@code offHaptic} is not {@code NULL}, {@code offHaptic} must be a pointer to a valid ##XrHapticBaseHeader-based structure. See also: ##XrHapticAmplitudeEnvelopeVibrationFB, ##XrHapticPcmVibrationFB, ##XrHapticVibration
@@ -2370,7 +2449,7 @@ val XrInteractionProfileAnalogThresholdVALVE = struct(Module.OPENXR, "XrInteract
- The {@link VALVEAnalogThreshold XR_VALVE_analog_threshold} extension must be enabled prior to using ##XrInteractionProfileAnalogThresholdVALVE
- {@code type} must be #TYPE_INTERACTION_PROFILE_ANALOG_THRESHOLD_VALVE
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code action} must be a valid {@code XrAction} handle
- If {@code onHaptic} is not {@code NULL}, {@code onHaptic} must be a pointer to a valid ##XrHapticBaseHeader-based structure. See also: ##XrHapticAmplitudeEnvelopeVibrationFB, ##XrHapticPcmVibrationFB, ##XrHapticVibration
- If {@code offHaptic} is not {@code NULL}, {@code offHaptic} must be a pointer to a valid ##XrHapticBaseHeader-based structure. See also: ##XrHapticAmplitudeEnvelopeVibrationFB, ##XrHapticPcmVibrationFB, ##XrHapticVibration
@@ -2399,7 +2478,7 @@ val XrHandJointsMotionRangeInfoEXT = struct(Module.OPENXR, "XrHandJointsMotionRa
- The {@link EXTHandJointsMotionRange XR_EXT_hand_joints_motion_range} extension must be enabled prior to using ##XrHandJointsMotionRangeInfoEXT
- {@code type} must be #TYPE_HAND_JOINTS_MOTION_RANGE_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code handJointsMotionRange} must be a valid {@code XrHandJointsMotionRangeEXT} value
@@ -2420,7 +2499,8 @@ val XrLoaderInitInfoBaseHeaderKHR = struct(Module.OPENXR, "XrLoaderInitInfoBaseH
Valid Usage (Implicit)
- The {@link KHRLoaderInit XR_KHR_loader_init} extension must be enabled prior to using ##XrLoaderInitInfoBaseHeaderKHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code type} must be #TYPE_LOADER_INIT_INFO_ANDROID_KHR
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -2431,6 +2511,30 @@ val XrLoaderInitInfoBaseHeaderKHR = struct(Module.OPENXR, "XrLoaderInitInfoBaseH
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
}
+val XrLoaderInitInfoAndroidKHR = struct(Module.OPENXR, "XrLoaderInitInfoAndroidKHR", parentStruct = XrLoaderInitInfoBaseHeaderKHR) {
+ documentation =
+ """
+ Initializes OpenXR loader on Android.
+
+ Valid Usage (Implicit)
+
+ - The {@link KHRLoaderInitAndroid XR_KHR_loader_init_android} extension must be enabled prior to using ##XrLoaderInitInfoAndroidKHR
+ - {@code type} must be #TYPE_LOADER_INIT_INFO_ANDROID_KHR
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code applicationVM} must be a pointer value
+ - {@code applicationContext} must be a pointer value
+
+
+ See Also
+ #InitializeLoaderKHR()
+ """
+
+ Expression("#TYPE_LOADER_INIT_INFO_ANDROID_KHR")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
+ nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
+ opaque_p("applicationVM", "a pointer to the JNI’s opaque {@code JavaVM} structure, cast to a void pointer.")
+ opaque_p("applicationContext", "a JNI reference to an {@code android.content.Context} associated with the application, cast to a void pointer.")
+}
+
val XrVulkanInstanceCreateInfoKHR = struct(Module.OPENXR, "XrVulkanInstanceCreateInfoKHR") {
javaImport("org.lwjgl.vulkan.*")
documentation =
@@ -2441,7 +2545,7 @@ val XrVulkanInstanceCreateInfoKHR = struct(Module.OPENXR, "XrVulkanInstanceCreat
- The {@link KHRVulkanEnable2 XR_KHR_vulkan_enable2} extension must be enabled prior to using ##XrVulkanInstanceCreateInfoKHR
- {@code type} must be #TYPE_VULKAN_INSTANCE_CREATE_INFO_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code createFlags} must be 0
- {@code pfnGetInstanceProcAddr} must be a valid {@code PFN_vkGetInstanceProcAddr} value
- {@code vulkanCreateInfo} must be a pointer to a valid {@code VkInstanceCreateInfo} value
@@ -2457,8 +2561,8 @@ val XrVulkanInstanceCreateInfoKHR = struct(Module.OPENXR, "XrVulkanInstanceCreat
XrSystemId("systemId", "an {@code XrSystemId} handle for the system which will be used to create a session.")
XrVulkanInstanceCreateFlagsKHR("createFlags", "a bitmask of {@code XrVulkanInstanceCreateFlagBitsKHR}")
PFN_vkGetInstanceProcAddr("pfnGetInstanceProcAddr", "a function pointer to {@code vkGetInstanceProcAddr} or a compatible entry point.")
- VkInstanceCreateInfo.const.p("vulkanCreateInfo", "the {@code VkInstanceCreateInfo} as specified by Vulkan.")
- nullable..VkAllocationCallbacks.const.p("vulkanAllocator", "the {@code VkAllocationCallbacks} as specified by Vulkan.")
+ VkInstanceCreateInfo.const.p("vulkanCreateInfo", "the {@code VkInstanceCreateInfo} as specified by Vulkan.")
+ nullable..VkAllocationCallbacks.const.p("vulkanAllocator", "the {@code VkAllocationCallbacks} as specified by Vulkan.")
}
val XrVulkanDeviceCreateInfoKHR = struct(Module.OPENXR, "XrVulkanDeviceCreateInfoKHR") {
@@ -2474,7 +2578,7 @@ val XrVulkanDeviceCreateInfoKHR = struct(Module.OPENXR, "XrVulkanDeviceCreateInf
- The {@link KHRVulkanEnable2 XR_KHR_vulkan_enable2} extension must be enabled prior to using ##XrVulkanDeviceCreateInfoKHR
- {@code type} must be #TYPE_VULKAN_DEVICE_CREATE_INFO_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code createFlags} must be 0
- {@code pfnGetInstanceProcAddr} must be a valid {@code PFN_vkGetInstanceProcAddr} value
- {@code vulkanPhysicalDevice} must be a valid {@code VkPhysicalDevice} value
@@ -2492,8 +2596,8 @@ val XrVulkanDeviceCreateInfoKHR = struct(Module.OPENXR, "XrVulkanDeviceCreateInf
XrVulkanDeviceCreateFlagsKHR("createFlags", "a bitmask of {@code XrVulkanDeviceCreateFlagBitsKHR}")
PFN_vkGetInstanceProcAddr("pfnGetInstanceProcAddr", "a function pointer to {@code vkGetInstanceProcAddr} or a compatible entry point.")
VkPhysicalDevice("vulkanPhysicalDevice", "must match #GetVulkanGraphicsDeviceKHR().")
- VkDeviceCreateInfo.const.p("vulkanCreateInfo", "the {@code VkDeviceCreateInfo} as specified by Vulkan.")
- nullable..VkAllocationCallbacks.const.p("vulkanAllocator", "the {@code VkAllocationCallbacks} as specified by Vulkan.")
+ VkDeviceCreateInfo.const.p("vulkanCreateInfo", "the {@code VkDeviceCreateInfo} as specified by Vulkan.")
+ nullable..VkAllocationCallbacks.const.p("vulkanAllocator", "the {@code VkAllocationCallbacks} as specified by Vulkan.")
}
val XrGraphicsBindingVulkan2KHR = struct(Module.OPENXR, "XrGraphicsBindingVulkan2KHR", alias = XrGraphicsBindingVulkanKHR) {
@@ -2519,7 +2623,7 @@ val XrVulkanGraphicsDeviceGetInfoKHR = struct(Module.OPENXR, "XrVulkanGraphicsDe
- The {@link KHRVulkanEnable2 XR_KHR_vulkan_enable2} extension must be enabled prior to using ##XrVulkanGraphicsDeviceGetInfoKHR
- {@code type} must be #TYPE_VULKAN_GRAPHICS_DEVICE_GET_INFO_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code vulkanInstance} must be a valid {@code VkInstance} value
@@ -2563,7 +2667,7 @@ val XrCompositionLayerEquirect2KHR = struct(Module.OPENXR, "XrCompositionLayerEq
- The {@link KHRCompositionLayerEquirect2 XR_KHR_composition_layer_equirect2} extension must be enabled prior to using ##XrCompositionLayerEquirect2KHR
- {@code type} must be #TYPE_COMPOSITION_LAYER_EQUIRECT2_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code layerFlags} must be 0 or a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code space} must be a valid {@code XrSpace} handle
- {@code eyeVisibility} must be a valid {@code XrEyeVisibility} value
@@ -2578,7 +2682,7 @@ val XrCompositionLayerEquirect2KHR = struct(Module.OPENXR, "XrCompositionLayerEq
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrCompositionLayerFlags("layerFlags", "specifies options for the layer.")
XrSpace("space", "the {@code XrSpace} in which the {@code pose} of the equirect layer is evaluated over time.")
- XrEyeVisibility("eyeVisibility", "the eye represented by this layer.")
+ XrEyeVisibility("eyeVisibility", "")
XrSwapchainSubImage("subImage", "identifies the image ##XrSwapchainSubImage to use. The swapchain must have been created with a {@code faceCount} of 1.")
XrPosef("pose", "an ##XrPosef defining the position and orientation of the center point of the sphere onto which the equirect image data is mapped, relative to the reference frame of the {@code space}.")
float("radius", "the non-negative radius of the sphere onto which the equirect image data is mapped. Values of zero or floating point positive infinity are treated as an infinite sphere.")
@@ -2613,7 +2717,7 @@ val XrSceneObserverCreateInfoMSFT = struct(Module.OPENXR, "XrSceneObserverCreate
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneObserverCreateInfoMSFT
- {@code type} must be #TYPE_SCENE_OBSERVER_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -2633,7 +2737,7 @@ val XrSceneCreateInfoMSFT = struct(Module.OPENXR, "XrSceneCreateInfoMSFT") {
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneCreateInfoMSFT
- {@code type} must be #TYPE_SCENE_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -2745,7 +2849,7 @@ val XrNewSceneComputeInfoMSFT = struct(Module.OPENXR, "XrNewSceneComputeInfoMSFT
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrNewSceneComputeInfoMSFT
- {@code type} must be #TYPE_NEW_SCENE_COMPUTE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrVisualMeshComputeLodInfoMSFT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrVisualMeshComputeLodInfoMSFT
- {@code requestedFeatures} must be a pointer to an array of {@code requestedFeatureCount} valid {@code XrSceneComputeFeatureMSFT} values
- {@code consistency} must be a valid {@code XrSceneComputeConsistencyMSFT} value
- {@code bounds} must be a valid ##XrSceneBoundsMSFT structure
@@ -2776,7 +2880,7 @@ val XrVisualMeshComputeLodInfoMSFT = struct(Module.OPENXR, "XrVisualMeshComputeL
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrVisualMeshComputeLodInfoMSFT
- {@code type} must be #TYPE_VISUAL_MESH_COMPUTE_LOD_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code lod} must be a valid {@code XrMeshComputeLodMSFT} value
@@ -2826,7 +2930,7 @@ val XrSceneComponentsMSFT = struct(Module.OPENXR, "XrSceneComponentsMSFT") {
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneComponentsMSFT
- {@code type} must be #TYPE_SCENE_COMPONENTS_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSceneMeshesMSFT, ##XrSceneObjectsMSFT, ##XrScenePlanesMSFT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSceneMeshesMSFT, ##XrSceneObjectsMSFT, ##XrScenePlanesMSFT
- If {@code componentCapacityInput} is not 0, {@code components} must be a pointer to an array of {@code componentCapacityInput} ##XrSceneComponentMSFT structures
@@ -2853,7 +2957,7 @@ val XrSceneComponentsGetInfoMSFT = struct(Module.OPENXR, "XrSceneComponentsGetIn
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneComponentsGetInfoMSFT
- {@code type} must be #TYPE_SCENE_COMPONENTS_GET_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSceneComponentParentFilterInfoMSFT, ##XrSceneObjectTypesFilterInfoMSFT, ##XrScenePlaneAlignmentFilterInfoMSFT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSceneComponentParentFilterInfoMSFT, ##XrSceneObjectTypesFilterInfoMSFT, ##XrScenePlaneAlignmentFilterInfoMSFT
- {@code componentType} must be a valid {@code XrSceneComponentTypeMSFT} value
@@ -2897,7 +3001,7 @@ val XrSceneComponentLocationsMSFT = struct(Module.OPENXR, "XrSceneComponentLocat
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneComponentLocationsMSFT
- {@code type} must be #TYPE_SCENE_COMPONENT_LOCATIONS_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code locationCount} is not 0, {@code locations} must be a pointer to an array of {@code locationCount} ##XrSceneComponentLocationMSFT structures
@@ -2920,7 +3024,7 @@ val XrSceneComponentsLocateInfoMSFT = struct(Module.OPENXR, "XrSceneComponentsLo
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneComponentsLocateInfoMSFT
- {@code type} must be #TYPE_SCENE_COMPONENTS_LOCATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code baseSpace} must be a valid {@code XrSpace} handle
- If {@code componentIdCount} is not 0, {@code componentIds} must be a pointer to an array of {@code componentIdCount} ##XrUuidMSFT structures
@@ -2977,7 +3081,7 @@ val XrSceneObjectsMSFT = struct(Module.OPENXR, "XrSceneObjectsMSFT") {
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneObjectsMSFT
- {@code type} must be #TYPE_SCENE_OBJECTS_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code sceneObjectCount} is not 0, {@code sceneObjects} must be a pointer to an array of {@code sceneObjectCount} ##XrSceneObjectMSFT structures
@@ -3003,7 +3107,7 @@ val XrSceneComponentParentFilterInfoMSFT = struct(Module.OPENXR, "XrSceneCompone
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneComponentParentFilterInfoMSFT
- {@code type} must be #TYPE_SCENE_COMPONENT_PARENT_FILTER_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3027,7 +3131,7 @@ val XrSceneObjectTypesFilterInfoMSFT = struct(Module.OPENXR, "XrSceneObjectTypes
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneObjectTypesFilterInfoMSFT
- {@code type} must be #TYPE_SCENE_OBJECT_TYPES_FILTER_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code objectTypeCount} is not 0, {@code objectTypes} must be a pointer to an array of {@code objectTypeCount} valid {@code XrSceneObjectTypeMSFT} values
@@ -3078,7 +3182,7 @@ val XrScenePlanesMSFT = struct(Module.OPENXR, "XrScenePlanesMSFT") {
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrScenePlanesMSFT
- {@code type} must be #TYPE_SCENE_PLANES_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code scenePlaneCount} is not 0, {@code scenePlanes} must be a pointer to an array of {@code scenePlaneCount} ##XrScenePlaneMSFT structures
@@ -3104,7 +3208,7 @@ val XrScenePlaneAlignmentFilterInfoMSFT = struct(Module.OPENXR, "XrScenePlaneAli
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrScenePlaneAlignmentFilterInfoMSFT
- {@code type} must be #TYPE_SCENE_PLANE_ALIGNMENT_FILTER_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code alignmentCount} is not 0, {@code alignments} must be a pointer to an array of {@code alignmentCount} valid {@code XrScenePlaneAlignmentTypeMSFT} values
@@ -3145,7 +3249,7 @@ val XrSceneMeshesMSFT = struct(Module.OPENXR, "XrSceneMeshesMSFT") {
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneMeshesMSFT
- {@code type} must be #TYPE_SCENE_MESHES_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code sceneMeshCount} is not 0, {@code sceneMeshes} must be a pointer to an array of {@code sceneMeshCount} ##XrSceneMeshMSFT structures
@@ -3168,7 +3272,7 @@ val XrSceneMeshBuffersGetInfoMSFT = struct(Module.OPENXR, "XrSceneMeshBuffersGet
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneMeshBuffersGetInfoMSFT
- {@code type} must be #TYPE_SCENE_MESH_BUFFERS_GET_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3189,7 +3293,7 @@ val XrSceneMeshBuffersMSFT = struct(Module.OPENXR, "XrSceneMeshBuffersMSFT") {
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneMeshBuffersMSFT
- {@code type} must be #TYPE_SCENE_MESH_BUFFERS_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3209,7 +3313,7 @@ val XrSceneMeshVertexBufferMSFT = struct(Module.OPENXR, "XrSceneMeshVertexBuffer
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneMeshVertexBufferMSFT
- {@code type} must be #TYPE_SCENE_MESH_VERTEX_BUFFER_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code vertexCapacityInput} is not 0, {@code vertices} must be a pointer to an array of {@code vertexCapacityInput} ##XrVector3f structures
@@ -3220,7 +3324,7 @@ val XrSceneMeshVertexBufferMSFT = struct(Module.OPENXR, "XrSceneMeshVertexBuffer
Expression("#TYPE_SCENE_MESH_VERTEX_BUFFER_MSFT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
AutoSize("vertices", optional = true)..uint32_t("vertexCapacityInput", "the capacity of the array, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("vertexCountOutput", "the count of vertices, or the required capacity in the case that {@code vertexCapacityInput} is insufficient.")
+ uint32_t("vertexCountOutput", "a pointer to the count of vertices, or a pointer to the required capacity in the case that {@code vertexCapacityInput} is insufficient.")
nullable..XrVector3f.p("vertices", "an array of ##XrVector3f filled in by the runtime returns the position of vertices in the mesh component’s space.")
}
@@ -3233,7 +3337,7 @@ val XrSceneMeshIndicesUint32MSFT = struct(Module.OPENXR, "XrSceneMeshIndicesUint
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneMeshIndicesUint32MSFT
- {@code type} must be #TYPE_SCENE_MESH_INDICES_UINT32_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code indexCapacityInput} is not 0, {@code indices} must be a pointer to an array of {@code indexCapacityInput} {@code uint32_t} values
@@ -3244,7 +3348,7 @@ val XrSceneMeshIndicesUint32MSFT = struct(Module.OPENXR, "XrSceneMeshIndicesUint
Expression("#TYPE_SCENE_MESH_INDICES_UINT32_MSFT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
AutoSize("indices", optional = true)..uint32_t("indexCapacityInput", "the capacity of the array, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("indexCountOutput", "the count of indices, or the required capacity in the case that {@code indexCapacityInput} is insufficient.")
+ uint32_t("indexCountOutput", "a pointer to the count of indices, or a pointer to the required capacity in the case that {@code indexCapacityInput} is insufficient.")
nullable..uint32_t.p("indices", "an array of triangle indices filled in by the runtime, specifying the indices of the scene mesh buffer in the vertices array. The triangle indices must be returned in counter-clockwise order and three indices denote one triangle.")
}
@@ -3257,7 +3361,7 @@ val XrSceneMeshIndicesUint16MSFT = struct(Module.OPENXR, "XrSceneMeshIndicesUint
- The {@link MSFTSceneUnderstanding XR_MSFT_scene_understanding} extension must be enabled prior to using ##XrSceneMeshIndicesUint16MSFT
- {@code type} must be #TYPE_SCENE_MESH_INDICES_UINT16_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code indexCapacityInput} is not 0, {@code indices} must be a pointer to an array of {@code indexCapacityInput} {@code uint16_t} values
@@ -3281,7 +3385,7 @@ val XrSerializedSceneFragmentDataGetInfoMSFT = struct(Module.OPENXR, "XrSerializ
- The {@link MSFTSceneUnderstandingSerialization XR_MSFT_scene_understanding_serialization} extension must be enabled prior to using ##XrSerializedSceneFragmentDataGetInfoMSFT
- {@code type} must be #TYPE_SERIALIZED_SCENE_FRAGMENT_DATA_GET_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3324,7 +3428,7 @@ val XrSceneDeserializeInfoMSFT = struct(Module.OPENXR, "XrSceneDeserializeInfoMS
- The {@link MSFTSceneUnderstandingSerialization XR_MSFT_scene_understanding_serialization} extension must be enabled prior to using ##XrSceneDeserializeInfoMSFT
- {@code type} must be #TYPE_SCENE_DESERIALIZE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code fragmentCount} is not 0, {@code fragments} must be a pointer to an array of {@code fragmentCount} valid ##XrDeserializeSceneFragmentMSFT structures
@@ -3347,7 +3451,7 @@ val XrEventDataDisplayRefreshRateChangedFB = struct(Module.OPENXR, "XrEventDataD
- The {@link FBDisplayRefreshRate XR_FB_display_refresh_rate} extension must be enabled prior to using ##XrEventDataDisplayRefreshRateChangedFB
- {@code type} must be #TYPE_EVENT_DATA_DISPLAY_REFRESH_RATE_CHANGED_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3372,7 +3476,7 @@ val XrViveTrackerPathsHTCX = struct(Module.OPENXR, "XrViveTrackerPathsHTCX", mut
- The {@link HTCXViveTrackerInteraction XR_HTCX_vive_tracker_interaction} extension must be enabled prior to using ##XrViveTrackerPathsHTCX
- {@code type} must be #TYPE_VIVE_TRACKER_PATHS_HTCX
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3397,7 +3501,7 @@ val XrEventDataViveTrackerConnectedHTCX = struct(Module.OPENXR, "XrEventDataVive
- The {@link HTCXViveTrackerInteraction XR_HTCX_vive_tracker_interaction} extension must be enabled prior to using ##XrEventDataViveTrackerConnectedHTCX
- {@code type} must be #TYPE_EVENT_DATA_VIVE_TRACKER_CONNECTED_HTCX
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3421,7 +3525,7 @@ val XrSystemFacialTrackingPropertiesHTC = struct(Module.OPENXR, "XrSystemFacialT
- The {@link HTCFacialTracking XR_HTC_facial_tracking} extension must be enabled prior to using ##XrSystemFacialTrackingPropertiesHTC
- {@code type} must be #TYPE_SYSTEM_FACIAL_TRACKING_PROPERTIES_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
If a runtime returns #FALSE for {@code supportEyeFacialTracking}, the runtime must return #ERROR_FEATURE_UNSUPPORTED from #CreateFacialTrackerHTC() with #FACIAL_TRACKING_TYPE_EYE_DEFAULT_HTC set for {@code XrFacialTrackingTypeHTC} in ##XrFacialTrackerCreateInfoHTC. Similarly, if a runtime returns #FALSE for {@code supportLipFacialTracking} the runtime must return #ERROR_FEATURE_UNSUPPORTED from #CreateFacialTrackerHTC() with #FACIAL_TRACKING_TYPE_LIP_DEFAULT_HTC set for {@code XrFacialTrackingTypeHTC} in ##XrFacialTrackerCreateInfoHTC.
@@ -3457,7 +3561,7 @@ val XrFacialExpressionsHTC = struct(Module.OPENXR, "XrFacialExpressionsHTC") {
- The {@link HTCFacialTracking XR_HTC_facial_tracking} extension must be enabled prior to using ##XrFacialExpressionsHTC
- {@code type} must be #TYPE_FACIAL_EXPRESSIONS_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code expressionWeightings} must be a pointer to a {@code float} value
@@ -3485,7 +3589,7 @@ val XrFacialTrackerCreateInfoHTC = struct(Module.OPENXR, "XrFacialTrackerCreateI
- The {@link HTCFacialTracking XR_HTC_facial_tracking} extension must be enabled prior to using ##XrFacialTrackerCreateInfoHTC
- {@code type} must be #TYPE_FACIAL_TRACKER_CREATE_INFO_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code facialTrackingType} must be a valid {@code XrFacialTrackingTypeHTC} value
@@ -3507,7 +3611,7 @@ val XrSystemColorSpacePropertiesFB = struct(Module.OPENXR, "XrSystemColorSpacePr
- The {@link FBColorSpace XR_FB_color_space} extension must be enabled prior to using ##XrSystemColorSpacePropertiesFB
- {@code type} must be #TYPE_SYSTEM_COLOR_SPACE_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -3558,7 +3662,7 @@ val XrHandTrackingMeshFB = struct(Module.OPENXR, "XrHandTrackingMeshFB") {
- The {@link FBHandTrackingMesh XR_FB_hand_tracking_mesh} extension must be enabled prior to using ##XrHandTrackingMeshFB
- {@code type} must be #TYPE_HAND_TRACKING_MESH_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code jointCapacityInput} is not 0, {@code jointBindPoses} must be a pointer to an array of {@code jointCapacityInput} ##XrPosef structures
- If {@code jointCapacityInput} is not 0, {@code jointRadii} must be a pointer to an array of {@code jointCapacityInput} {@code float} values
- If {@code jointCapacityInput} is not 0, {@code jointParents} must be a pointer to an array of {@code jointCapacityInput} {@code XrHandJointEXT} values
@@ -3602,7 +3706,7 @@ val XrHandTrackingScaleFB = struct(Module.OPENXR, "XrHandTrackingScaleFB", mutab
- The {@link FBHandTrackingMesh XR_FB_hand_tracking_mesh} extension must be enabled prior to using ##XrHandTrackingScaleFB
- {@code type} must be #TYPE_HAND_TRACKING_SCALE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -3623,7 +3727,7 @@ val XrHandTrackingAimStateFB = struct(Module.OPENXR, "XrHandTrackingAimStateFB",
- The {@link FBHandTrackingAim XR_FB_hand_tracking_aim} extension must be enabled prior to using ##XrHandTrackingAimStateFB
- {@code type} must be #TYPE_HAND_TRACKING_AIM_STATE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3633,7 +3737,7 @@ val XrHandTrackingAimStateFB = struct(Module.OPENXR, "XrHandTrackingAimStateFB",
Expression("#TYPE_HAND_TRACKING_AIM_STATE_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
XrHandTrackingAimFlagsFB("status", "a bitmask of {@code XrHandTrackingAimFlagBitsFB} describing the availability and state of other signals.")
- XrPosef("aimPose", "a system-determined \"aim\" pose, similar in intent and convention to the aim poses used with the action system, based on hand data.")
+ XrPosef("aimPose", "a system-determined \"aim\" pose, similar in intent and convention to the aim poses used with the action system, based on hand data.")
float("pinchStrengthIndex", "the current pinching strength for the index finger of this hand. Range is 0.0 to 1.0, with 1.0 meaning index and thumb are fully touching.")
float("pinchStrengthMiddle", "the current pinching strength for the middle finger of this hand. Range is 0.0 to 1.0, with 1.0 meaning middle and thumb are fully touching.")
float("pinchStrengthRing", "the current pinching strength for the ring finger of this hand. Range is 0.0 to 1.0, with 1.0 meaning ring and thumb are fully touching.")
@@ -3677,7 +3781,7 @@ val XrHandTrackingCapsulesStateFB = struct(Module.OPENXR, "XrHandTrackingCapsule
- The {@link FBHandTrackingCapsules XR_FB_hand_tracking_capsules} extension must be enabled prior to using ##XrHandTrackingCapsulesStateFB
- {@code type} must be #TYPE_HAND_TRACKING_CAPSULES_STATE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3703,7 +3807,7 @@ val XrSystemSpatialEntityPropertiesFB = struct(Module.OPENXR, "XrSystemSpatialEn
- The {@link FBSpatialEntity XR_FB_spatial_entity} extension must be enabled prior to using ##XrSystemSpatialEntityPropertiesFB
- {@code type} must be #TYPE_SYSTEM_SPATIAL_ENTITY_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3727,7 +3831,7 @@ val XrSpatialAnchorCreateInfoFB = struct(Module.OPENXR, "XrSpatialAnchorCreateIn
- The {@link FBSpatialEntity XR_FB_spatial_entity} extension must be enabled prior to using ##XrSpatialAnchorCreateInfoFB
- {@code type} must be #TYPE_SPATIAL_ANCHOR_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code space} must be a valid {@code XrSpace} handle
@@ -3754,7 +3858,7 @@ val XrSpaceComponentStatusSetInfoFB = struct(Module.OPENXR, "XrSpaceComponentSta
- The {@link FBSpatialEntity XR_FB_spatial_entity} extension must be enabled prior to using ##XrSpaceComponentStatusSetInfoFB
- {@code type} must be #TYPE_SPACE_COMPONENT_STATUS_SET_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code componentType} must be a valid {@code XrSpaceComponentTypeFB} value
@@ -3766,7 +3870,7 @@ val XrSpaceComponentStatusSetInfoFB = struct(Module.OPENXR, "XrSpaceComponentSta
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrSpaceComponentTypeFB("componentType", "the component whose status is to be set.")
XrBool32("enabled", "the value to set the component to.")
- XrDuration("timeout", "the number of nanoseconds before the operation should be cancelled. A value of #INFINITE_DURATION indicates to never time out. See duration for more details.")
+ XrDuration("timeout", "the number of nanoseconds before the operation should be cancelled. A value of #INFINITE_DURATION indicates to never time out. See duration for more details.")
}
val XrSpaceComponentStatusFB = struct(Module.OPENXR, "XrSpaceComponentStatusFB", mutable = false) {
@@ -3781,7 +3885,7 @@ val XrSpaceComponentStatusFB = struct(Module.OPENXR, "XrSpaceComponentStatusFB",
- The {@link FBSpatialEntity XR_FB_spatial_entity} extension must be enabled prior to using ##XrSpaceComponentStatusFB
- {@code type} must be #TYPE_SPACE_COMPONENT_STATUS_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3801,7 +3905,7 @@ val XrUuidEXT = struct(Module.OPENXR, "XrUuidEXT") {
Universally Unique Identifier.
Description
- The structure is composed of 16 octets, with the size and order of the fields defined in RFC 4122 section 4.1.2.
+ The structure is composed of 16 octets, with the size and order of the fields defined in RFC 4122 section 4.1.2.
Valid Usage (Implicit)
@@ -3827,7 +3931,7 @@ val XrEventDataSpatialAnchorCreateCompleteFB = struct(Module.OPENXR, "XrEventDat
- The {@link FBSpatialEntity XR_FB_spatial_entity} extension must be enabled prior to using ##XrEventDataSpatialAnchorCreateCompleteFB
- {@code type} must be #TYPE_EVENT_DATA_SPATIAL_ANCHOR_CREATE_COMPLETE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3854,7 +3958,7 @@ val XrEventDataSpaceSetStatusCompleteFB = struct(Module.OPENXR, "XrEventDataSpac
- The {@link FBSpatialEntity XR_FB_spatial_entity} extension must be enabled prior to using ##XrEventDataSpaceSetStatusCompleteFB
- {@code type} must be #TYPE_EVENT_DATA_SPACE_SET_STATUS_COMPLETE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3880,7 +3984,7 @@ val XrFoveationProfileCreateInfoFB = struct(Module.OPENXR, "XrFoveationProfileCr
- The {@link FBFoveation XR_FB_foveation} extension must be enabled prior to using ##XrFoveationProfileCreateInfoFB
- {@code type} must be #TYPE_FOVEATION_PROFILE_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFoveationLevelProfileCreateInfoFB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFoveationLevelProfileCreateInfoFB
See Also
@@ -3903,7 +4007,7 @@ val XrSwapchainCreateInfoFoveationFB = struct(Module.OPENXR, "XrSwapchainCreateI
- The {@link FBFoveation XR_FB_foveation} extension must be enabled prior to using ##XrSwapchainCreateInfoFoveationFB
- {@code type} must be #TYPE_SWAPCHAIN_CREATE_INFO_FOVEATION_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be 0 or a valid combination of {@code XrSwapchainCreateFoveationFlagBitsFB} values
"""
@@ -3922,7 +4026,7 @@ val XrSwapchainStateFoveationFB = struct(Module.OPENXR, "XrSwapchainStateFoveati
- The {@link FBFoveation XR_FB_foveation} extension must be enabled prior to using ##XrSwapchainStateFoveationFB
- {@code type} must be #TYPE_SWAPCHAIN_STATE_FOVEATION_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be 0
- {@code profile} must be a valid {@code XrFoveationProfileFB} handle
@@ -3943,7 +4047,7 @@ val XrFoveationLevelProfileCreateInfoFB = struct(Module.OPENXR, "XrFoveationLeve
- The {@link FBFoveationConfiguration XR_FB_foveation_configuration} extension must be enabled prior to using ##XrFoveationLevelProfileCreateInfoFB
- {@code type} must be #TYPE_FOVEATION_LEVEL_PROFILE_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFoveationEyeTrackedProfileCreateInfoMETA
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFoveationEyeTrackedProfileCreateInfoMETA
- {@code level} must be a valid {@code XrFoveationLevelFB} value
- {@code dynamic} must be a valid {@code XrFoveationDynamicFB} value
@@ -3971,7 +4075,7 @@ val XrSystemKeyboardTrackingPropertiesFB = struct(Module.OPENXR, "XrSystemKeyboa
- The {@link FBKeyboardTracking XR_FB_keyboard_tracking} extension must be enabled prior to using ##XrSystemKeyboardTrackingPropertiesFB
- {@code type} must be #TYPE_SYSTEM_KEYBOARD_TRACKING_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -3984,7 +4088,6 @@ val XrSystemKeyboardTrackingPropertiesFB = struct(Module.OPENXR, "XrSystemKeyboa
}
val XrKeyboardTrackingDescriptionFB = struct(Module.OPENXR, "XrKeyboardTrackingDescriptionFB", mutable = false) {
- javaImport("static org.lwjgl.openxr.FBKeyboardTracking.*")
documentation =
"""
Description of a trackable keyboard.
@@ -4004,7 +4107,7 @@ val XrKeyboardTrackingDescriptionFB = struct(Module.OPENXR, "XrKeyboardTrackingD
uint64_t("trackedKeyboardId", "abstract identifier describing the type of keyboard.")
XrVector3f("size", "bounding box.")
XrKeyboardTrackingFlagsFB("flags", "additional information on the type of keyboard available. If #KEYBOARD_TRACKING_EXISTS_BIT_FB is not set there is no keyboard.")
- charUTF8("name", "human readable keyboard identifier.")["XR_MAX_KEYBOARD_TRACKING_NAME_SIZE_FB"]
+ charUTF8("name", "human readable keyboard identifier.")[XR_MAX_KEYBOARD_TRACKING_NAME_SIZE_FB]
}
val XrKeyboardSpaceCreateInfoFB = struct(Module.OPENXR, "XrKeyboardSpaceCreateInfoFB") {
@@ -4019,7 +4122,7 @@ val XrKeyboardSpaceCreateInfoFB = struct(Module.OPENXR, "XrKeyboardSpaceCreateIn
- The {@link FBKeyboardTracking XR_FB_keyboard_tracking} extension must be enabled prior to using ##XrKeyboardSpaceCreateInfoFB
- {@code type} must be #TYPE_KEYBOARD_SPACE_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4043,7 +4146,7 @@ val XrKeyboardTrackingQueryFB = struct(Module.OPENXR, "XrKeyboardTrackingQueryFB
- The {@link FBKeyboardTracking XR_FB_keyboard_tracking} extension must be enabled prior to using ##XrKeyboardTrackingQueryFB
- {@code type} must be #TYPE_KEYBOARD_TRACKING_QUERY_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be a valid combination of {@code XrKeyboardTrackingQueryFlagBitsFB} values
- {@code flags} must not be 0
@@ -4071,7 +4174,7 @@ val XrTriangleMeshCreateInfoFB = struct(Module.OPENXR, "XrTriangleMeshCreateInfo
- The {@link FBTriangleMesh XR_FB_triangle_mesh} extension must be enabled prior to using ##XrTriangleMeshCreateInfoFB
- {@code type} must be #TYPE_TRIANGLE_MESH_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be 0 or a valid combination of {@code XrTriangleMeshFlagBitsFB} values
- {@code windingOrder} must be a valid {@code XrWindingOrderFB} value
@@ -4106,7 +4209,7 @@ val XrSystemPassthroughPropertiesFB = struct(Module.OPENXR, "XrSystemPassthrough
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrSystemPassthroughPropertiesFB
- {@code type} must be #TYPE_SYSTEM_PASSTHROUGH_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -4131,7 +4234,7 @@ val XrSystemPassthroughProperties2FB = struct(Module.OPENXR, "XrSystemPassthroug
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrSystemPassthroughProperties2FB
- {@code type} must be #TYPE_SYSTEM_PASSTHROUGH_PROPERTIES2_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -4156,7 +4259,7 @@ val XrPassthroughCreateInfoFB = struct(Module.OPENXR, "XrPassthroughCreateInfoFB
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrPassthroughCreateInfoFB
- {@code type} must be #TYPE_PASSTHROUGH_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be a valid combination of {@code XrPassthroughFlagBitsFB} values
- {@code flags} must not be 0
@@ -4187,7 +4290,7 @@ val XrPassthroughLayerCreateInfoFB = struct(Module.OPENXR, "XrPassthroughLayerCr
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrPassthroughLayerCreateInfoFB
- {@code type} must be #TYPE_PASSTHROUGH_LAYER_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code passthrough} must be a valid {@code XrPassthroughFB} handle
- {@code flags} must be a valid combination of {@code XrPassthroughFlagBitsFB} values
- {@code flags} must not be 0
@@ -4223,7 +4326,7 @@ val XrCompositionLayerPassthroughFB = struct(Module.OPENXR, "XrCompositionLayerP
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrCompositionLayerPassthroughFB
- {@code type} must be #TYPE_COMPOSITION_LAYER_PASSTHROUGH_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code flags} must not be 0
- {@code space} must be a valid {@code XrSpace} handle
@@ -4262,7 +4365,7 @@ val XrGeometryInstanceCreateInfoFB = struct(Module.OPENXR, "XrGeometryInstanceCr
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrGeometryInstanceCreateInfoFB
- {@code type} must be #TYPE_GEOMETRY_INSTANCE_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code layer} must be a valid {@code XrPassthroughLayerFB} handle
- {@code mesh} must be a valid {@code XrTriangleMeshFB} handle
- {@code baseSpace} must be a valid {@code XrSpace} handle
@@ -4301,7 +4404,7 @@ val XrGeometryInstanceTransformFB = struct(Module.OPENXR, "XrGeometryInstanceTra
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrGeometryInstanceTransformFB
- {@code type} must be #TYPE_GEOMETRY_INSTANCE_TRANSFORM_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code baseSpace} must be a valid {@code XrSpace} handle
@@ -4329,7 +4432,7 @@ val XrPassthroughStyleFB = struct(Module.OPENXR, "XrPassthroughStyleFB") {
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrPassthroughStyleFB
- {@code type} must be #TYPE_PASSTHROUGH_STYLE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrPassthroughBrightnessContrastSaturationFB, ##XrPassthroughColorMapInterpolatedLutMETA, ##XrPassthroughColorMapLutMETA, ##XrPassthroughColorMapMonoToMonoFB, ##XrPassthroughColorMapMonoToRgbaFB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrPassthroughBrightnessContrastSaturationFB, ##XrPassthroughColorMapMonoToMonoFB, ##XrPassthroughColorMapMonoToRgbaFB
See Also
@@ -4338,7 +4441,7 @@ val XrPassthroughStyleFB = struct(Module.OPENXR, "XrPassthroughStyleFB") {
Expression("#TYPE_PASSTHROUGH_STYLE_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
PointerSetter(
- "XrPassthroughBrightnessContrastSaturationFB", "XrPassthroughColorMapInterpolatedLutMETA", "XrPassthroughColorMapLutMETA", "XrPassthroughColorMapMonoToMonoFB", "XrPassthroughColorMapMonoToRgbaFB",
+ "XrPassthroughBrightnessContrastSaturationFB", "XrPassthroughColorMapMonoToMonoFB", "XrPassthroughColorMapMonoToRgbaFB",
prepend = true
)..nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
float("textureOpacityFactor", "the opacity of the passthrough imagery in the range [0, 1].")
@@ -4346,7 +4449,6 @@ val XrPassthroughStyleFB = struct(Module.OPENXR, "XrPassthroughStyleFB") {
}
val XrPassthroughColorMapMonoToRgbaFB = struct(Module.OPENXR, "XrPassthroughColorMapMonoToRgbaFB") {
- javaImport("static org.lwjgl.openxr.FBPassthrough.*")
documentation =
"""
A layer color map.
@@ -4360,7 +4462,7 @@ val XrPassthroughColorMapMonoToRgbaFB = struct(Module.OPENXR, "XrPassthroughColo
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrPassthroughColorMapMonoToRgbaFB
- {@code type} must be #TYPE_PASSTHROUGH_COLOR_MAP_MONO_TO_RGBA_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4369,11 +4471,10 @@ val XrPassthroughColorMapMonoToRgbaFB = struct(Module.OPENXR, "XrPassthroughColo
Expression("#TYPE_PASSTHROUGH_COLOR_MAP_MONO_TO_RGBA_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- XrColor4f("textureColorMap", "an array of ##XrColor4f colors to which the passthrough imagery luminance values are mapped.")["XR_PASSTHROUGH_COLOR_MAP_MONO_SIZE_FB"]
+ XrColor4f("textureColorMap", "an array of ##XrColor4f colors to which the passthrough imagery luminance values are mapped.")[XR_PASSTHROUGH_COLOR_MAP_MONO_SIZE_FB]
}
val XrPassthroughColorMapMonoToMonoFB = struct(Module.OPENXR, "XrPassthroughColorMapMonoToMonoFB") {
- javaImport("static org.lwjgl.openxr.FBPassthrough.*")
documentation =
"""
A layer color map.
@@ -4387,13 +4488,13 @@ val XrPassthroughColorMapMonoToMonoFB = struct(Module.OPENXR, "XrPassthroughColo
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrPassthroughColorMapMonoToMonoFB
- {@code type} must be #TYPE_PASSTHROUGH_COLOR_MAP_MONO_TO_MONO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
Expression("#TYPE_PASSTHROUGH_COLOR_MAP_MONO_TO_MONO_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- uint8_t("textureColorMap", "an array of {@code uint8_t} grayscale color values to which the passthrough luminance values are mapped.")["XR_PASSTHROUGH_COLOR_MAP_MONO_SIZE_FB"]
+ uint8_t("textureColorMap", "an array of {@code uint8_t} grayscale color values to which the passthrough luminance values are mapped.")[XR_PASSTHROUGH_COLOR_MAP_MONO_SIZE_FB]
}
val XrPassthroughBrightnessContrastSaturationFB = struct(Module.OPENXR, "XrPassthroughBrightnessContrastSaturationFB") {
@@ -4419,7 +4520,7 @@ val XrPassthroughBrightnessContrastSaturationFB = struct(Module.OPENXR, "XrPasst
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrPassthroughBrightnessContrastSaturationFB
- {@code type} must be #TYPE_PASSTHROUGH_BRIGHTNESS_CONTRAST_SATURATION_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -4446,7 +4547,7 @@ val XrEventDataPassthroughStateChangedFB = struct(Module.OPENXR, "XrEventDataPas
- The {@link FBPassthrough XR_FB_passthrough} extension must be enabled prior to using ##XrEventDataPassthroughStateChangedFB
- {@code type} must be #TYPE_EVENT_DATA_PASSTHROUGH_STATE_CHANGED_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be a valid combination of {@code XrPassthroughStateChangedFlagBitsFB} values
- {@code flags} must not be 0
@@ -4479,7 +4580,6 @@ val XrRenderModelPathInfoFB = struct(Module.OPENXR, "XrRenderModelPathInfoFB") {
- pathname:/model_fb/keyboard/local
- pathname:/model_fb/keyboard/remote
- - pathname:/model_meta/keyboard/virtual (if the {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension is enabled)
@@ -4488,7 +4588,7 @@ val XrRenderModelPathInfoFB = struct(Module.OPENXR, "XrRenderModelPathInfoFB") {
- The {@link FBRenderModel XR_FB_render_model} extension must be enabled prior to using ##XrRenderModelPathInfoFB
- {@code type} must be #TYPE_RENDER_MODEL_PATH_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4501,7 +4601,6 @@ val XrRenderModelPathInfoFB = struct(Module.OPENXR, "XrRenderModelPathInfoFB") {
}
val XrRenderModelPropertiesFB = struct(Module.OPENXR, "XrRenderModelPropertiesFB") {
- javaImport("static org.lwjgl.openxr.FBRenderModel.*")
documentation =
"""
The information about the render model.
@@ -4515,8 +4614,8 @@ val XrRenderModelPropertiesFB = struct(Module.OPENXR, "XrRenderModelPropertiesFB
- The {@link FBRenderModel XR_FB_render_model} extension must be enabled prior to using ##XrRenderModelPropertiesFB
- {@code type} must be #TYPE_RENDER_MODEL_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code modelName} must be a null-terminated UTF-8 string whose length is less than or equal to #MAX_RENDER_MODEL_NAME_SIZE_FB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code modelName} must be a null-terminated UTF-8 string whose length is less than or equal to XR_MAX_RENDER_MODEL_NAME_SIZE_FB
- {@code flags} must be a valid combination of {@code XrRenderModelFlagBitsFB} values
- {@code flags} must not be 0
@@ -4528,7 +4627,7 @@ val XrRenderModelPropertiesFB = struct(Module.OPENXR, "XrRenderModelPropertiesFB
Expression("#TYPE_RENDER_MODEL_PROPERTIES_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. ##XrRenderModelCapabilitiesRequestFB is a structure in this structure chain and should be linked when this structure is passed to #GetRenderModelPropertiesFB().")
uint32_t("vendorId", "the vendor id of the model.")
- charUTF8("modelName", "the name of the model.")["XR_MAX_RENDER_MODEL_NAME_SIZE_FB"]
+ charUTF8("modelName", "the name of the model.")[XR_MAX_RENDER_MODEL_NAME_SIZE_FB]
XrRenderModelKeyFB("modelKey", "the unique model key used to load the model in #LoadRenderModelFB().")
uint32_t("modelVersion", "the version number of the model.")
XrRenderModelFlagsFB("flags", "a bitmask of {@code XrRenderModelFlagsFB}. After a successful call to #GetRenderModelPropertiesFB(), flags must contain the support level of the model and no other support levels.")
@@ -4546,7 +4645,7 @@ val XrRenderModelBufferFB = struct(Module.OPENXR, "XrRenderModelBufferFB") {
- The {@link FBRenderModel XR_FB_render_model} extension must be enabled prior to using ##XrRenderModelBufferFB
- {@code type} must be #TYPE_RENDER_MODEL_BUFFER_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code bufferCapacityInput} is not 0, {@code buffer} must be a pointer to an array of {@code bufferCapacityInput} {@code uint8_t} values
@@ -4573,7 +4672,7 @@ val XrRenderModelLoadInfoFB = struct(Module.OPENXR, "XrRenderModelLoadInfoFB") {
- The {@link FBRenderModel XR_FB_render_model} extension must be enabled prior to using ##XrRenderModelLoadInfoFB
- {@code type} must be #TYPE_RENDER_MODEL_LOAD_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4601,7 +4700,7 @@ val XrSystemRenderModelPropertiesFB = struct(Module.OPENXR, "XrSystemRenderModel
- The {@link FBRenderModel XR_FB_render_model} extension must be enabled prior to using ##XrSystemRenderModelPropertiesFB
- {@code type} must be #TYPE_SYSTEM_RENDER_MODEL_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -4622,7 +4721,7 @@ val XrRenderModelCapabilitiesRequestFB = struct(Module.OPENXR, "XrRenderModelCap
- The {@link FBRenderModel XR_FB_render_model} extension must be enabled prior to using ##XrRenderModelCapabilitiesRequestFB
- {@code type} must be #TYPE_RENDER_MODEL_CAPABILITIES_REQUEST_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -4642,7 +4741,7 @@ val XrBindingModificationBaseHeaderKHR = struct(Module.OPENXR, "XrBindingModific
Valid Usage (Implicit)
See Also
@@ -4662,7 +4761,7 @@ val XrBindingModificationsKHR = struct(Module.OPENXR, "XrBindingModificationsKHR
- The {@link KHRBindingModification XR_KHR_binding_modification} extension must be enabled prior to using ##XrBindingModificationsKHR
- {@code type} must be #TYPE_BINDING_MODIFICATIONS_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code bindingModificationCount} is not 0, {@code bindingModifications} must be a pointer to an array of {@code bindingModificationCount} valid ##XrBindingModificationBaseHeaderKHR-based structures. See also: ##XrInteractionProfileAnalogThresholdVALVE, ##XrInteractionProfileDpadBindingEXT
@@ -4688,7 +4787,7 @@ val XrViewLocateFoveatedRenderingVARJO = struct(Module.OPENXR, "XrViewLocateFove
- The {@link VARJOFoveatedRendering XR_VARJO_foveated_rendering} extension must be enabled prior to using ##XrViewLocateFoveatedRenderingVARJO
- {@code type} must be #TYPE_VIEW_LOCATE_FOVEATED_RENDERING_VARJO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4709,7 +4808,7 @@ val XrFoveatedViewConfigurationViewVARJO = struct(Module.OPENXR, "XrFoveatedView
- The {@link VARJOFoveatedRendering XR_VARJO_foveated_rendering} extension must be enabled prior to using ##XrFoveatedViewConfigurationViewVARJO
- {@code type} must be #TYPE_FOVEATED_VIEW_CONFIGURATION_VIEW_VARJO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
For example:
@@ -4764,7 +4863,7 @@ val XrSystemFoveatedRenderingPropertiesVARJO = struct(Module.OPENXR, "XrSystemFo
- The {@link VARJOFoveatedRendering XR_VARJO_foveated_rendering} extension must be enabled prior to using ##XrSystemFoveatedRenderingPropertiesVARJO
- {@code type} must be #TYPE_SYSTEM_FOVEATED_RENDERING_PROPERTIES_VARJO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -4782,7 +4881,7 @@ val XrCompositionLayerDepthTestVARJO = struct(Module.OPENXR, "XrCompositionLayer
- The {@link VARJOCompositionLayerDepthTest XR_VARJO_composition_layer_depth_test} extension must be enabled prior to using ##XrCompositionLayerDepthTestVARJO
- {@code type} must be #TYPE_COMPOSITION_LAYER_DEPTH_TEST_VARJO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4809,7 +4908,7 @@ val XrSystemMarkerTrackingPropertiesVARJO = struct(Module.OPENXR, "XrSystemMarke
- The {@link VARJOMarkerTracking XR_VARJO_marker_tracking} extension must be enabled prior to using ##XrSystemMarkerTrackingPropertiesVARJO
- {@code type} must be #TYPE_SYSTEM_MARKER_TRACKING_PROPERTIES_VARJO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4833,7 +4932,7 @@ val XrEventDataMarkerTrackingUpdateVARJO = struct(Module.OPENXR, "XrEventDataMar
- The {@link VARJOMarkerTracking XR_VARJO_marker_tracking} extension must be enabled prior to using ##XrEventDataMarkerTrackingUpdateVARJO
- {@code type} must be #TYPE_EVENT_DATA_MARKER_TRACKING_UPDATE_VARJO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4857,7 +4956,7 @@ val XrMarkerSpaceCreateInfoVARJO = struct(Module.OPENXR, "XrMarkerSpaceCreateInf
- The {@link VARJOMarkerTracking XR_VARJO_marker_tracking} extension must be enabled prior to using ##XrMarkerSpaceCreateInfoVARJO
- {@code type} must be #TYPE_MARKER_SPACE_CREATE_INFO_VARJO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -4879,7 +4978,7 @@ val XrFrameEndInfoML = struct(Module.OPENXR, "XrFrameEndInfoML") {
- The {@link MLFrameEndInfo XR_ML_frame_end_info} extension must be enabled prior to using ##XrFrameEndInfoML
- {@code type} must be #TYPE_FRAME_END_INFO_ML
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be 0 or a valid combination of {@code XrFrameEndInfoFlagBitsML} values
"""
@@ -4899,7 +4998,7 @@ val XrGlobalDimmerFrameEndInfoML = struct(Module.OPENXR, "XrGlobalDimmerFrameEnd
- The {@link MLGlobalDimmer XR_ML_global_dimmer} extension must be enabled prior to using ##XrGlobalDimmerFrameEndInfoML
- {@code type} must be #TYPE_GLOBAL_DIMMER_FRAME_END_INFO_ML
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be 0 or a valid combination of {@code XrGlobalDimmerFrameEndInfoFlagBitsML} values
"""
@@ -4922,7 +5021,7 @@ val XrCoordinateSpaceCreateInfoML = struct(Module.OPENXR, "XrCoordinateSpaceCrea
- The {@link MLCompat XR_ML_compat} extension must be enabled prior to using ##XrCoordinateSpaceCreateInfoML
- {@code type} must be #TYPE_COORDINATE_SPACE_CREATE_INFO_ML
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code cfuid} must be a valid {@code MLCoordinateFrameUID} value
@@ -4967,7 +5066,7 @@ val XrSpatialAnchorPersistenceInfoMSFT = struct(Module.OPENXR, "XrSpatialAnchorP
- The {@link MSFTSpatialAnchorPersistence XR_MSFT_spatial_anchor_persistence} extension must be enabled prior to using ##XrSpatialAnchorPersistenceInfoMSFT
- {@code type} must be #TYPE_SPATIAL_ANCHOR_PERSISTENCE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code spatialAnchorPersistenceName} must be a valid ##XrSpatialAnchorPersistenceNameMSFT structure
- {@code spatialAnchor} must be a valid {@code XrSpatialAnchorMSFT} handle
@@ -4994,7 +5093,7 @@ val XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT = struct(Module.OPENXR, "Xr
- The {@link MSFTSpatialAnchorPersistence XR_MSFT_spatial_anchor_persistence} extension must be enabled prior to using ##XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT
- {@code type} must be #TYPE_SPATIAL_ANCHOR_FROM_PERSISTED_ANCHOR_CREATE_INFO_MSFT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code spatialAnchorStore} must be a valid {@code XrSpatialAnchorStoreConnectionMSFT} handle
- {@code spatialAnchorPersistenceName} must be a valid ##XrSpatialAnchorPersistenceNameMSFT structure
@@ -5018,7 +5117,7 @@ val XrSpaceQueryInfoBaseHeaderFB = struct(Module.OPENXR, "XrSpaceQueryInfoBaseHe
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrSpaceQueryInfoBaseHeaderFB
- {@code type} must be #TYPE_SPACE_QUERY_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -5041,7 +5140,7 @@ val XrSpaceFilterInfoBaseHeaderFB = struct(Module.OPENXR, "XrSpaceFilterInfoBase
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrSpaceFilterInfoBaseHeaderFB
- {@code type} must be one of the following XrStructureType values: #TYPE_SPACE_COMPONENT_FILTER_INFO_FB, #TYPE_SPACE_UUID_FILTER_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSpaceStorageLocationFilterInfoFB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSpaceStorageLocationFilterInfoFB
See Also
@@ -5067,7 +5166,7 @@ val XrSpaceQueryInfoFB = struct(Module.OPENXR, "XrSpaceQueryInfoFB", parentStruc
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrSpaceQueryInfoFB
- {@code type} must be #TYPE_SPACE_QUERY_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code queryAction} must be a valid {@code XrSpaceQueryActionFB} value
- If {@code filter} is not {@code NULL}, {@code filter} must be a pointer to a valid ##XrSpaceFilterInfoBaseHeaderFB-based structure. See also: ##XrSpaceComponentFilterInfoFB, ##XrSpaceUuidFilterInfoFB
- If {@code excludeFilter} is not {@code NULL}, {@code excludeFilter} must be a pointer to a valid ##XrSpaceFilterInfoBaseHeaderFB-based structure. See also: ##XrSpaceComponentFilterInfoFB, ##XrSpaceUuidFilterInfoFB
@@ -5098,7 +5197,7 @@ val XrSpaceStorageLocationFilterInfoFB = struct(Module.OPENXR, "XrSpaceStorageLo
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrSpaceStorageLocationFilterInfoFB
- {@code type} must be #TYPE_SPACE_STORAGE_LOCATION_FILTER_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code location} must be a valid {@code XrSpaceStorageLocationFB} value
"""
@@ -5120,7 +5219,7 @@ val XrSpaceUuidFilterInfoFB = struct(Module.OPENXR, "XrSpaceUuidFilterInfoFB", p
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrSpaceUuidFilterInfoFB
- {@code type} must be #TYPE_SPACE_UUID_FILTER_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code uuids} must be a pointer to an array of {@code uuidCount} ##XrUuidEXT structures
- The {@code uuidCount} parameter must be greater than 0
@@ -5147,7 +5246,7 @@ val XrSpaceComponentFilterInfoFB = struct(Module.OPENXR, "XrSpaceComponentFilter
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrSpaceComponentFilterInfoFB
- {@code type} must be #TYPE_SPACE_COMPONENT_FILTER_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code componentType} must be a valid {@code XrSpaceComponentTypeFB} value
@@ -5193,7 +5292,7 @@ val XrSpaceQueryResultsFB = struct(Module.OPENXR, "XrSpaceQueryResultsFB") {
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrSpaceQueryResultsFB
- {@code type} must be #TYPE_SPACE_QUERY_RESULTS_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code resultCapacityInput} is not 0, {@code results} must be a pointer to an array of {@code resultCapacityInput} ##XrSpaceQueryResultFB structures
@@ -5214,13 +5313,13 @@ val XrEventDataSpaceQueryResultsAvailableFB = struct(Module.OPENXR, "XrEventData
Event indicating a query has produced results.
Description
- It indicates a query request has produced some number of results. If a query yields results this event must be delivered before the ##XrEventDataSpaceQueryCompleteFB event is delivered. Call #RetrieveSpaceQueryResultsFB() to retrieve those results.
+ It indicates a query request has produced some number of results. If a query yields results this event must be delivered before the ##XrEventDataSpaceQueryCompleteFB event is delivered. Call #QuerySpacesFB() to retrieve those results.
Valid Usage (Implicit)
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrEventDataSpaceQueryResultsAvailableFB
- {@code type} must be #TYPE_EVENT_DATA_SPACE_QUERY_RESULTS_AVAILABLE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -5241,7 +5340,7 @@ val XrEventDataSpaceQueryCompleteFB = struct(Module.OPENXR, "XrEventDataSpaceQue
- The {@link FBSpatialEntityQuery XR_FB_spatial_entity_query} extension must be enabled prior to using ##XrEventDataSpaceQueryCompleteFB
- {@code type} must be #TYPE_EVENT_DATA_SPACE_QUERY_COMPLETE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -5263,7 +5362,7 @@ val XrSpaceSaveInfoFB = struct(Module.OPENXR, "XrSpaceSaveInfoFB") {
- The {@link FBSpatialEntityStorage XR_FB_spatial_entity_storage} extension must be enabled prior to using ##XrSpaceSaveInfoFB
- {@code type} must be #TYPE_SPACE_SAVE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code space} must be a valid {@code XrSpace} handle
- {@code location} must be a valid {@code XrSpaceStorageLocationFB} value
- {@code persistenceMode} must be a valid {@code XrSpacePersistenceModeFB} value
@@ -5292,7 +5391,7 @@ val XrSpaceEraseInfoFB = struct(Module.OPENXR, "XrSpaceEraseInfoFB") {
- The {@link FBSpatialEntityStorage XR_FB_spatial_entity_storage} extension must be enabled prior to using ##XrSpaceEraseInfoFB
- {@code type} must be #TYPE_SPACE_ERASE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code space} must be a valid {@code XrSpace} handle
- {@code location} must be a valid {@code XrSpaceStorageLocationFB} value
@@ -5319,7 +5418,7 @@ val XrEventDataSpaceSaveCompleteFB = struct(Module.OPENXR, "XrEventDataSpaceSave
- The {@link FBSpatialEntityStorage XR_FB_spatial_entity_storage} extension must be enabled prior to using ##XrEventDataSpaceSaveCompleteFB
- {@code type} must be #TYPE_EVENT_DATA_SPACE_SAVE_COMPLETE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -5347,7 +5446,7 @@ val XrEventDataSpaceEraseCompleteFB = struct(Module.OPENXR, "XrEventDataSpaceEra
- The {@link FBSpatialEntityStorage XR_FB_spatial_entity_storage} extension must be enabled prior to using ##XrEventDataSpaceEraseCompleteFB
- {@code type} must be #TYPE_EVENT_DATA_SPACE_ERASE_COMPLETE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -5373,7 +5472,7 @@ val XrSwapchainImageFoveationVulkanFB = struct(Module.OPENXR, "XrSwapchainImageF
- The {@link FBFoveationVulkan XR_FB_foveation_vulkan} extension must be enabled prior to using ##XrSwapchainImageFoveationVulkanFB
- {@code type} must be #TYPE_SWAPCHAIN_IMAGE_FOVEATION_VULKAN_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -5410,7 +5509,7 @@ val XrSwapchainStateSamplerOpenGLESFB = struct(Module.OPENXR, "XrSwapchainStateS
- The {@link FBSwapchainUpdateStateOpenGLES XR_FB_swapchain_update_state_opengl_es} extension must be enabled prior to using ##XrSwapchainStateSamplerOpenGLESFB
- {@code type} must be #TYPE_SWAPCHAIN_STATE_SAMPLER_OPENGL_ES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code minFilter} must be a valid {@code EGLenum} value
- {@code magFilter} must be a valid {@code EGLenum} value
- {@code wrapModeS} must be a valid {@code EGLenum} value
@@ -5456,7 +5555,7 @@ val XrSwapchainStateSamplerVulkanFB = struct(Module.OPENXR, "XrSwapchainStateSam
- The {@link FBSwapchainUpdateStateVulkan XR_FB_swapchain_update_state_vulkan} extension must be enabled prior to using ##XrSwapchainStateSamplerVulkanFB
- {@code type} must be #TYPE_SWAPCHAIN_STATE_SAMPLER_VULKAN_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code minFilter} must be a valid {@code VkFilter} value
- {@code magFilter} must be a valid {@code VkFilter} value
- {@code mipmapMode} must be a valid {@code VkSamplerMipmapMode} value
@@ -5499,7 +5598,7 @@ val XrSpaceShareInfoFB = struct(Module.OPENXR, "XrSpaceShareInfoFB") {
- The {@link FBSpatialEntitySharing XR_FB_spatial_entity_sharing} extension must be enabled prior to using ##XrSpaceShareInfoFB
- {@code type} must be #TYPE_SPACE_SHARE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code spaces} must be a pointer to an array of {@code spaceCount} {@code XrSpace} handles
- {@code users} must be a pointer to an array of {@code userCount} {@code XrSpaceUserFB} handles
- The {@code spaceCount} parameter must be greater than 0
@@ -5548,7 +5647,7 @@ val XrEventDataSpaceShareCompleteFB = struct(Module.OPENXR, "XrEventDataSpaceSha
- The {@link FBSpatialEntitySharing XR_FB_spatial_entity_sharing} extension must be enabled prior to using ##XrEventDataSpaceShareCompleteFB
- {@code type} must be #TYPE_EVENT_DATA_SPACE_SHARE_COMPLETE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -5570,7 +5669,7 @@ val XrCompositionLayerSpaceWarpInfoFB = struct(Module.OPENXR, "XrCompositionLaye
- The {@link FBSpaceWarp XR_FB_space_warp} extension must be enabled prior to using ##XrCompositionLayerSpaceWarpInfoFB
- {@code type} must be #TYPE_COMPOSITION_LAYER_SPACE_WARP_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code layerFlags} must be 0 or a valid combination of {@code XrCompositionLayerSpaceWarpInfoFlagBitsFB} values
- {@code motionVectorSubImage} must be a valid ##XrSwapchainSubImage structure
- {@code depthSubImage} must be a valid ##XrSwapchainSubImage structure
@@ -5601,7 +5700,7 @@ val XrSystemSpaceWarpPropertiesFB = struct(Module.OPENXR, "XrSystemSpaceWarpProp
- The {@link FBSpaceWarp XR_FB_space_warp} extension must be enabled prior to using ##XrSystemSpaceWarpPropertiesFB
- {@code type} must be #TYPE_SYSTEM_SPACE_WARP_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -5623,7 +5722,7 @@ val XrHapticAmplitudeEnvelopeVibrationFB = struct(Module.OPENXR, "XrHapticAmplit
- {@code type} is the {@code XrStructureType} of this structure.
- {@code next} is {@code NULL} or a pointer to the next structure in a structure chain.
- - {@code duration} is the duration of the haptic effect in nanoseconds. See duration for more details.
+ - {@code duration} is the duration of the haptic effect in nanoseconds. See duration for more details.
- {@code amplitudeCount} is the number of samples in the buffer.
- {@code amplitudes} is the pointer to a float array that contains the samples.
@@ -5634,7 +5733,7 @@ val XrHapticAmplitudeEnvelopeVibrationFB = struct(Module.OPENXR, "XrHapticAmplit
- The {@link FBHapticAmplitudeEnvelope XR_FB_haptic_amplitude_envelope} extension must be enabled prior to using ##XrHapticAmplitudeEnvelopeVibrationFB
- {@code type} must be #TYPE_HAPTIC_AMPLITUDE_ENVELOPE_VIBRATION_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code amplitudes} must be a pointer to an array of {@code amplitudeCount} {@code float} values
- The {@code amplitudeCount} parameter must be greater than 0
@@ -5699,8 +5798,6 @@ val XrRect3DfFB = struct(Module.OPENXR, "XrRect3DfFB") {
Description
This structure is used for component values that may be fractional (floating-point).
- The bounding box is defined by an {@code offset} and {@code extent}. The {@code offset} refers to the coordinate of the minimum corner of the box in the local space of the {@code XrSpace}; that is, the corner whose coordinate has the minimum value on each axis. The {@code extent} refers to the dimensions of the box along each axis. The maximum corner can therefore be computed as offset extent
.
-
Valid Usage (Implicit)
- The {@link FBScene XR_FB_scene} extension must be enabled prior to using ##XrRect3DfFB
@@ -5726,7 +5823,7 @@ val XrSemanticLabelsFB = struct(Module.OPENXR, "XrSemanticLabelsFB") {
- The {@link FBScene XR_FB_scene} extension must be enabled prior to using ##XrSemanticLabelsFB
- {@code type} must be #TYPE_SEMANTIC_LABELS_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code bufferCapacityInput} is not 0, {@code buffer} must be a pointer to an array of {@code bufferCapacityInput} char values
@@ -5735,10 +5832,10 @@ val XrSemanticLabelsFB = struct(Module.OPENXR, "XrSemanticLabelsFB") {
"""
Expression("#TYPE_SEMANTIC_LABELS_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain, such as ##XrSemanticLabelsSupportInfoFB.")
+ nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
AutoSize("buffer", optional = true)..uint32_t("bufferCapacityInput", "the capacity of the {@code buffer} array, in bytes, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("bufferCountOutput", "the count of bytes written, or the required capacity in the case that {@code bufferCapacityInput} is insufficient.")
- nullable..char.p("buffer", "a pointer to an array of bytes, but can be {@code NULL} if {@code bufferCapacityInput} is 0. Multiple labels represented by raw string, separated by a comma without spaces.")
+ uint32_t("bufferCountOutput", "a pointer to the count of bytes written, or a pointer to the required capacity in the case that {@code bufferCapacityInput} is insufficient.")
+ nullable..char.p("buffer", "a pointer to an array of bytes, but can be {@code NULL} if {@code bufferCapacityInput} is 0. Multiple labels represented by raw string, separated by comma (,).")
}
val XrRoomLayoutFB = struct(Module.OPENXR, "XrRoomLayoutFB") {
@@ -5753,7 +5850,7 @@ val XrRoomLayoutFB = struct(Module.OPENXR, "XrRoomLayoutFB") {
- The {@link FBScene XR_FB_scene} extension must be enabled prior to using ##XrRoomLayoutFB
- {@code type} must be #TYPE_ROOM_LAYOUT_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code wallUuidCapacityInput} is not 0, {@code wallUuids} must be a pointer to an array of {@code wallUuidCapacityInput} ##XrUuidEXT structures
@@ -5765,8 +5862,8 @@ val XrRoomLayoutFB = struct(Module.OPENXR, "XrRoomLayoutFB") {
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
XrUuidEXT("floorUuid", "the UUID of the spatial entity representing the room floor")
XrUuidEXT("ceilingUuid", "the UUID of the spatial entity representing the room ceiling")
- AutoSize("wallUuids", optional = true)..uint32_t("wallUuidCapacityInput", "the capacity of the {@code wallUuids} array, in number of UUIDs, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("wallUuidCountOutput", "the count of ##XrUuidEXT handles written, or the required capacity in the case that {@code wallUuidCapacityInput} is insufficient.")
+ AutoSize("wallUuids", optional = true)..uint32_t("wallUuidCapacityInput", "the capacity of the {@code wallUuids} array, in bytes, or 0 to indicate a request to retrieve the required capacity.")
+ uint32_t("wallUuidCountOutput", "a pointer to the count of ##XrUuidEXT handles written, or a pointer to the required capacity in the case that {@code wallUuidCapacityInput} is insufficient.")
nullable..XrUuidEXT.p("wallUuids", "a pointer to an array of ##XrUuidEXT handles, but can be {@code NULL} if {@code wallUuidCapacityInput} is 0.")
}
@@ -5782,7 +5879,7 @@ val XrBoundary2DFB = struct(Module.OPENXR, "XrBoundary2DFB") {
- The {@link FBScene XR_FB_scene} extension must be enabled prior to using ##XrBoundary2DFB
- {@code type} must be #TYPE_BOUNDARY_2D_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code vertexCapacityInput} is not 0, {@code vertices} must be a pointer to an array of {@code vertexCapacityInput} ##XrVector2f structures
@@ -5792,37 +5889,11 @@ val XrBoundary2DFB = struct(Module.OPENXR, "XrBoundary2DFB") {
Expression("#TYPE_BOUNDARY_2D_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- AutoSize("vertices", optional = true)..uint32_t("vertexCapacityInput", "the capacity of the {@code vertices} array, in number of vertices, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("vertexCountOutput", "the count of ##XrVector2f written, or the required capacity in the case that {@code vertexCapacityInput} is insufficient.")
+ AutoSize("vertices", optional = true)..uint32_t("vertexCapacityInput", "the capacity of the {@code vertices} array, in bytes, or 0 to indicate a request to retrieve the required capacity.")
+ uint32_t("vertexCountOutput", "a pointer to the count of ##XrVector2f written, or a pointer to the required capacity in the case that {@code vertexCapacityInput} is insufficient.")
nullable..XrVector2f.p("vertices", "a pointer to an array of ##XrVector2f, but can be {@code NULL} if {@code vertexCapacityInput} is 0.")
}
-val XrSemanticLabelsSupportInfoFB = struct(Module.OPENXR, "XrSemanticLabelsSupportInfoFB") {
- documentation =
- """
- Specifies additional behaviors of the xrGetSpaceSemanticLabelsFB function.
-
- Description
- The ##XrSemanticLabelsSupportInfoFB structure may be specified in the {@code next} chain of ##XrSemanticLabelsFB to specify additional behaviors of the #GetSpaceSemanticLabelsFB() function. The runtime must follow the behaviors specified in {@code flags} according to the descriptions of {@code XrSemanticLabelsSupportFlagBitsFB}. The runtime must return any semantic label that is not included in {@code recognizedLabels} as "OTHER" to the application. The runtime must follow this direction only if the runtime reports the {@code extensionVersion} as 2 or greater, otherwise the runtime must ignore this as an unknown chained structure.
-
- If the ##XrSemanticLabelsSupportInfoFB structure is not present in the {@code next} chain of ##XrSemanticLabelsFB, the runtime may return any semantic labels to the application.
-
- Valid Usage (Implicit)
-
- - The {@link FBScene XR_FB_scene} extension must be enabled prior to using ##XrSemanticLabelsSupportInfoFB
- - {@code type} must be #TYPE_SEMANTIC_LABELS_SUPPORT_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code flags} must be 0 or a valid combination of {@code XrSemanticLabelsSupportFlagBitsFB} values
- - {@code recognizedLabels} must be a null-terminated UTF-8 string
-
- """
-
- Expression("#TYPE_SEMANTIC_LABELS_SUPPORT_INFO_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrSemanticLabelsSupportFlagsFB("flags", "a bitmask of {@code XrSemanticLabelsSupportFlagBitsFB} that specifies additional behaviors.")
- charUTF8.const.p("recognizedLabels", "a {@code NULL} terminated string that indicates a set of semantic labels recognized by the application. Each semantic label must be represented as a string and be separated by a comma without spaces. This field must include at least \"OTHER\" and must not be {@code NULL}.")
-}
-
val XrDigitalLensControlALMALENCE = struct(Module.OPENXR, "XrDigitalLensControlALMALENCE") {
documentation =
"""
@@ -5832,7 +5903,7 @@ val XrDigitalLensControlALMALENCE = struct(Module.OPENXR, "XrDigitalLensControlA
- The {@link ALMALENCEDigitalLensControl XR_ALMALENCE_digital_lens_control} extension must be enabled prior to using ##XrDigitalLensControlALMALENCE
- {@code type} must be #TYPE_DIGITAL_LENS_CONTROL_ALMALENCE
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be a valid combination of {@code XrDigitalLensControlFlagBitsALMALENCE} values
- {@code flags} must not be 0
@@ -5858,7 +5929,7 @@ val XrEventDataSceneCaptureCompleteFB = struct(Module.OPENXR, "XrEventDataSceneC
- The {@link FBSceneCapture XR_FB_scene_capture} extension must be enabled prior to using ##XrEventDataSceneCaptureCompleteFB
- {@code type} must be #TYPE_EVENT_DATA_SCENE_CAPTURE_COMPLETE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code result} must be a valid {@code XrResult} value
"""
@@ -5881,7 +5952,7 @@ val XrSceneCaptureRequestInfoFB = struct(Module.OPENXR, "XrSceneCaptureRequestIn
- The {@link FBSceneCapture XR_FB_scene_capture} extension must be enabled prior to using ##XrSceneCaptureRequestInfoFB
- {@code type} must be #TYPE_SCENE_CAPTURE_REQUEST_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code requestByteCount} is not 0, {@code request} must be a pointer to an array of {@code requestByteCount} char values
@@ -5907,7 +5978,7 @@ val XrSpaceContainerFB = struct(Module.OPENXR, "XrSpaceContainerFB") {
- The {@link FBSpatialEntityContainer XR_FB_spatial_entity_container} extension must be enabled prior to using ##XrSpaceContainerFB
- {@code type} must be #TYPE_SPACE_CONTAINER_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- If {@code uuidCapacityInput} is not 0, {@code uuids} must be a pointer to an array of {@code uuidCapacityInput} ##XrUuidEXT structures
@@ -5917,7 +5988,7 @@ val XrSpaceContainerFB = struct(Module.OPENXR, "XrSpaceContainerFB") {
Expression("#TYPE_SPACE_CONTAINER_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- AutoSize("uuids", optional = true)..uint32_t("uuidCapacityInput", "the capacity of the {@code uuids} array, or 0 to indicate a request to retrieve the required capacity.")
+ AutoSize("uuids", optional = true)..uint32_t("uuidCapacityInput", "an input parameter for the application to specify a capacity for the output list")
uint32_t("uuidCountOutput", "an output parameter which will hold the number of UUIDs included in the output list, or the required capacity in the case that {@code uuidCapacityInput} is insufficient")
nullable..XrUuidEXT.p("uuids", "an output parameter which will hold a list of space UUIDs contained by the space to which the component is attached.")
}
@@ -5934,7 +6005,7 @@ val XrFoveationEyeTrackedProfileCreateInfoMETA = struct(Module.OPENXR, "XrFoveat
- The {@link METAFoveationEyeTracked XR_META_foveation_eye_tracked} extension must be enabled prior to using ##XrFoveationEyeTrackedProfileCreateInfoMETA
- {@code type} must be #TYPE_FOVEATION_EYE_TRACKED_PROFILE_CREATE_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code flags} must be 0
"""
@@ -5957,7 +6028,7 @@ val XrFoveationEyeTrackedStateMETA = struct(Module.OPENXR, "XrFoveationEyeTracke
- The {@link METAFoveationEyeTracked XR_META_foveation_eye_tracked} extension must be enabled prior to using ##XrFoveationEyeTrackedStateMETA
- {@code type} must be #TYPE_FOVEATION_EYE_TRACKED_STATE_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -5982,7 +6053,7 @@ val XrSystemFoveationEyeTrackedPropertiesMETA = struct(Module.OPENXR, "XrSystemF
- The {@link METAFoveationEyeTracked XR_META_foveation_eye_tracked} extension must be enabled prior to using ##XrSystemFoveationEyeTrackedPropertiesMETA
- {@code type} must be #TYPE_SYSTEM_FOVEATION_EYE_TRACKED_PROPERTIES_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -6008,7 +6079,7 @@ val XrSystemFaceTrackingPropertiesFB = struct(Module.OPENXR, "XrSystemFaceTracki
- The {@link FBFaceTracking XR_FB_face_tracking} extension must be enabled prior to using ##XrSystemFaceTrackingPropertiesFB
- {@code type} must be #TYPE_SYSTEM_FACE_TRACKING_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -6029,7 +6100,7 @@ val XrFaceTrackerCreateInfoFB = struct(Module.OPENXR, "XrFaceTrackerCreateInfoFB
- The {@link FBFaceTracking XR_FB_face_tracking} extension must be enabled prior to using ##XrFaceTrackerCreateInfoFB
- {@code type} must be #TYPE_FACE_TRACKER_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code faceExpressionSet} must be a valid {@code XrFaceExpressionSetFB} value
@@ -6054,7 +6125,7 @@ val XrFaceExpressionInfoFB = struct(Module.OPENXR, "XrFaceExpressionInfoFB") {
- The {@link FBFaceTracking XR_FB_face_tracking} extension must be enabled prior to using ##XrFaceExpressionInfoFB
- {@code type} must be #TYPE_FACE_EXPRESSION_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -6111,7 +6182,7 @@ val XrFaceExpressionWeightsFB = struct(Module.OPENXR, "XrFaceExpressionWeightsFB
- The {@link FBFaceTracking XR_FB_face_tracking} extension must be enabled prior to using ##XrFaceExpressionWeightsFB
- {@code type} must be #TYPE_FACE_EXPRESSION_WEIGHTS_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code weights} must be a pointer to an array of {@code weightCount} {@code float} values
- {@code confidences} must be a pointer to an array of {@code confidenceCount} {@code float} values
- {@code status} must be a valid ##XrFaceExpressionStatusFB structure
@@ -6171,7 +6242,7 @@ val XrEyeTrackerCreateInfoFB = struct(Module.OPENXR, "XrEyeTrackerCreateInfoFB")
- The {@link FBEyeTrackingSocial XR_FB_eye_tracking_social} extension must be enabled prior to using ##XrEyeTrackerCreateInfoFB
- {@code type} must be #TYPE_EYE_TRACKER_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -6194,7 +6265,7 @@ val XrEyeGazesInfoFB = struct(Module.OPENXR, "XrEyeGazesInfoFB") {
- The {@link FBEyeTrackingSocial XR_FB_eye_tracking_social} extension must be enabled prior to using ##XrEyeGazesInfoFB
- {@code type} must be #TYPE_EYE_GAZES_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code baseSpace} must be a valid {@code XrSpace} handle
@@ -6222,7 +6293,7 @@ val XrSystemEyeTrackingPropertiesFB = struct(Module.OPENXR, "XrSystemEyeTracking
- The {@link FBEyeTrackingSocial XR_FB_eye_tracking_social} extension must be enabled prior to using ##XrSystemEyeTrackingPropertiesFB
- {@code type} must be #TYPE_SYSTEM_EYE_TRACKING_PROPERTIES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
"""
@@ -6232,7 +6303,6 @@ val XrSystemEyeTrackingPropertiesFB = struct(Module.OPENXR, "XrSystemEyeTracking
}
val XrEyeGazesFB = struct(Module.OPENXR, "XrEyeGazesFB") {
- javaImport("static org.lwjgl.openxr.FBEyeTrackingSocial.*")
documentation =
"""
Returns the eye gaze directions.
@@ -6241,7 +6311,7 @@ val XrEyeGazesFB = struct(Module.OPENXR, "XrEyeGazesFB") {
- The {@link FBEyeTrackingSocial XR_FB_eye_tracking_social} extension must be enabled prior to using ##XrEyeGazesFB
- {@code type} must be #TYPE_EYE_GAZES_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- Any given element of {@code gaze} must be a valid ##XrEyeGazeFB structure
@@ -6251,7 +6321,7 @@ val XrEyeGazesFB = struct(Module.OPENXR, "XrEyeGazesFB") {
Expression("#TYPE_EYE_GAZES_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrEyeGazeFB("gaze", "an array of ##XrEyeGazeFB receiving the returned eye gaze directions.")["XR_EYE_POSITION_COUNT_FB"]
+ XrEyeGazeFB("gaze", "an array of ##XrEyeGazeFB receiving the returned eye gaze directions.")[XR_EYE_POSITION_COUNT_FB]
XrTime("time", "an {@code XrTime} time at which the returned eye gaze is tracked or extrapolated to. Equals the time for which the eye gaze was requested if the interpolation at the time was successful.")
}
@@ -6271,7 +6341,7 @@ val XrPassthroughKeyboardHandsIntensityFB = struct(Module.OPENXR, "XrPassthrough
- The {@link FBPassthroughKeyboardHands XR_FB_passthrough_keyboard_hands} extension must be enabled prior to using ##XrPassthroughKeyboardHandsIntensityFB
- {@code type} must be #TYPE_PASSTHROUGH_KEYBOARD_HANDS_INTENSITY_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -6302,7 +6372,7 @@ val XrCompositionLayerSettingsFB = struct(Module.OPENXR, "XrCompositionLayerSett
- The {@link FBCompositionLayerSettings XR_FB_composition_layer_settings} extension must be enabled prior to using ##XrCompositionLayerSettingsFB
- {@code type} must be #TYPE_COMPOSITION_LAYER_SETTINGS_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code layerFlags} must be a valid combination of {@code XrCompositionLayerSettingsFlagBitsFB} values
- {@code layerFlags} must not be 0
@@ -6336,7 +6406,7 @@ val XrHapticPcmVibrationFB = struct(Module.OPENXR, "XrHapticPcmVibrationFB", par
- The {@link FBHapticPcm XR_FB_haptic_pcm} extension must be enabled prior to using ##XrHapticPcmVibrationFB
- {@code type} must be #TYPE_HAPTIC_PCM_VIBRATION_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code buffer} must be a pointer to an array of {@code bufferSize} {@code float} values
- {@code samplesConsumed} must be a pointer to a {@code uint32_t} value
- The {@code bufferSize} parameter must be greater than 0
@@ -6361,7 +6431,7 @@ val XrDevicePcmSampleRateStateFB = struct(Module.OPENXR, "XrDevicePcmSampleRateS
- The {@link FBHapticPcm XR_FB_haptic_pcm} extension must be enabled prior to using ##XrDevicePcmSampleRateStateFB
- {@code type} must be #TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -6393,7 +6463,7 @@ val XrCompositionLayerDepthTestFB = struct(Module.OPENXR, "XrCompositionLayerDep
- The {@link FBCompositionLayerDepthTest XR_FB_composition_layer_depth_test} extension must be enabled prior to using ##XrCompositionLayerDepthTestFB
- {@code type} must be #TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code compareOp} must be a valid {@code XrCompareOpFB} value
@@ -6419,7 +6489,7 @@ val XrLocalDimmingFrameEndInfoMETA = struct(Module.OPENXR, "XrLocalDimmingFrameE
- The {@link METALocalDimming XR_META_local_dimming} extension must be enabled prior to using ##XrLocalDimmingFrameEndInfoMETA
- {@code type} must be #TYPE_LOCAL_DIMMING_FRAME_END_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code localDimmingMode} must be a valid {@code XrLocalDimmingModeMETA} value
@@ -6432,626 +6502,224 @@ val XrLocalDimmingFrameEndInfoMETA = struct(Module.OPENXR, "XrLocalDimmingFrameE
XrLocalDimmingModeMETA("localDimmingMode", "the local dimming mode for current submitted frame.")
}
-val XrPassthroughPreferencesMETA = struct(Module.OPENXR, "XrPassthroughPreferencesMETA", mutable = false) {
+val XrExternalCameraIntrinsicsOCULUS = struct(Module.OPENXR, "XrExternalCameraIntrinsicsOCULUS") {
documentation =
"""
- Passthrough preferences.
-
- Description
- The runtime must populate the ##XrPassthroughPreferencesMETA structure with the relevant information when the app calls #GetPassthroughPreferencesMETA().
-
- Presence of the bit flag #PASSTHROUGH_PREFERENCE_DEFAULT_TO_ACTIVE_BIT_META does not indicate a guarantee that applications can enable and use passthrough in practice. The runtime may impose restrictions on passthrough usage (e.g. based on hardware availability or permission models) independently of the state of this flag bit. Apps should test for this flag explicitly, as more flag bits may be introduced in the future.
+ Camera intrintics state.
Valid Usage (Implicit)
- - The {@link METAPassthroughPreferences XR_META_passthrough_preferences} extension must be enabled prior to using ##XrPassthroughPreferencesMETA
- - {@code type} must be #TYPE_PASSTHROUGH_PREFERENCES_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - The {@link OCULUSExternalCamera XR_OCULUS_external_camera} extension must be enabled prior to using ##XrExternalCameraIntrinsicsOCULUS
See Also
- #GetPassthroughPreferencesMETA()
+ ##XrExtent2Di, ##XrExternalCameraOCULUS, ##XrFovf
"""
- Expression("#TYPE_PASSTHROUGH_PREFERENCES_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
- XrPassthroughPreferenceFlagsMETA("flags", "a bitmask of {@code XrPassthroughPreferenceFlagBitsMETA} describing boolean passthrough preferences.")
+ XrTime("lastChangeTime", "the {@code XrTime} when this camera’s intrinsics last changed.")
+ XrFovf("fov", "the ##XrFovf for this camera’s viewport.")
+ float("virtualNearPlaneDistance", "the near plane distance of the virtual camera used to match the external camera")
+ float("virtualFarPlaneDistance", "the far plane distance of the virtual camera used to match the external camera")
+ XrExtent2Di("imageSensorPixelResolution", "the ##XrExtent2Di specifying the camera’s resolution (in pixels).")
}
-val XrSystemVirtualKeyboardPropertiesMETA = struct(Module.OPENXR, "XrSystemVirtualKeyboardPropertiesMETA", mutable = false) {
+val XrExternalCameraExtrinsicsOCULUS = struct(Module.OPENXR, "XrExternalCameraExtrinsicsOCULUS") {
documentation =
"""
- Virtual Keyboard Properties structure.
-
- Description
- The struct is used for checking virtual keyboard support.
+ Camera extrinsics state.
Valid Usage (Implicit)
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrSystemVirtualKeyboardPropertiesMETA
- - {@code type} must be #TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - The {@link OCULUSExternalCamera XR_OCULUS_external_camera} extension must be enabled prior to using ##XrExternalCameraExtrinsicsOCULUS
+ - {@code cameraStatusFlags} must be 0 or a valid combination of {@code XrExternalCameraStatusFlagBitsOCULUS} values
+ - {@code attachedToDevice} must be a valid {@code XrExternalCameraAttachedToDeviceOCULUS} value
See Also
- ##XrSystemProperties
+ ##XrExternalCameraOCULUS, ##XrPosef
"""
- Expression("#TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
- XrBool32("supportsVirtualKeyboard", "an {@code XrBool32} indicating if virtual keyboard is supported.")
+ XrTime("lastChangeTime", "the {@code XrTime} when this camera’s extrinsics last changed.")
+ XrExternalCameraStatusFlagsOCULUS("cameraStatusFlags", "the {@code XrExternalCameraStatusFlagsOCULUS} for this camera’s status.")
+ XrExternalCameraAttachedToDeviceOCULUS("attachedToDevice", "the {@code XrExternalCameraAttachedToDeviceOCULUS} for the device this camera is attached to")
+ XrPosef("relativePose", "the ##XrPosef for offset of the camera from the device that the camera is attached to")
}
-val XrVirtualKeyboardCreateInfoMETA = struct(Module.OPENXR, "XrVirtualKeyboardCreateInfoMETA") {
+val XrExternalCameraOCULUS = struct(Module.OPENXR, "XrExternalCameraOCULUS", mutable = false) {
+ javaImport("static org.lwjgl.openxr.OCULUSExternalCamera.*")
documentation =
"""
- Virtual keyboard creation info.
-
- Description
- The struct is used for keyboard creation. Empty with the intention of future extension.
-
- The runtime must return #ERROR_FEATURE_UNSUPPORTED if {@code supportsVirtualKeyboard} is #FALSE when checking the device compatibility.
+ Camera intrintics state.
Valid Usage (Implicit)
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardCreateInfoMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - The {@link OCULUSExternalCamera XR_OCULUS_external_camera} extension must be enabled prior to using ##XrExternalCameraOCULUS
+ - {@code type} must be #TYPE_EXTERNAL_CAMERA_OCULUS
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
- #CreateVirtualKeyboardMETA()
+ ##XrExternalCameraExtrinsicsOCULUS, ##XrExternalCameraIntrinsicsOCULUS, #EnumerateExternalCamerasOCULUS()
"""
- Expression("#TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
+ Expression("#TYPE_EXTERNAL_CAMERA_OCULUS")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
+ nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
+ charUTF8("name", "a null-terminated UTF-8 string containing a camera identifier: VID (vendor ID), PID (product ID), and serial number")["XR_MAX_EXTERNAL_CAMERA_NAME_SIZE_OCULUS"]
+ XrExternalCameraIntrinsicsOCULUS("intrinsics", "the ##XrExternalCameraIntrinsicsOCULUS for the camera")
+ XrExternalCameraExtrinsicsOCULUS("extrinsics", "the ##XrExternalCameraExtrinsicsOCULUS for the camera")
}
-val XrVirtualKeyboardSpaceCreateInfoMETA = struct(Module.OPENXR, "XrVirtualKeyboardSpaceCreateInfoMETA") {
+val XrVulkanSwapchainCreateInfoMETA = struct(Module.OPENXR, "XrVulkanSwapchainCreateInfoMETA") {
+ javaImport("org.lwjgl.vulkan.*")
documentation =
"""
- Virtual keyboard space creation info.
+ Debug utils object name info.
Description
- If {@code locationType} is set to #VIRTUAL_KEYBOARD_LOCATION_TYPE_CUSTOM_META, the runtime must use the value {@code poseInSpace} set by the application. Otherwise, the runtime must provide a default pose and ignore {@code poseInSpace}. In all cases, the runtime must default the scale to 1.0.
+ The runtime must return #ERROR_FEATURE_UNSUPPORTED if any bit of either {@code additionalCreateFlags} or {@code additionalUsageFlags} is not supported.
Valid Usage (Implicit)
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardSpaceCreateInfoMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code locationType} must be a valid {@code XrVirtualKeyboardLocationTypeMETA} value
- - {@code space} must be a valid {@code XrSpace} handle
+ - The {@link METAVulkanSwapchainCreateInfo XR_META_vulkan_swapchain_create_info} extension must be enabled prior to using ##XrVulkanSwapchainCreateInfoMETA
+ - {@code type} must be #TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code additionalCreateFlags} must be a valid {@code VkImageCreateFlags} value
+ - {@code additionalUsageFlags} must be a valid {@code VkImageUsageFlags} value
-
- See Also
- ##XrPosef, #CreateVirtualKeyboardSpaceMETA()
"""
- Expression("#TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
+ Expression("#TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrVirtualKeyboardLocationTypeMETA("locationType", "an {@code XrVirtualKeyboardLocationTypeMETA} enum providing the location type.")
- XrSpace("space", "an {@code XrSpace} previously created by a function such as #CreateReferenceSpace().")
- XrPosef("poseInSpace", "the desired pose if {@code locationType} is #VIRTUAL_KEYBOARD_LOCATION_TYPE_CUSTOM_META.")
+ VkImageCreateFlags("additionalCreateFlags", "a bitmask of {@code VkImageCreateFlags} describing additional parameters of an image.")
+ VkImageUsageFlags("additionalUsageFlags", "a bitmask of {@code VkImageUsageFlags} describing additional parameters of an image.")
}
-val XrVirtualKeyboardLocationInfoMETA = struct(Module.OPENXR, "XrVirtualKeyboardLocationInfoMETA") {
+val XrPerformanceMetricsStateMETA = struct(Module.OPENXR, "XrPerformanceMetricsStateMETA") {
documentation =
"""
- Virtual keyboard location info.
+ Performance metrics enable state.
Description
- If {@code locationType} is set to #VIRTUAL_KEYBOARD_LOCATION_TYPE_CUSTOM_META, the runtime must use the values {@code poseInSpace} and {@code scale} set by the application. Otherwise, the runtime must provide a default pose and scale and ignore {@code poseInSpace} and {@code scale}.
+ ##XrPerformanceMetricsStateMETA is provided as input when calling #SetPerformanceMetricsStateMETA() to enable or disable the performance metrics system. ##XrPerformanceMetricsStateMETA is populated as an output parameter when calling #GetPerformanceMetricsStateMETA() to query if the performance metrics system is enabled.
Valid Usage (Implicit)
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardLocationInfoMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_LOCATION_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code locationType} must be a valid {@code XrVirtualKeyboardLocationTypeMETA} value
- - {@code space} must be a valid {@code XrSpace} handle
+ - The {@link METAPerformanceMetrics XR_META_performance_metrics} extension must be enabled prior to using ##XrPerformanceMetricsStateMETA
+ - {@code type} must be #TYPE_PERFORMANCE_METRICS_STATE_META
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
- ##XrPosef, #SuggestVirtualKeyboardLocationMETA()
+ #GetPerformanceMetricsStateMETA(), #SetPerformanceMetricsStateMETA()
"""
- Expression("#TYPE_VIRTUAL_KEYBOARD_LOCATION_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
+ Expression("#TYPE_PERFORMANCE_METRICS_STATE_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrVirtualKeyboardLocationTypeMETA("locationType", "an {@code XrVirtualKeyboardLocationTypeMETA} enum providing the location type.")
- XrSpace("space", "an {@code XrSpace} previously created by a function such as #CreateReferenceSpace().")
- XrPosef("poseInSpace", "the desired pose if {@code locationType} is #VIRTUAL_KEYBOARD_LOCATION_TYPE_CUSTOM_META.")
- float("scale", "a {@code float} value of the desired multiplicative scale between 0.0 and 1.0 if {@code locationType} is #VIRTUAL_KEYBOARD_LOCATION_TYPE_CUSTOM_META.")
+ XrBool32("enabled", "set to #TRUE to indicate the performance metrics system is enabled, #FALSE otherwise, when getting state. When setting state, set to #TRUE to enable the performance metrics system and #FALSE to disable it.")
}
-val XrVirtualKeyboardModelVisibilitySetInfoMETA = struct(Module.OPENXR, "XrVirtualKeyboardModelVisibilitySetInfoMETA") {
+val XrPerformanceMetricsCounterMETA = struct(Module.OPENXR, "XrPerformanceMetricsCounterMETA") {
documentation =
"""
- Virtual keyboard model visibility.
+ Performance metrics counter value.
+
+ Description
+ ##XrPerformanceMetricsCounterMETA is populated by calling #QueryPerformanceMetricsCounterMETA() to query real-time performance metrics counter information.
Valid Usage (Implicit)
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardModelVisibilitySetInfoMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_MODEL_VISIBILITY_SET_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - The {@link METAPerformanceMetrics XR_META_performance_metrics} extension must be enabled prior to using ##XrPerformanceMetricsCounterMETA
+ - {@code type} must be #TYPE_PERFORMANCE_METRICS_COUNTER_META
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code counterFlags} must be 0 or a valid combination of {@code XrPerformanceMetricsCounterFlagBitsMETA} values
+ - {@code counterUnit} must be a valid {@code XrPerformanceMetricsCounterUnitMETA} value
See Also
- #SetVirtualKeyboardModelVisibilityMETA()
+ #QueryPerformanceMetricsCounterMETA()
"""
- Expression("#TYPE_VIRTUAL_KEYBOARD_MODEL_VISIBILITY_SET_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
+ Expression("#TYPE_PERFORMANCE_METRICS_COUNTER_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrBool32("visible", "an {@code XrBool32} that controls whether to show or hide the keyboard.")
+ XrPerformanceMetricsCounterFlagsMETA("counterFlags", "a bitmask of {@code XrPerformanceMetricsCounterFlagBitsMETA} describing the validity of value members.")
+ XrPerformanceMetricsCounterUnitMETA("counterUnit", "a enum of {@code XrPerformanceMetricsCounterUnitMETA} describing the measurement unit.")
+ uint32_t("uintValue", "the counter value in {@code uint32_t} format. It is valid if {@code counterFlags} contains #PERFORMANCE_METRICS_COUNTER_UINT_VALUE_VALID_BIT_META.")
+ float("floatValue", "the counter value in {@code float} format. It is valid if {@code counterFlags} contains #PERFORMANCE_METRICS_COUNTER_FLOAT_VALUE_VALID_BIT_META.")
}
-val XrVirtualKeyboardAnimationStateMETA = struct(Module.OPENXR, "XrVirtualKeyboardAnimationStateMETA") {
+val XrSpaceListSaveInfoFB = struct(Module.OPENXR, "XrSpaceListSaveInfoFB") {
documentation =
"""
- State for a single animation.
+ Parameters for a list save operation.
+
+ Description
+ The ##XrSpaceListSaveInfoFB structure contains information used to save multiple spatial entities.
Valid Usage (Implicit)
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardAnimationStateMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_ANIMATION_STATE_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - The {@link FBSpatialEntityStorageBatch XR_FB_spatial_entity_storage_batch} extension must be enabled prior to using ##XrSpaceListSaveInfoFB
+ - {@code type} must be #TYPE_SPACE_LIST_SAVE_INFO_FB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code spaces} must be a pointer to an array of {@code spaceCount} {@code XrSpace} handles
+ - {@code location} must be a valid {@code XrSpaceStorageLocationFB} value
+ - The {@code spaceCount} parameter must be greater than 0
See Also
- ##XrVirtualKeyboardModelAnimationStatesMETA
+ #SaveSpaceListFB()
"""
- Expression("#TYPE_VIRTUAL_KEYBOARD_ANIMATION_STATE_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- int32_t("animationIndex", "the index of the animation to use for the render model.")
- float("fraction", "the normalized value between the start and end time of the animation.")
+ Expression("#TYPE_SPACE_LIST_SAVE_INFO_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
+ nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
+ AutoSize("spaces")..uint32_t("spaceCount", "the number of spatial entities to save.")
+ XrSpace.p("spaces", "a list of {@code XrSpace} handles for the entities to be saved.")
+ XrSpaceStorageLocationFB("location", "the storage location.")
}
-val XrVirtualKeyboardModelAnimationStatesMETA = struct(Module.OPENXR, "XrVirtualKeyboardModelAnimationStatesMETA") {
+val XrEventDataSpaceListSaveCompleteFB = struct(Module.OPENXR, "XrEventDataSpaceListSaveCompleteFB", mutable = false, parentStruct = XrEventDataBaseHeader) {
documentation =
"""
- Virtual keyboard model animation states.
+ Describes the completion of a save list operation.
+
+ Description
+ This completion event indicates that a request to save a list of {@code XrSpace} objects has completed. The application can use {@code result} to check if the request was successful or if an error occurred.
+
+ Result Codes
+
+ - On success, the value of this parameter is
+
+
+ - On failure, the value of this parameter is
+
+ - #ERROR_RUNTIME_FAILURE
+ - #ERROR_SPACE_MAPPING_INSUFFICIENT_FB
+ - #ERROR_SPACE_LOCALIZATION_FAILED_FB
+ - #ERROR_SPACE_NETWORK_TIMEOUT_FB
+ - #ERROR_SPACE_NETWORK_REQUEST_FAILED_FB
+ - #ERROR_SPACE_CLOUD_STORAGE_DISABLED_FB
+
+
Valid Usage (Implicit)
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardModelAnimationStatesMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_MODEL_ANIMATION_STATES_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - If {@code stateCapacityInput} is not 0, {@code states} must be a pointer to an array of {@code stateCapacityInput} ##XrVirtualKeyboardAnimationStateMETA structures
+ - The {@link FBSpatialEntityStorageBatch XR_FB_spatial_entity_storage_batch} extension must be enabled prior to using ##XrEventDataSpaceListSaveCompleteFB
+ - {@code type} must be #TYPE_EVENT_DATA_SPACE_LIST_SAVE_COMPLETE_FB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
-
- See Also
- ##XrVirtualKeyboardAnimationStateMETA, #GetVirtualKeyboardModelAnimationStatesMETA()
"""
- Expression("#TYPE_VIRTUAL_KEYBOARD_MODEL_ANIMATION_STATES_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- AutoSize("states", optional = true)..uint32_t("stateCapacityInput", "the capacity of the {@code states} array, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("stateCountOutput", "filled in by the runtime with the count of ##XrVirtualKeyboardAnimationStateMETA written or the required capacity in the case that {@code stateCapacityInput} is insufficient.")
- nullable..XrVirtualKeyboardAnimationStateMETA.p("states", "the array of ##XrVirtualKeyboardAnimationStateMETA to apply to the model.")
+ Expression("#TYPE_EVENT_DATA_SPACE_LIST_SAVE_COMPLETE_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
+ nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
+ XrAsyncRequestIdFB("requestId", "the ID of the asynchronous request to save an entity.")
+ XrResult("result", "an {@code XrResult} that describes whether the request succeeded or if an error occurred.")
}
-val XrVirtualKeyboardTextureDataMETA = struct(Module.OPENXR, "XrVirtualKeyboardTextureDataMETA") {
+val XrSpaceUserCreateInfoFB = struct(Module.OPENXR, "XrSpaceUserCreateInfoFB") {
documentation =
"""
- Virtual keyboard texture data.
-
- Valid Usage (Implicit)
-
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardTextureDataMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_TEXTURE_DATA_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - If {@code bufferCapacityInput} is not 0, {@code buffer} must be a pointer to an array of {@code bufferCapacityInput} {@code uint8_t} values
-
-
- See Also
- #GetVirtualKeyboardTextureDataMETA()
- """
-
- Expression("#TYPE_VIRTUAL_KEYBOARD_TEXTURE_DATA_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- uint32_t("textureWidth", "the pixel width of the texture to be updated.")
- uint32_t("textureHeight", "the pixel height of the texture to be updated.")
- AutoSize("buffer", optional = true)..uint32_t("bufferCapacityInput", "the capacity of {@code buffer}, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("bufferCountOutput", "filled in by the runtime with the byte count written or the required capacity in the case that {@code bufferCapacityInput} is insufficient.")
- nullable..uint8_t.p("buffer", "the pixel data in linear color space, RGBA 8-bit unsigned normalized integer format (i.e. GL_RGBA8 in OpenGL, VK_FORMAT_R8G8B8A8_UNORM in Vulkan).")
-}
-
-val XrVirtualKeyboardInputInfoMETA = struct(Module.OPENXR, "XrVirtualKeyboardInputInfoMETA") {
- documentation =
- """
- Virtual keyboard input info.
-
- Valid Usage (Implicit)
-
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardInputInfoMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_INPUT_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code inputSource} must be a valid {@code XrVirtualKeyboardInputSourceMETA} value
- - If {@code inputSpace} is not #NULL_HANDLE, {@code inputSpace} must be a valid {@code XrSpace} handle
- - {@code inputState} must be 0 or a valid combination of {@code XrVirtualKeyboardInputStateFlagBitsMETA} values
-
-
- See Also
- ##XrPosef, #SendVirtualKeyboardInputMETA()
- """
-
- Expression("#TYPE_VIRTUAL_KEYBOARD_INPUT_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrVirtualKeyboardInputSourceMETA("inputSource", "an enum of {@code XrVirtualKeyboardInputSourceMETA} describing the source device and input mode type.")
- nullable..XrSpace("inputSpace", "an {@code XrSpace} previously created by a function such as #CreateReferenceSpace().")
- XrPosef("inputPoseInSpace", "an ##XrPosef defining the position and orientation of the input’s source pose within the natural reference frame of the input space.")
- XrVirtualKeyboardInputStateFlagsMETA("inputState", "a bitmask of {@code XrVirtualKeyboardInputStateFlagsMETA} describing the button or pinch state of the {@code inputSource}.")
-}
-
-val XrVirtualKeyboardTextContextChangeInfoMETA = struct(Module.OPENXR, "XrVirtualKeyboardTextContextChangeInfoMETA") {
- documentation =
- """
- Virtual keyboard text context change info.
-
- Valid Usage (Implicit)
-
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrVirtualKeyboardTextContextChangeInfoMETA
- - {@code type} must be #TYPE_VIRTUAL_KEYBOARD_TEXT_CONTEXT_CHANGE_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code textContext} must be a null-terminated UTF-8 string
-
-
- See Also
- #ChangeVirtualKeyboardTextContextMETA()
- """
-
- Expression("#TYPE_VIRTUAL_KEYBOARD_TEXT_CONTEXT_CHANGE_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- charUTF8.const.p("textContext", "a pointer to a {@code char} buffer, should contain prior input text context terminated with a null character.")
-}
-
-val XrEventDataVirtualKeyboardCommitTextMETA = struct(Module.OPENXR, "XrEventDataVirtualKeyboardCommitTextMETA") {
- javaImport("static org.lwjgl.openxr.METAVirtualKeyboard.*")
- documentation =
- """
- Commit text event.
-
- Description
- The ##XrEventDataVirtualKeyboardCommitTextMETA event must be sent by the runtime when a character or string is input by the keyboard. The application should append to the text field that the keyboard is editing.
-
- Valid Usage (Implicit)
-
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrEventDataVirtualKeyboardCommitTextMETA
- - {@code type} must be #TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_COMMIT_TEXT_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code keyboard} must be a valid {@code XrVirtualKeyboardMETA} handle
- - {@code text} must be a null-terminated UTF-8 string whose length is less than or equal to #MAX_VIRTUAL_KEYBOARD_COMMIT_TEXT_SIZE_META
-
-
- See Also
- #PollEvent()
- """
-
- Expression("#TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_COMMIT_TEXT_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrVirtualKeyboardMETA("keyboard", "the {@code XrVirtualKeyboardMETA} this event belongs to.")
- charUTF8("text", "the text string input by the keyboard.")["XR_MAX_VIRTUAL_KEYBOARD_COMMIT_TEXT_SIZE_META"]
-}
-
-val XrEventDataVirtualKeyboardBackspaceMETA = struct(Module.OPENXR, "XrEventDataVirtualKeyboardBackspaceMETA") {
- documentation =
- """
- Backspace key event.
-
- Description
- The ##XrEventDataVirtualKeyboardBackspaceMETA event must be sent by the runtime when the [Backspace] key is pressed. The application should update the text field that the keyboard is editing.
-
- Valid Usage (Implicit)
-
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrEventDataVirtualKeyboardBackspaceMETA
- - {@code type} must be #TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_BACKSPACE_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code keyboard} must be a valid {@code XrVirtualKeyboardMETA} handle
-
-
- See Also
- #PollEvent()
- """
-
- Expression("#TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_BACKSPACE_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrVirtualKeyboardMETA("keyboard", "the {@code XrVirtualKeyboardMETA} this event belongs to.")
-}
-
-val XrEventDataVirtualKeyboardEnterMETA = struct(Module.OPENXR, "XrEventDataVirtualKeyboardEnterMETA") {
- documentation =
- """
- Enter key event.
-
- Description
- The ##XrEventDataVirtualKeyboardEnterMETA event must be sent by the runtime when the [Enter] key is pressed. The application should respond accordingly (e.g. newline, accept, etc).
-
- Valid Usage (Implicit)
-
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrEventDataVirtualKeyboardEnterMETA
- - {@code type} must be #TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_ENTER_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code keyboard} must be a valid {@code XrVirtualKeyboardMETA} handle
-
-
- See Also
- #PollEvent()
- """
-
- Expression("#TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_ENTER_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrVirtualKeyboardMETA("keyboard", "the {@code XrVirtualKeyboardMETA} this event belongs to.")
-}
-
-val XrEventDataVirtualKeyboardShownMETA = struct(Module.OPENXR, "XrEventDataVirtualKeyboardShownMETA") {
- documentation =
- """
- Keyboard shown event.
-
- Description
- The ##XrEventDataVirtualKeyboardShownMETA event must be sent when the runtime has shown the keyboard render model (via animation). The application should update its state accordingly (e.g. update UI, pause simulation, etc).
-
- Valid Usage (Implicit)
-
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrEventDataVirtualKeyboardShownMETA
- - {@code type} must be #TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_SHOWN_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code keyboard} must be a valid {@code XrVirtualKeyboardMETA} handle
-
-
- See Also
- #PollEvent()
- """
-
- Expression("#TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_SHOWN_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrVirtualKeyboardMETA("keyboard", "the {@code XrVirtualKeyboardMETA} this event belongs to.")
-}
-
-val XrEventDataVirtualKeyboardHiddenMETA = struct(Module.OPENXR, "XrEventDataVirtualKeyboardHiddenMETA") {
- documentation =
- """
- Keyboard hidden event.
-
- Description
- The ##XrEventDataVirtualKeyboardHiddenMETA event must be sent when the keyboard render model is hidden by the runtime (via animation). The application should update its state accordingly (e.g. update UI, resume simulation, etc).
-
- Valid Usage (Implicit)
-
- - The {@link METAVirtualKeyboard XR_META_virtual_keyboard} extension must be enabled prior to using ##XrEventDataVirtualKeyboardHiddenMETA
- - {@code type} must be #TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_HIDDEN_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code keyboard} must be a valid {@code XrVirtualKeyboardMETA} handle
-
-
- See Also
- #PollEvent()
- """
-
- Expression("#TYPE_EVENT_DATA_VIRTUAL_KEYBOARD_HIDDEN_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrVirtualKeyboardMETA("keyboard", "the {@code XrVirtualKeyboardMETA} this event belongs to.")
-}
-
-val XrExternalCameraIntrinsicsOCULUS = struct(Module.OPENXR, "XrExternalCameraIntrinsicsOCULUS") {
- documentation =
- """
- Camera intrintics state.
-
- Valid Usage (Implicit)
-
- - The {@link OCULUSExternalCamera XR_OCULUS_external_camera} extension must be enabled prior to using ##XrExternalCameraIntrinsicsOCULUS
-
-
- See Also
- ##XrExtent2Di, ##XrExternalCameraOCULUS, ##XrFovf
- """
-
- XrTime("lastChangeTime", "the {@code XrTime} when this camera’s intrinsics last changed.")
- XrFovf("fov", "the ##XrFovf for this camera’s viewport.")
- float("virtualNearPlaneDistance", "the near plane distance of the virtual camera used to match the external camera")
- float("virtualFarPlaneDistance", "the far plane distance of the virtual camera used to match the external camera")
- XrExtent2Di("imageSensorPixelResolution", "the ##XrExtent2Di specifying the camera’s resolution (in pixels).")
-}
-
-val XrExternalCameraExtrinsicsOCULUS = struct(Module.OPENXR, "XrExternalCameraExtrinsicsOCULUS") {
- documentation =
- """
- Camera extrinsics state.
-
- Valid Usage (Implicit)
-
- - The {@link OCULUSExternalCamera XR_OCULUS_external_camera} extension must be enabled prior to using ##XrExternalCameraExtrinsicsOCULUS
- - {@code cameraStatusFlags} must be 0 or a valid combination of {@code XrExternalCameraStatusFlagBitsOCULUS} values
- - {@code attachedToDevice} must be a valid {@code XrExternalCameraAttachedToDeviceOCULUS} value
-
-
- See Also
- ##XrExternalCameraOCULUS, ##XrPosef
- """
-
- XrTime("lastChangeTime", "the {@code XrTime} when this camera’s extrinsics last changed.")
- XrExternalCameraStatusFlagsOCULUS("cameraStatusFlags", "the {@code XrExternalCameraStatusFlagsOCULUS} for this camera’s status.")
- XrExternalCameraAttachedToDeviceOCULUS("attachedToDevice", "the {@code XrExternalCameraAttachedToDeviceOCULUS} for the device this camera is attached to")
- XrPosef("relativePose", "the ##XrPosef for offset of the camera from the device that the camera is attached to")
-}
-
-val XrExternalCameraOCULUS = struct(Module.OPENXR, "XrExternalCameraOCULUS", mutable = false) {
- javaImport("static org.lwjgl.openxr.OCULUSExternalCamera.*")
- documentation =
- """
- Camera intrintics state.
-
- Valid Usage (Implicit)
-
- - The {@link OCULUSExternalCamera XR_OCULUS_external_camera} extension must be enabled prior to using ##XrExternalCameraOCULUS
- - {@code type} must be #TYPE_EXTERNAL_CAMERA_OCULUS
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
-
-
- See Also
- ##XrExternalCameraExtrinsicsOCULUS, ##XrExternalCameraIntrinsicsOCULUS, #EnumerateExternalCamerasOCULUS()
- """
-
- Expression("#TYPE_EXTERNAL_CAMERA_OCULUS")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
- charUTF8("name", "a null-terminated UTF-8 string containing a camera identifier: VID (vendor ID), PID (product ID), and serial number")["XR_MAX_EXTERNAL_CAMERA_NAME_SIZE_OCULUS"]
- XrExternalCameraIntrinsicsOCULUS("intrinsics", "the ##XrExternalCameraIntrinsicsOCULUS for the camera")
- XrExternalCameraExtrinsicsOCULUS("extrinsics", "the ##XrExternalCameraExtrinsicsOCULUS for the camera")
-}
-
-val XrVulkanSwapchainCreateInfoMETA = struct(Module.OPENXR, "XrVulkanSwapchainCreateInfoMETA") {
- javaImport("org.lwjgl.vulkan.*")
- documentation =
- """
- Debug utils object name info.
-
- Description
- The runtime must return #ERROR_FEATURE_UNSUPPORTED if any bit of either {@code additionalCreateFlags} or {@code additionalUsageFlags} is not supported.
-
- Valid Usage (Implicit)
-
- - The {@link METAVulkanSwapchainCreateInfo XR_META_vulkan_swapchain_create_info} extension must be enabled prior to using ##XrVulkanSwapchainCreateInfoMETA
- - {@code type} must be #TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code additionalCreateFlags} must be a valid {@code VkImageCreateFlags} value
- - {@code additionalUsageFlags} must be a valid {@code VkImageUsageFlags} value
-
- """
-
- Expression("#TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- VkImageCreateFlags("additionalCreateFlags", "a bitmask of {@code VkImageCreateFlags} describing additional parameters of an image.")
- VkImageUsageFlags("additionalUsageFlags", "a bitmask of {@code VkImageUsageFlags} describing additional parameters of an image.")
-}
-
-val XrPerformanceMetricsStateMETA = struct(Module.OPENXR, "XrPerformanceMetricsStateMETA") {
- documentation =
- """
- Performance metrics enable state.
-
- Description
- ##XrPerformanceMetricsStateMETA is provided as input when calling #SetPerformanceMetricsStateMETA() to enable or disable the performance metrics system. ##XrPerformanceMetricsStateMETA is populated as an output parameter when calling #GetPerformanceMetricsStateMETA() to query if the performance metrics system is enabled.
-
- Valid Usage (Implicit)
-
- - The {@link METAPerformanceMetrics XR_META_performance_metrics} extension must be enabled prior to using ##XrPerformanceMetricsStateMETA
- - {@code type} must be #TYPE_PERFORMANCE_METRICS_STATE_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
-
-
- See Also
- #GetPerformanceMetricsStateMETA(), #SetPerformanceMetricsStateMETA()
- """
-
- Expression("#TYPE_PERFORMANCE_METRICS_STATE_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrBool32("enabled", "set to #TRUE to indicate the performance metrics system is enabled, #FALSE otherwise, when getting state. When setting state, set to #TRUE to enable the performance metrics system and #FALSE to disable it.")
-}
-
-val XrPerformanceMetricsCounterMETA = struct(Module.OPENXR, "XrPerformanceMetricsCounterMETA") {
- documentation =
- """
- Performance metrics counter value.
-
- Description
- ##XrPerformanceMetricsCounterMETA is populated by calling #QueryPerformanceMetricsCounterMETA() to query real-time performance metrics counter information.
-
- Valid Usage (Implicit)
-
- - The {@link METAPerformanceMetrics XR_META_performance_metrics} extension must be enabled prior to using ##XrPerformanceMetricsCounterMETA
- - {@code type} must be #TYPE_PERFORMANCE_METRICS_COUNTER_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code counterFlags} must be 0 or a valid combination of {@code XrPerformanceMetricsCounterFlagBitsMETA} values
- - {@code counterUnit} must be a valid {@code XrPerformanceMetricsCounterUnitMETA} value
-
-
- See Also
- #QueryPerformanceMetricsCounterMETA()
- """
-
- Expression("#TYPE_PERFORMANCE_METRICS_COUNTER_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrPerformanceMetricsCounterFlagsMETA("counterFlags", "a bitmask of {@code XrPerformanceMetricsCounterFlagBitsMETA} describing the validity of value members.")
- XrPerformanceMetricsCounterUnitMETA("counterUnit", "a enum of {@code XrPerformanceMetricsCounterUnitMETA} describing the measurement unit.")
- uint32_t("uintValue", "the counter value in {@code uint32_t} format. It is valid if {@code counterFlags} contains #PERFORMANCE_METRICS_COUNTER_UINT_VALUE_VALID_BIT_META.")
- float("floatValue", "the counter value in {@code float} format. It is valid if {@code counterFlags} contains #PERFORMANCE_METRICS_COUNTER_FLOAT_VALUE_VALID_BIT_META.")
-}
-
-val XrSpaceListSaveInfoFB = struct(Module.OPENXR, "XrSpaceListSaveInfoFB") {
- documentation =
- """
- Parameters for a list save operation.
-
- Description
- The ##XrSpaceListSaveInfoFB structure contains information used to save multiple spatial entities.
-
- Valid Usage (Implicit)
-
- - The {@link FBSpatialEntityStorageBatch XR_FB_spatial_entity_storage_batch} extension must be enabled prior to using ##XrSpaceListSaveInfoFB
- - {@code type} must be #TYPE_SPACE_LIST_SAVE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code spaces} must be a pointer to an array of {@code spaceCount} {@code XrSpace} handles
- - {@code location} must be a valid {@code XrSpaceStorageLocationFB} value
- - The {@code spaceCount} parameter must be greater than 0
-
-
- See Also
- #SaveSpaceListFB()
- """
-
- Expression("#TYPE_SPACE_LIST_SAVE_INFO_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- AutoSize("spaces")..uint32_t("spaceCount", "the number of spatial entities to save.")
- XrSpace.p("spaces", "a list of {@code XrSpace} handles for the entities to be saved.")
- XrSpaceStorageLocationFB("location", "the storage location.")
-}
-
-val XrEventDataSpaceListSaveCompleteFB = struct(Module.OPENXR, "XrEventDataSpaceListSaveCompleteFB", mutable = false, parentStruct = XrEventDataBaseHeader) {
- documentation =
- """
- Describes the completion of a save list operation.
-
- Description
- This completion event indicates that a request to save a list of {@code XrSpace} objects has completed. The application can use {@code result} to check if the request was successful or if an error occurred.
-
- Result Codes
-
- - On success, the value of this parameter is
-
-
- - On failure, the value of this parameter is
-
- - #ERROR_RUNTIME_FAILURE
- - #ERROR_SPACE_MAPPING_INSUFFICIENT_FB
- - #ERROR_SPACE_LOCALIZATION_FAILED_FB
- - #ERROR_SPACE_NETWORK_TIMEOUT_FB
- - #ERROR_SPACE_NETWORK_REQUEST_FAILED_FB
- - #ERROR_SPACE_CLOUD_STORAGE_DISABLED_FB
-
-
-
- Valid Usage (Implicit)
-
- - The {@link FBSpatialEntityStorageBatch XR_FB_spatial_entity_storage_batch} extension must be enabled prior to using ##XrEventDataSpaceListSaveCompleteFB
- - {@code type} must be #TYPE_EVENT_DATA_SPACE_LIST_SAVE_COMPLETE_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
-
- """
-
- Expression("#TYPE_EVENT_DATA_SPACE_LIST_SAVE_COMPLETE_FB")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
- XrAsyncRequestIdFB("requestId", "the ID of the asynchronous request to save an entity.")
- XrResult("result", "an {@code XrResult} that describes whether the request succeeded or if an error occurred.")
-}
-
-val XrSpaceUserCreateInfoFB = struct(Module.OPENXR, "XrSpaceUserCreateInfoFB") {
- documentation =
- """
- Describes a user.
+ Describes a user.
Description
The ##XrSpaceUserCreateInfoFB structure describes a user with which the application can interact.
@@ -7060,7 +6728,7 @@ val XrSpaceUserCreateInfoFB = struct(Module.OPENXR, "XrSpaceUserCreateInfoFB") {
- The {@link FBSpatialEntityUser XR_FB_spatial_entity_user} extension must be enabled prior to using ##XrSpaceUserCreateInfoFB
- {@code type} must be #TYPE_SPACE_USER_CREATE_INFO_FB
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -7088,13 +6756,13 @@ val XrSystemHeadsetIdPropertiesMETA = struct(Module.OPENXR, "XrSystemHeadsetIdPr
This is in contrast to the {@code systemName} field in ##XrSystemProperties which is not required to be consistent across product renames.
- This is intended to be a temporary feature that will be deprecated along with its extension as soon as motivating use cases are resolved in a better way. See the disclaimer at the start of the {@link METAHeadsetId XR_META_headset_id} extension documentation for more details.
+ This is intended to be a temporary feature that will be deprecated along with its extension as soon as motivating use cases are resolved in a better way. See the disclaimer at the start of the XR_META_headset_id extension documentation for more details.
Valid Usage (Implicit)
- The {@link METAHeadsetId XR_META_headset_id} extension must be enabled prior to using ##XrSystemHeadsetIdPropertiesMETA
- {@code type} must be #TYPE_SYSTEM_HEADSET_ID_PROPERTIES_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -7106,173 +6774,6 @@ val XrSystemHeadsetIdPropertiesMETA = struct(Module.OPENXR, "XrSystemHeadsetIdPr
XrUuidEXT("id", "the ##XrUuidEXT corresponding to the headset model.")
}
-val XrPassthroughColorLutDataMETA = struct(Module.OPENXR, "XrPassthroughColorLutDataMETA") {
- documentation =
- """
- Passthrough color LUT data.
-
- Description
- ##XrPassthroughColorLutDataMETA defines the LUT data for a color LUT. This structure is used when creating and updating color LUTs.
-
- Valid Usage (Implicit)
-
- - The {@link METAPassthroughColorLut XR_META_passthrough_color_lut} extension must be enabled prior to using ##XrPassthroughColorLutDataMETA
- - {@code buffer} must be a pointer to an array of {@code bufferSize} {@code uint8_t} values
- - The {@code bufferSize} parameter must be greater than 0
-
-
- See Also
- ##XrPassthroughColorLutCreateInfoMETA, ##XrPassthroughColorLutUpdateInfoMETA
- """
-
- AutoSize("buffer")..uint32_t("bufferSize", "the number of bytes contained in the buffer data.")
- uint8_t.const.p("buffer", "a pointer to a memory block of {@code bufferSize} bytes that contains the LUT data.")
-}
-
-val XrPassthroughColorLutCreateInfoMETA = struct(Module.OPENXR, "XrPassthroughColorLutCreateInfoMETA") {
- documentation =
- """
- Passthrough color LUT creation info.
-
- Description
- {@code resolution} must be a power of 2, otherwise the runtime must return #ERROR_VALIDATION_FAILURE. The runtime may impose a limit on the maximum supported resolution, which is indicated in ##XrSystemPassthroughColorLutPropertiesMETA. If {@code resolution} exceeds that limit, the runtime must return #ERROR_VALIDATION_FAILURE.
-
- {@code data} contains a 3-dimensional array which defines an output color for each RGB input color. The input color is scaled to be in the range [0, resolution]
. For an RGBA LUT, the RGBA tuple of output colors for an input color (Rin, Gin, Bin)
is found in the four bytes starting at the offset 4 * (Rin + Gin * resolution + Bin * resolution2)
. For an RGB LUT, the RGB tuple of output colors for an input color (Rin, Gin, Bin)
is found in the three bytes starting at the offset 3 * (Rin + Gin * resolution + Bin * resolution2)
.
-
- Color LUT data must be specified and interpreted in sRGB color space.
-
- Runtimes must employ trilinear interpolation of neighboring color values if the resolution of the color LUT is smaller than the bit depth of the input colors.
-
- The value of {@code bufferSize} in {@code data} must be equal to resolution3 * bytesPerElement
, where bytesPerElement
is either 3 or 4 depending on {@code channels}. Otherwise, the runtime must return #ERROR_PASSTHROUGH_COLOR_LUT_BUFFER_SIZE_MISMATCH_META.
-
- Valid Usage (Implicit)
-
- - The {@link METAPassthroughColorLut XR_META_passthrough_color_lut} extension must be enabled prior to using ##XrPassthroughColorLutCreateInfoMETA
- - {@code type} must be #TYPE_PASSTHROUGH_COLOR_LUT_CREATE_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code channels} must be a valid {@code XrPassthroughColorLutChannelsMETA} value
- - {@code data} must be a valid ##XrPassthroughColorLutDataMETA structure
-
-
- See Also
- ##XrPassthroughColorLutDataMETA, #CreatePassthroughColorLutMETA()
- """
-
- Expression("#TYPE_PASSTHROUGH_COLOR_LUT_CREATE_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrPassthroughColorLutChannelsMETA("channels", "defines the color channels expected in one LUT element. The number of bytes expected per LUT element is 3 for #PASSTHROUGH_COLOR_LUT_CHANNELS_RGB_META and 4 for #PASSTHROUGH_COLOR_LUT_CHANNELS_RGBA_META.")
- uint32_t("resolution", "the number of LUT elements per input channel. The total number of elements in the LUT is resolution3
.")
- XrPassthroughColorLutDataMETA("data", "contains the data the LUT is initialized with.")
-}
-
-val XrPassthroughColorLutUpdateInfoMETA = struct(Module.OPENXR, "XrPassthroughColorLutUpdateInfoMETA") {
- documentation =
- """
- Passthrough color LUT update info.
-
- Description
- The LUT data may be updated for an existing color LUT, while channels and resolution remain constant after creation. Hence, the value of {@code bufferSize} in {@code data} must be equal to the buffer size specified at creation. Otherwise, the runtime must return #ERROR_PASSTHROUGH_COLOR_LUT_BUFFER_SIZE_MISMATCH_META.
-
- Valid Usage (Implicit)
-
- - The {@link METAPassthroughColorLut XR_META_passthrough_color_lut} extension must be enabled prior to using ##XrPassthroughColorLutUpdateInfoMETA
- - {@code type} must be #TYPE_PASSTHROUGH_COLOR_LUT_UPDATE_INFO_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code data} must be a valid ##XrPassthroughColorLutDataMETA structure
-
-
- See Also
- ##XrPassthroughColorLutDataMETA, #UpdatePassthroughColorLutMETA()
- """
-
- Expression("#TYPE_PASSTHROUGH_COLOR_LUT_UPDATE_INFO_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrPassthroughColorLutDataMETA("data", "contains the updated LUT data.")
-}
-
-val XrPassthroughColorMapLutMETA = struct(Module.OPENXR, "XrPassthroughColorMapLutMETA") {
- documentation =
- """
- A color map defined by a LUT.
-
- Description
- ##XrPassthroughColorMapLutMETA lets applications apply a color LUT to a passthrough layer. Other Passthrough style elements (such as edges) must not be affected by color LUTs.
-
- Applications may use {@code weight} to efficiently blend between the original colors and the mapped colors. The blend is computed as (1 - weight) * Cin + weight * colorLut[Cin]
.
-
- ##XrPassthroughColorMapLutMETA is provided in the {@code next} chain of ##XrPassthroughStyleFB when calling #PassthroughLayerSetStyleFB(). Subsequent calls to #PassthroughLayerSetStyleFB() with ##XrPassthroughColorMapLutMETA in the {@code next} chain update the color LUT for that layer. Subsequent calls to #PassthroughLayerSetStyleFB() without this ##XrPassthroughColorMapLutMETA (or ##XrPassthroughColorMapInterpolatedLutMETA) in the next chain disable color LUTs for that layer.
-
- Valid Usage (Implicit)
-
- - The {@link METAPassthroughColorLut XR_META_passthrough_color_lut} extension must be enabled prior to using ##XrPassthroughColorMapLutMETA
- - {@code type} must be #TYPE_PASSTHROUGH_COLOR_MAP_LUT_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code colorLut} must be a valid {@code XrPassthroughColorLutMETA} handle
-
- """
-
- Expression("#TYPE_PASSTHROUGH_COLOR_MAP_LUT_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrPassthroughColorLutMETA("colorLut", "an {@code XrPassthroughColorLutMETA}.")
- float("weight", "a factor in the range [0, 1]
which defines the linear blend between the original and the mapped colors for the output color.")
-}
-
-val XrPassthroughColorMapInterpolatedLutMETA = struct(Module.OPENXR, "XrPassthroughColorMapInterpolatedLutMETA") {
- documentation =
- """
- A color map defined by the interpolation between two LUTs.
-
- Description
- ##XrPassthroughColorMapInterpolatedLutMETA lets applications apply the interpolation between two color LUTs to a passthrough layer. Applications may use this feature to smoothly transition between two color LUTs. Other Passthrough style elements (such as edges) must not be affected by color LUTs.
-
- The blend between {@code sourceColorLut} and {@code targetColorLut} is computed as (1 - weight) * sourceColorLut[Cin] + weight * targetColorLut[Cin]
.
-
- ##XrPassthroughColorMapInterpolatedLutMETA is provided in the {@code next} chain of ##XrPassthroughStyleFB when calling #PassthroughLayerSetStyleFB(). Subsequent calls to #PassthroughLayerSetStyleFB() with ##XrPassthroughColorMapInterpolatedLutMETA in the next chain update the color LUT for that layer. Subsequent calls to #PassthroughLayerSetStyleFB() without this ##XrPassthroughColorMapInterpolatedLutMETA (or ##XrPassthroughColorMapLutMETA) in the next chain disable color LUTs for that layer.
-
- Valid Usage (Implicit)
-
- - The {@link METAPassthroughColorLut XR_META_passthrough_color_lut} extension must be enabled prior to using ##XrPassthroughColorMapInterpolatedLutMETA
- - {@code type} must be #TYPE_PASSTHROUGH_COLOR_MAP_INTERPOLATED_LUT_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code sourceColorLut} must be a valid {@code XrPassthroughColorLutMETA} handle
- - {@code targetColorLut} must be a valid {@code XrPassthroughColorLutMETA} handle
- - Both of {@code sourceColorLut} and {@code targetColorLut} must have been created, allocated, or retrieved from the same {@code XrPassthroughFB}
-
- """
-
- Expression("#TYPE_PASSTHROUGH_COLOR_MAP_INTERPOLATED_LUT_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrPassthroughColorLutMETA("sourceColorLut", "the initial {@code XrPassthroughColorLutMETA}.")
- XrPassthroughColorLutMETA("targetColorLut", "the final {@code XrPassthroughColorLutMETA}.")
- float("weight", "a factor in the range [0, 1]
which defines the linear blend between the initial and the final color LUT.")
-}
-
-val XrSystemPassthroughColorLutPropertiesMETA = struct(Module.OPENXR, "XrSystemPassthroughColorLutPropertiesMETA", mutable = false) {
- documentation =
- """
- Passthrough color LUT system properties.
-
- Description
- When the {@link METAPassthroughColorLut XR_META_passthrough_color_lut} extension is enabled, an application may pass in an ##XrSystemPassthroughColorLutPropertiesMETA structure in next chain structure when calling #GetSystemProperties() to acquire information about the connected system.
-
- The runtime must populate the ##XrSystemPassthroughColorLutPropertiesMETA structure with the relevant information to the ##XrSystemProperties returned by the #GetSystemProperties() call.
-
- Valid Usage (Implicit)
-
- - The {@link METAPassthroughColorLut XR_META_passthrough_color_lut} extension must be enabled prior to using ##XrSystemPassthroughColorLutPropertiesMETA
- - {@code type} must be #TYPE_SYSTEM_PASSTHROUGH_COLOR_LUT_PROPERTIES_META
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
-
-
- See Also
- ##XrSystemProperties
- """
-
- Expression("#TYPE_SYSTEM_PASSTHROUGH_COLOR_LUT_PROPERTIES_META")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.").mutable()
- uint32_t("maxColorLutResolution", "Maximum value for ##XrPassthroughColorLutCreateInfoMETA{@code ::resolution} supported by the system. Runtimes implementing this extension must support a value of at least 32 for this property.")
-}
-
val XrPassthroughCreateInfoHTC = struct(Module.OPENXR, "XrPassthroughCreateInfoHTC") {
documentation =
"""
@@ -7282,7 +6783,7 @@ val XrPassthroughCreateInfoHTC = struct(Module.OPENXR, "XrPassthroughCreateInfoH
- The {@link HTCPassthrough XR_HTC_passthrough} extension must be enabled prior to using ##XrPassthroughCreateInfoHTC
- {@code type} must be #TYPE_PASSTHROUGH_CREATE_INFO_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code form} must be a valid {@code XrPassthroughFormHTC} value
@@ -7307,7 +6808,7 @@ val XrPassthroughColorHTC = struct(Module.OPENXR, "XrPassthroughColorHTC") {
- The {@link HTCPassthrough XR_HTC_passthrough} extension must be enabled prior to using ##XrPassthroughColorHTC
- {@code type} must be #TYPE_PASSTHROUGH_COLOR_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -7337,7 +6838,7 @@ val XrPassthroughMeshTransformInfoHTC = struct(Module.OPENXR, "XrPassthroughMesh
- The {@link HTCPassthrough XR_HTC_passthrough} extension must be enabled prior to using ##XrPassthroughMeshTransformInfoHTC
- {@code type} must be #TYPE_PASSTHROUGH_MESH_TRANSFORM_INFO_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code vertices} must be a pointer to an array of {@code vertexCount} ##XrVector3f structures
- {@code indices} must be a pointer to an array of {@code indexCount} {@code uint32_t} values
- {@code baseSpace} must be a valid {@code XrSpace} handle
@@ -7375,7 +6876,7 @@ val XrCompositionLayerPassthroughHTC = struct(Module.OPENXR, "XrCompositionLayer
- The {@link HTCPassthrough XR_HTC_passthrough} extension must be enabled prior to using ##XrCompositionLayerPassthroughHTC
- {@code type} must be #TYPE_COMPOSITION_LAYER_PASSTHROUGH_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrPassthroughMeshTransformInfoHTC
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrPassthroughMeshTransformInfoHTC
- {@code layerFlags} must be a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code layerFlags} must not be 0
- {@code space} must be a valid {@code XrSpace} handle
@@ -7424,7 +6925,7 @@ val XrFoveationApplyInfoHTC = struct(Module.OPENXR, "XrFoveationApplyInfoHTC") {
- The {@link HTCFoveation XR_HTC_foveation} extension must be enabled prior to using ##XrFoveationApplyInfoHTC
- {@code type} must be #TYPE_FOVEATION_APPLY_INFO_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFoveationCustomModeInfoHTC, ##XrFoveationDynamicModeInfoHTC
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFoveationCustomModeInfoHTC, ##XrFoveationDynamicModeInfoHTC
- {@code mode} must be a valid {@code XrFoveationModeHTC} value
- {@code subImages} must be a pointer to an array of {@code subImageCount} ##XrSwapchainSubImage structures
- The {@code subImageCount} parameter must be greater than 0
@@ -7476,7 +6977,7 @@ val XrFoveationDynamicModeInfoHTC = struct(Module.OPENXR, "XrFoveationDynamicMod
- The {@link HTCFoveation XR_HTC_foveation} extension must be enabled prior to using ##XrFoveationDynamicModeInfoHTC
- {@code type} must be #TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code dynamicFlags} must be 0 or a valid combination of {@code XrFoveationDynamicFlagBitsHTC} values
"""
@@ -7498,7 +6999,7 @@ val XrFoveationCustomModeInfoHTC = struct(Module.OPENXR, "XrFoveationCustomModeI
- The {@link HTCFoveation XR_HTC_foveation} extension must be enabled prior to using ##XrFoveationCustomModeInfoHTC
- {@code type} must be #TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code configs} must be a pointer to an array of {@code configCount} valid ##XrFoveationConfigurationHTC structures
- The {@code configCount} parameter must be greater than 0
@@ -7541,7 +7042,7 @@ val XrActiveActionSetPrioritiesEXT = struct(Module.OPENXR, "XrActiveActionSetPri
- The {@link EXTActiveActionSetPriority XR_EXT_active_action_set_priority} extension must be enabled prior to using ##XrActiveActionSetPrioritiesEXT
- {@code type} must be #TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code actionSetPriorities} must be a pointer to an array of {@code actionSetPriorityCount} valid ##XrActiveActionSetPriorityEXT structures
- The {@code actionSetPriorityCount} parameter must be greater than 0
@@ -7576,7 +7077,7 @@ val XrSystemForceFeedbackCurlPropertiesMNDX = struct(Module.OPENXR, "XrSystemFor
- The {@link MNDXForceFeedbackCurl XR_MNDX_force_feedback_curl} extension must be enabled prior to using ##XrSystemForceFeedbackCurlPropertiesMNDX
- {@code type} must be #TYPE_SYSTEM_FORCE_FEEDBACK_CURL_PROPERTIES_MNDX
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -7622,7 +7123,7 @@ val XrForceFeedbackCurlApplyLocationsMNDX = struct(Module.OPENXR, "XrForceFeedba
- The {@link MNDXForceFeedbackCurl XR_MNDX_force_feedback_curl} extension must be enabled prior to using ##XrForceFeedbackCurlApplyLocationsMNDX
- {@code type} must be #TYPE_FORCE_FEEDBACK_CURL_APPLY_LOCATIONS_MNDX
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code locations} must be a pointer to an array of {@code locationCount} ##XrForceFeedbackCurlApplyLocationMNDX structures
- The {@code locationCount} parameter must be greater than 0
@@ -7635,265 +7136,4 @@ val XrForceFeedbackCurlApplyLocationsMNDX = struct(Module.OPENXR, "XrForceFeedba
nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
AutoSize("locations")..uint32_t("locationCount", "the number of elements in the {@code locations} array.")
XrForceFeedbackCurlApplyLocationMNDX.p("locations", "a pointer to an array of locations to apply force feedback.")
-}
-
-val XrHandTrackingDataSourceInfoEXT = struct(Module.OPENXR, "XrHandTrackingDataSourceInfoEXT") {
- documentation =
- """
- Specify the data source to create the hand tracker.
-
- Description
- The ##XrHandTrackingDataSourceInfoEXT is a structure that an application can chain to ##XrHandTrackerCreateInfoEXT{@code ::next} to specify the hand tracking data sources that the application accepts.
-
- Because the hand tracking device may change during a running session, the runtime may return a valid {@code XrHandTrackerEXT} handle even if there is no currently active hand tracking device or the active device does not safisty any or all data sources requested by the applications’s call to #CreateHandTrackerEXT(). The runtime may instead return #ERROR_FEATURE_UNSUPPORTED from #CreateHandTrackerEXT(), if for example the runtime believes it will never be able to satisfy the request.
-
- If any value in {@code requestedDataSources} is duplicated, the runtime must return #ERROR_VALIDATION_FAILURE from the call to #CreateHandTrackerEXT(). If {@code requestedDataSourceCount} is 0, the runtime must return #ERROR_VALIDATION_FAILURE from the call to #CreateHandTrackerEXT().
-
- Valid Usage (Implicit)
-
- - The {@link EXTHandTrackingDataSource XR_EXT_hand_tracking_data_source} extension must be enabled prior to using ##XrHandTrackingDataSourceInfoEXT
- - {@code type} must be #TYPE_HAND_TRACKING_DATA_SOURCE_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - If {@code requestedDataSourceCount} is not 0, {@code requestedDataSources} must be a pointer to an array of {@code requestedDataSourceCount} {@code XrHandTrackingDataSourceEXT} values
-
-
- See Also
- ##XrHandTrackerCreateInfoEXT, #CreateHandTrackerEXT()
- """
-
- Expression("#TYPE_HAND_TRACKING_DATA_SOURCE_INFO_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- AutoSize("requestedDataSources", optional = true)..uint32_t("requestedDataSourceCount", "the number of elements in the {@code requestedDataSources} array.")
- XrHandTrackingDataSourceEXT.p("requestedDataSources", "an array of {@code XrHandTrackingDataSourceEXT} that the application accepts.")
-}
-
-val XrHandTrackingDataSourceStateEXT = struct(Module.OPENXR, "XrHandTrackingDataSourceStateEXT") {
- documentation =
- """
- Chains to ##XrHandJointLocationsEXT to get hand tracking data source state.
-
- Description
- ##XrHandTrackingDataSourceStateEXT is a structure that an application can chain to ##XrHandJointLocationsEXT{@code ::next} when calling #LocateHandJointsEXT() to retrieve the data source of the currently active hand tracking device.
-
- When the returned {@code isActive} is {@code XR_FALSE}, it indicates the currently active hand tracking device does not support any of the requested data sources. In these cases, the runtime must also return no valid tracking locations for hand joints from this #LocateHandJointsEXT() function.
-
- If the tracker was not created with ##XrHandTrackingDataSourceInfoEXT chained to ##XrHandTrackerCreateInfoEXT{@code ::next}, then the runtime must return #ERROR_VALIDATION_FAILURE, if ##XrHandTrackingDataSourceStateEXT is passed in the call to #LocateHandJointsEXT().
-
- If there is an active hand tracking device that is one of the specified {@code requestedDataSources}, the runtime must set {@code isActive} to #TRUE. When the runtime sets {@code isActive} to #TRUE, the runtime must set {@code dataSource} indicate the active data source. The runtime must return a {@code dataSource} that is a subset of the {@code requestedDataSources} when creating the corresponding hand tracker.
-
- Valid Usage (Implicit)
-
- - The {@link EXTHandTrackingDataSource XR_EXT_hand_tracking_data_source} extension must be enabled prior to using ##XrHandTrackingDataSourceStateEXT
- - {@code type} must be #TYPE_HAND_TRACKING_DATA_SOURCE_STATE_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code dataSource} must be a valid {@code XrHandTrackingDataSourceEXT} value
-
-
- See Also
- ##XrHandJointLocationsEXT, #LocateHandJointsEXT()
- """
-
- Expression("#TYPE_HAND_TRACKING_DATA_SOURCE_STATE_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- XrBool32("isActive", "indicating there is an active data source")
- XrHandTrackingDataSourceEXT("dataSource", "indicating the data source that was used to generate the hand tracking joints.")
-}
-
-val XrSystemPlaneDetectionPropertiesEXT = struct(Module.OPENXR, "XrSystemPlaneDetectionPropertiesEXT", mutable = false) {
- documentation =
- """
- System Properties of the Plane Detection extension.
-
- Valid Usage (Implicit)
-
- - The {@link EXTPlaneDetection XR_EXT_plane_detection} extension must be enabled prior to using ##XrSystemPlaneDetectionPropertiesEXT
- - {@code type} must be #TYPE_SYSTEM_PLANE_DETECTION_PROPERTIES_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
-
-
- See Also
- ##XrSystemProperties
- """
-
- Expression("#TYPE_SYSTEM_PLANE_DETECTION_PROPERTIES_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.").mutable()
- XrPlaneDetectionCapabilityFlagsEXT("supportedFeatures", "a bitfield, with bit masks defined in {@code XrPlaneDetectionCapabilityFlagBitsEXT}.")
-}
-
-val XrPlaneDetectorCreateInfoEXT = struct(Module.OPENXR, "XrPlaneDetectorCreateInfoEXT") {
- documentation =
- """
- Information to create a plane detection handle.
-
- Description
- The ##XrPlaneDetectorCreateInfoEXT structure describes the information to create an {@code XrPlaneDetectorEXT} handle.
-
- Valid Usage (Implicit)
-
- - The {@link EXTPlaneDetection XR_EXT_plane_detection} extension must be enabled prior to using ##XrPlaneDetectorCreateInfoEXT
- - {@code type} must be #TYPE_PLANE_DETECTOR_CREATE_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code flags} must be 0 or a valid combination of {@code XrPlaneDetectorFlagBitsEXT} values
-
-
- See Also
- #CreatePlaneDetectorEXT()
- """
-
- Expression("#TYPE_PLANE_DETECTOR_CREATE_INFO_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrPlaneDetectorFlagsEXT("flags", "must be a valid combination of {@code XrPlaneDetectorFlagsEXT} flags or zero.")
-}
-
-val XrExtent3DfEXT = struct(Module.OPENXR, "XrExtent3DfEXT") {
- documentation =
- """
- Extent in three dimensions.
-
- Description
- The ##XrExtent3DfEXT structure describes a axis aligned three-dimensional floating-point extent: This structure is used for component values that may be fractional (floating-point). If used to represent physical distances, values must be in meters.
-
- The {@code width} (X), {@code height} (Y) and {@code depth} (Z) values must be non-negative.
-
- See Also
- ##XrExtent2Df, ##XrPlaneDetectorBeginInfoEXT
- """
-
- float("width", "the floating-point width of the extent.")
- float("height", "the floating-point height of the extent.")
- float("depth", "the floating-point depth of the extent.")
-}
-
-val XrPlaneDetectorBeginInfoEXT = struct(Module.OPENXR, "XrPlaneDetectorBeginInfoEXT") {
- documentation =
- """
- Describes the information to detect planes.
-
- Valid Usage (Implicit)
-
- - The {@link EXTPlaneDetection XR_EXT_plane_detection} extension must be enabled prior to using ##XrPlaneDetectorBeginInfoEXT
- - {@code type} must be #TYPE_PLANE_DETECTOR_BEGIN_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code baseSpace} must be a valid {@code XrSpace} handle
- - If {@code orientationCount} is not 0, {@code orientations} must be a pointer to an array of {@code orientationCount} valid {@code XrPlaneDetectorOrientationEXT} values
- - If {@code semanticTypeCount} is not 0, {@code semanticTypes} must be a pointer to an array of {@code semanticTypeCount} valid {@code XrPlaneDetectorSemanticTypeEXT} values
-
-
- See Also
- ##XrExtent3DfEXT, ##XrPosef, #BeginPlaneDetectionEXT()
- """
-
- Expression("#TYPE_PLANE_DETECTOR_BEGIN_INFO_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR or this extension.")
- XrSpace("baseSpace", "the {@code XrSpace} that the {@code boundingBox} is defined in.")
- XrTime("time", "an {@code XrTime} at which to detect the planes.")
- AutoSize("orientations", optional = true)..uint32_t("orientationCount", "the number of elements in the {@code orientations}.")
- nullable..XrPlaneDetectorOrientationEXT.const.p("orientations", "an array of {@code XrPlaneDetectorOrientationEXT}. If this field is null no orientation filtering is applied. If any orientations are present only planes with any of the orientation listed are returned.")
- AutoSize("semanticTypes", optional = true)..uint32_t("semanticTypeCount", "the number of elements in the {@code semanticTypes}.")
- nullable..XrPlaneDetectorSemanticTypeEXT.const.p("semanticTypes", "an array of {@code XrPlaneDetectorSemanticTypeEXT}. If this field is null no semantic type filtering is applied. If any semantic types are present only planes with matching semantic types are returned.")
- uint32_t("maxPlanes", "the maximum number of planes the runtime may return. This number must be larger than 0. If the number is 0 the runtime must return #ERROR_VALIDATION_FAILURE.")
- float("minArea", "the minimum area in square meters a plane must have to be returned. A runtime may have a lower limit under which planes are not detected regardless of {@code minArea} and silently drop planes lower than the internal minimum.")
- XrPosef("boundingBoxPose", "the pose of the center of the bounding box of the volume to use for detection in {@code baseSpace}.")
- XrExtent3DfEXT("boundingBoxExtent", "the extent of the bounding box to use for detection. If any part of a plane falls within the bounding box it should be considered for inclusion subject to the other filters. This means that planes may extend beyond the bounding box. A runtime may have an upper limit on the detection range and silently clip the results to that internally.")
-}
-
-val XrPlaneDetectorGetInfoEXT = struct(Module.OPENXR, "XrPlaneDetectorGetInfoEXT") {
- documentation =
- """
- Contains the plane retrieval information.
-
- Valid Usage (Implicit)
-
- - The {@link EXTPlaneDetection XR_EXT_plane_detection} extension must be enabled prior to using ##XrPlaneDetectorGetInfoEXT
- - {@code type} must be #TYPE_PLANE_DETECTOR_GET_INFO_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code baseSpace} must be a valid {@code XrSpace} handle
-
-
- See Also
- #GetPlaneDetectionsEXT()
- """
-
- Expression("#TYPE_PLANE_DETECTOR_GET_INFO_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- XrSpace("baseSpace", "the plane pose will be relative to this {@code XrSpace} at {@code time}.")
- XrTime("time", "the {@code XrTime} at which to evaluate the coordinates relative to the {@code baseSpace}.")
-}
-
-val XrPlaneDetectorLocationEXT = struct(Module.OPENXR, "XrPlaneDetectorLocationEXT") {
- documentation =
- """
- Describes the location of a plane.
-
- Valid Usage (Implicit)
-
- - The {@link EXTPlaneDetection XR_EXT_plane_detection} extension must be enabled prior to using ##XrPlaneDetectorLocationEXT
- - {@code type} must be #TYPE_PLANE_DETECTOR_LOCATION_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - {@code locationFlags} must be 0 or a valid combination of {@code XrSpaceLocationFlagBits} values
- - If {@code orientation} is not 0, {@code orientation} must be a valid {@code XrPlaneDetectorOrientationEXT} value
- - If {@code semanticType} is not 0, {@code semanticType} must be a valid {@code XrPlaneDetectorSemanticTypeEXT} value
-
-
- See Also
- ##XrExtent2Df, ##XrPlaneDetectorLocationsEXT, ##XrPosef, #GetPlaneDetectionsEXT()
- """
-
- Expression("#TYPE_PLANE_DETECTOR_LOCATION_EXT")..XrStructureType("type", "")
- nullable..opaque_p("next", "")
- uint64_t("planeId", "a {@code uint64_t} unique identifier of the plane. The planeId should remain the same for the duration of the {@code XrPlaneDetectorEXT} handle for a physical plane. A runtime on occasion may assign a different id to the same physical plane, for example when several planes merge into one plane. {@code planeId} must remain valid until the next call to #BeginPlaneDetectionEXT() or #DestroyPlaneDetectorEXT(). This id is used by #GetPlanePolygonBufferEXT().")
- XrSpaceLocationFlags("locationFlags", "a bitfield, with bit masks defined in {@code XrSpaceLocationFlagBits}, to indicate which members contain valid data. If none of the bits are set, no other fields in this structure should be considered to be valid or meaningful.")
- XrPosef("pose", "an ##XrPosef defining the position and orientation of the origin of a plane within the reference frame of the corresponding ##XrPlaneDetectorGetInfoEXT{@code ::baseSpace}.")
- XrExtent2Df("extents", "")
- XrPlaneDetectorOrientationEXT("orientation", "the detected orientation of the plane.")
- XrPlaneDetectorSemanticTypeEXT("semanticType", "{@code semanticType} {@code XrPlaneDetectorSemanticTypeEXT} type of the plane.")
- uint32_t("polygonBufferCount", "the number of polygon buffers associated with this plane. If this is zero no polygon buffer was generated. The first polygon buffer is always the outside contour. If contours are requested with #PLANE_DETECTOR_ENABLE_CONTOUR_BIT_EXT this value must always be at least 1.")
-}
-
-val XrPlaneDetectorLocationsEXT = struct(Module.OPENXR, "XrPlaneDetectorLocationsEXT") {
- documentation =
- """
- Contains the plane information.
-
- Valid Usage (Implicit)
-
- - The {@link EXTPlaneDetection XR_EXT_plane_detection} extension must be enabled prior to using ##XrPlaneDetectorLocationsEXT
- - {@code type} must be #TYPE_PLANE_DETECTOR_LOCATIONS_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - If {@code planeLocationCapacityInput} is not 0, {@code planeLocations} must be a pointer to an array of {@code planeLocationCapacityInput} ##XrPlaneDetectorLocationEXT structures
-
-
- See Also
- ##XrPlaneDetectorLocationEXT, #GetPlaneDetectionsEXT()
- """
-
- Expression("#TYPE_PLANE_DETECTOR_LOCATIONS_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- AutoSize("planeLocations", optional = true)..uint32_t("planeLocationCapacityInput", "the capacity of the array, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("planeLocationCountOutput", "the number of planes, or the required capacity in the case that {@code planeCapacityInput} is insufficient.")
- nullable..XrPlaneDetectorLocationEXT.p("planeLocations", "an array of ##XrPlaneDetectorLocationEXT. It can be {@code NULL} if {@code planeCapacityInput} is 0.")
-}
-
-val XrPlaneDetectorPolygonBufferEXT = struct(Module.OPENXR, "XrPlaneDetectorPolygonBufferEXT") {
- documentation =
- """
- Plane polygon vertex buffer.
-
- Valid Usage (Implicit)
-
- - The {@link EXTPlaneDetection XR_EXT_plane_detection} extension must be enabled prior to using ##XrPlaneDetectorPolygonBufferEXT
- - {@code type} must be #TYPE_PLANE_DETECTOR_POLYGON_BUFFER_EXT
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- - If {@code vertexCapacityInput} is not 0, {@code vertices} must be a pointer to an array of {@code vertexCapacityInput} ##XrVector2f structures
-
-
- See Also
- ##XrVector2f, #GetPlanePolygonBufferEXT()
- """
-
- Expression("#TYPE_PLANE_DETECTOR_POLYGON_BUFFER_EXT")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
- nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain.")
- AutoSize("vertices", optional = true)..uint32_t("vertexCapacityInput", "the capacity of the array, or 0 to indicate a request to retrieve the required capacity.")
- uint32_t("vertexCountOutput", "the count of {@code vertices} written, or the required capacity in the case that {@code vertexCapacityInput} is insufficient.")
- nullable..XrVector2f.p("vertices", "an array of ##XrVector2f that must be filled by the runtime with the positions of the polygon vertices relative to the plane’s pose.")
}
\ No newline at end of file
diff --git a/modules/lwjgl/openxr/src/templates/kotlin/openxr/XRTypes.kt b/modules/lwjgl/openxr/src/templates/kotlin/openxr/XRTypes.kt
index 82b2dbb6ad..3530b423ac 100644
--- a/modules/lwjgl/openxr/src/templates/kotlin/openxr/XRTypes.kt
+++ b/modules/lwjgl/openxr/src/templates/kotlin/openxr/XRTypes.kt
@@ -48,7 +48,7 @@ val XrApiLayerProperties = struct(Module.OPENXR, "XrApiLayerProperties", mutable
Valid Usage (Implicit)
See Also
@@ -58,7 +58,7 @@ val XrApiLayerProperties = struct(Module.OPENXR, "XrApiLayerProperties", mutable
Expression("#TYPE_API_LAYER_PROPERTIES")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR.").mutable()
charUTF8("layerName", "a string specifying the name of the API layer. Use this name in the ##XrInstanceCreateInfo{@code ::enabledApiLayerNames} array to enable this API layer for an instance.")["XR_MAX_API_LAYER_NAME_SIZE"]
- XrVersion("specVersion", "the API version the API layer was written to, encoded as described in the API Version Numbers and Semantics section.")
+ XrVersion("specVersion", "the API version the API layer was written to, encoded as described in the API Version Numbers and Semantics section.")
uint32_t("layerVersion", "the version of this API layer. It is an integer, increasing with backward compatible changes.")
charUTF8("description", "a string providing additional details that can be used by the application to identify the API layer.")["XR_MAX_API_LAYER_DESCRIPTION_SIZE"]
}
@@ -72,7 +72,7 @@ val XrExtensionProperties = struct(Module.OPENXR, "XrExtensionProperties", mutab
Valid Usage (Implicit)
See Also
@@ -111,7 +111,7 @@ val XrApplicationInfo = struct(Module.OPENXR, "XrApplicationInfo") {
uint32_t("applicationVersion", "an unsigned integer variable containing the developer-supplied version number of the application.")
charUTF8("engineName", "a string containing the name of the engine (if any) used to create the application. It may be empty to indicate no specified engine.")["XR_MAX_ENGINE_NAME_SIZE"]
uint32_t("engineVersion", "an unsigned integer variable containing the developer-supplied version number of the engine used to create the application. May be zero to indicate no specified engine.")
- XrVersion("apiVersion", "the version of this API against which the application will run, encoded as described in the API Version Numbers and Semantics section. If the runtime does not support the requested {@code apiVersion} it must return #ERROR_API_VERSION_UNSUPPORTED.")
+ XrVersion("apiVersion", "the version of this API against which the application will run, encoded as described in the API Version Numbers and Semantics section. If the runtime does not support the requested {@code apiVersion} it must return #ERROR_API_VERSION_UNSUPPORTED.")
}
val XrInstanceCreateInfo = struct(Module.OPENXR, "XrInstanceCreateInfo") {
@@ -122,7 +122,7 @@ val XrInstanceCreateInfo = struct(Module.OPENXR, "XrInstanceCreateInfo") {
Valid Usage (Implicit)
- {@code type} must be #TYPE_INSTANCE_CREATE_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrDebugUtilsMessengerCreateInfoEXT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrDebugUtilsMessengerCreateInfoEXT, ##XrInstanceCreateInfoAndroidKHR
- {@code createFlags} must be 0
- {@code applicationInfo} must be a valid ##XrApplicationInfo structure
- If {@code enabledApiLayerCount} is not 0, {@code enabledApiLayerNames} must be a pointer to an array of {@code enabledApiLayerCount} null-terminated UTF-8 strings
@@ -135,13 +135,13 @@ val XrInstanceCreateInfo = struct(Module.OPENXR, "XrInstanceCreateInfo") {
Expression("#TYPE_INSTANCE_CREATE_INFO")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
PointerSetter(
- "XrDebugUtilsMessengerCreateInfoEXT",
+ "XrDebugUtilsMessengerCreateInfoEXT", "XrInstanceCreateInfoAndroidKHR",
prepend = true
)..nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR.")
XrInstanceCreateFlags("createFlags", "a bitmask of {@code XrInstanceCreateFlags} that identifies options that apply to the creation.")
XrApplicationInfo("applicationInfo", "an instance of ##XrApplicationInfo. This information helps runtimes recognize behavior inherent to classes of applications. ##XrApplicationInfo is defined in detail below.")
AutoSize("enabledApiLayerNames", optional = true)..uint32_t("enabledApiLayerCount", "the number of global API layers to enable.")
- charUTF8.const.p.const.p("enabledApiLayerNames", "a pointer to an array of {@code enabledApiLayerCount} strings containing the names of API layers to enable for the created instance. See the API Layers And Extensions section for further details.")
+ charUTF8.const.p.const.p("enabledApiLayerNames", "a pointer to an array of {@code enabledApiLayerCount} strings containing the names of API layers to enable for the created instance. See the API Layers And Extensions section for further details.")
AutoSize("enabledExtensionNames", optional = true)..uint32_t("enabledExtensionCount", "the number of global extensions to enable.")
charUTF8.const.p.const.p("enabledExtensionNames", "a pointer to an array of {@code enabledExtensionCount} strings containing the names of extensions to enable.")
}
@@ -155,7 +155,7 @@ val XrInstanceProperties = struct(Module.OPENXR, "XrInstanceProperties", mutable
Valid Usage (Implicit)
See Also
@@ -176,7 +176,7 @@ val XrEventDataBuffer = struct(Module.OPENXR, "XrEventDataBuffer") {
Valid Usage (Implicit)
See Also
@@ -199,7 +199,7 @@ val XrSystemGetInfo = struct(Module.OPENXR, "XrSystemGetInfo") {
Valid Usage (Implicit)
@@ -248,7 +248,7 @@ val XrSystemProperties = struct(Module.OPENXR, "XrSystemProperties", mutable = f
Valid Usage (Implicit)
- {@code type} must be #TYPE_SYSTEM_PROPERTIES
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrRenderModelCapabilitiesRequestFB, ##XrSystemBodyTrackingPropertiesFB, ##XrSystemColorSpacePropertiesFB, ##XrSystemEyeGazeInteractionPropertiesEXT, ##XrSystemEyeTrackingPropertiesFB, ##XrSystemFaceTrackingPropertiesFB, ##XrSystemFacialTrackingPropertiesHTC, ##XrSystemForceFeedbackCurlPropertiesMNDX, ##XrSystemFoveatedRenderingPropertiesVARJO, ##XrSystemFoveationEyeTrackedPropertiesMETA, ##XrSystemHandTrackingMeshPropertiesMSFT, ##XrSystemHandTrackingPropertiesEXT, ##XrSystemHeadsetIdPropertiesMETA, ##XrSystemKeyboardTrackingPropertiesFB, ##XrSystemMarkerTrackingPropertiesVARJO, ##XrSystemPassthroughColorLutPropertiesMETA, ##XrSystemPassthroughProperties2FB, ##XrSystemPassthroughPropertiesFB, ##XrSystemPlaneDetectionPropertiesEXT, ##XrSystemRenderModelPropertiesFB, ##XrSystemSpaceWarpPropertiesFB, ##XrSystemSpatialEntityPropertiesFB, ##XrSystemVirtualKeyboardPropertiesMETA
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrRenderModelCapabilitiesRequestFB, ##XrSystemBodyTrackingPropertiesFB, ##XrSystemColorSpacePropertiesFB, ##XrSystemEyeGazeInteractionPropertiesEXT, ##XrSystemEyeTrackingPropertiesFB, ##XrSystemFaceTrackingPropertiesFB, ##XrSystemFacialTrackingPropertiesHTC, ##XrSystemForceFeedbackCurlPropertiesMNDX, ##XrSystemFoveatedRenderingPropertiesVARJO, ##XrSystemFoveationEyeTrackedPropertiesMETA, ##XrSystemHandTrackingMeshPropertiesMSFT, ##XrSystemHandTrackingPropertiesEXT, ##XrSystemHeadsetIdPropertiesMETA, ##XrSystemKeyboardTrackingPropertiesFB, ##XrSystemMarkerTrackingPropertiesVARJO, ##XrSystemPassthroughProperties2FB, ##XrSystemPassthroughPropertiesFB, ##XrSystemRenderModelPropertiesFB, ##XrSystemSpaceWarpPropertiesFB, ##XrSystemSpatialEntityPropertiesFB
See Also
@@ -257,7 +257,7 @@ val XrSystemProperties = struct(Module.OPENXR, "XrSystemProperties", mutable = f
Expression("#TYPE_SYSTEM_PROPERTIES")..XrStructureType("type", "the {@code XrStructureType} of this structure.").mutable()
PointerSetter(
- "XrRenderModelCapabilitiesRequestFB", "XrSystemBodyTrackingPropertiesFB", "XrSystemColorSpacePropertiesFB", "XrSystemEyeGazeInteractionPropertiesEXT", "XrSystemEyeTrackingPropertiesFB", "XrSystemFaceTrackingPropertiesFB", "XrSystemFacialTrackingPropertiesHTC", "XrSystemForceFeedbackCurlPropertiesMNDX", "XrSystemFoveatedRenderingPropertiesVARJO", "XrSystemFoveationEyeTrackedPropertiesMETA", "XrSystemHandTrackingMeshPropertiesMSFT", "XrSystemHandTrackingPropertiesEXT", "XrSystemHeadsetIdPropertiesMETA", "XrSystemKeyboardTrackingPropertiesFB", "XrSystemMarkerTrackingPropertiesVARJO", "XrSystemPassthroughColorLutPropertiesMETA", "XrSystemPassthroughProperties2FB", "XrSystemPassthroughPropertiesFB", "XrSystemPlaneDetectionPropertiesEXT", "XrSystemRenderModelPropertiesFB", "XrSystemSpaceWarpPropertiesFB", "XrSystemSpatialEntityPropertiesFB", "XrSystemVirtualKeyboardPropertiesMETA",
+ "XrRenderModelCapabilitiesRequestFB", "XrSystemBodyTrackingPropertiesFB", "XrSystemColorSpacePropertiesFB", "XrSystemEyeGazeInteractionPropertiesEXT", "XrSystemEyeTrackingPropertiesFB", "XrSystemFaceTrackingPropertiesFB", "XrSystemFacialTrackingPropertiesHTC", "XrSystemForceFeedbackCurlPropertiesMNDX", "XrSystemFoveatedRenderingPropertiesVARJO", "XrSystemFoveationEyeTrackedPropertiesMETA", "XrSystemHandTrackingMeshPropertiesMSFT", "XrSystemHandTrackingPropertiesEXT", "XrSystemHeadsetIdPropertiesMETA", "XrSystemKeyboardTrackingPropertiesFB", "XrSystemMarkerTrackingPropertiesVARJO", "XrSystemPassthroughProperties2FB", "XrSystemPassthroughPropertiesFB", "XrSystemRenderModelPropertiesFB", "XrSystemSpaceWarpPropertiesFB", "XrSystemSpatialEntityPropertiesFB",
prepend = true
)..nullable..opaque_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR.").mutable()
XrSystemId("systemId", "the {@code XrSystemId} identifying the system.")
@@ -281,7 +281,7 @@ val XrSessionCreateInfo = struct(Module.OPENXR, "XrSessionCreateInfo") {
Valid Usage (Implicit)
- {@code type} must be #TYPE_SESSION_CREATE_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrGraphicsBindingEGLMNDX, ##XrGraphicsBindingOpenGLWaylandKHR, ##XrGraphicsBindingOpenGLWin32KHR, ##XrGraphicsBindingOpenGLXcbKHR, ##XrGraphicsBindingOpenGLXlibKHR, ##XrGraphicsBindingVulkanKHR, ##XrHolographicWindowAttachmentMSFT, ##XrSessionCreateInfoOverlayEXTX
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrGraphicsBindingD3D11KHR, ##XrGraphicsBindingD3D12KHR, ##XrGraphicsBindingEGLMNDX, ##XrGraphicsBindingOpenGLESAndroidKHR, ##XrGraphicsBindingOpenGLWaylandKHR, ##XrGraphicsBindingOpenGLWin32KHR, ##XrGraphicsBindingOpenGLXcbKHR, ##XrGraphicsBindingOpenGLXlibKHR, ##XrGraphicsBindingVulkanKHR, ##XrHolographicWindowAttachmentMSFT, ##XrSessionCreateInfoOverlayEXTX
- {@code createFlags} must be 0
@@ -291,7 +291,7 @@ val XrSessionCreateInfo = struct(Module.OPENXR, "XrSessionCreateInfo") {
Expression("#TYPE_SESSION_CREATE_INFO")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
PointerSetter(
- "XrGraphicsBindingEGLMNDX", "XrGraphicsBindingOpenGLWaylandKHR", "XrGraphicsBindingOpenGLWin32KHR", "XrGraphicsBindingOpenGLXcbKHR", "XrGraphicsBindingOpenGLXlibKHR", "XrGraphicsBindingVulkan2KHR", "XrGraphicsBindingVulkanKHR", "XrHolographicWindowAttachmentMSFT", "XrSessionCreateInfoOverlayEXTX",
+ "XrGraphicsBindingEGLMNDX", "XrGraphicsBindingOpenGLESAndroidKHR", "XrGraphicsBindingOpenGLWaylandKHR", "XrGraphicsBindingOpenGLWin32KHR", "XrGraphicsBindingOpenGLXcbKHR", "XrGraphicsBindingOpenGLXlibKHR", "XrGraphicsBindingVulkan2KHR", "XrGraphicsBindingVulkanKHR", "XrHolographicWindowAttachmentMSFT", "XrSessionCreateInfoOverlayEXTX",
prepend = true
)..nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR. Note that in most cases one graphics API extension specific struct needs to be in this next chain.")
XrSessionCreateFlags("createFlags", "identifies {@code XrSessionCreateFlags} that apply to the creation.")
@@ -323,7 +323,7 @@ val XrSpaceVelocity = struct(Module.OPENXR, "XrSpaceVelocity") {
Valid Usage (Implicit)
@@ -362,7 +362,7 @@ val XrPosef = struct(Module.OPENXR, "XrPosef") {
A runtime must return #ERROR_POSE_INVALID if the {@code orientation} norm deviates by more than 1% from unit length.
See Also
- ##XrActionSpaceCreateInfo, ##XrBodyJointLocationFB, ##XrBodySkeletonJointFB, ##XrCompositionLayerCylinderKHR, ##XrCompositionLayerEquirect2KHR, ##XrCompositionLayerEquirectKHR, ##XrCompositionLayerProjectionView, ##XrCompositionLayerQuad, ##XrCompositionLayerSpaceWarpInfoFB, ##XrControllerModelNodeStateMSFT, ##XrCoordinateSpaceCreateInfoML, ##XrEventDataReferenceSpaceChangePending, ##XrExternalCameraExtrinsicsOCULUS, ##XrEyeGazeFB, ##XrGeometryInstanceCreateInfoFB, ##XrGeometryInstanceTransformFB, ##XrHandJointLocationEXT, ##XrHandMeshSpaceCreateInfoMSFT, ##XrHandTrackingAimStateFB, ##XrHandTrackingMeshFB, ##XrMarkerSpaceCreateInfoVARJO, ##XrPassthroughMeshTransformInfoHTC, ##XrPlaneDetectorBeginInfoEXT, ##XrPlaneDetectorLocationEXT, ##XrQuaternionf, ##XrReferenceSpaceCreateInfo, ##XrSceneComponentLocationMSFT, ##XrSceneFrustumBoundMSFT, ##XrSceneOrientedBoxBoundMSFT, ##XrSpaceLocation, ##XrSpatialAnchorCreateInfoFB, ##XrSpatialAnchorCreateInfoMSFT, ##XrSpatialAnchorSpaceCreateInfoMSFT, ##XrSpatialGraphNodeBindingPropertiesMSFT, ##XrSpatialGraphNodeSpaceCreateInfoMSFT, ##XrSpatialGraphStaticNodeBindingCreateInfoMSFT, ##XrVector2f, ##XrVector3f, ##XrVector4f, ##XrView, ##XrVirtualKeyboardInputInfoMETA, ##XrVirtualKeyboardLocationInfoMETA, ##XrVirtualKeyboardSpaceCreateInfoMETA, #SendVirtualKeyboardInputMETA(), #SetInputDeviceLocationEXT()
+ ##XrActionSpaceCreateInfo, ##XrBodyJointLocationFB, ##XrBodySkeletonJointFB, ##XrCompositionLayerCylinderKHR, ##XrCompositionLayerEquirect2KHR, ##XrCompositionLayerEquirectKHR, ##XrCompositionLayerProjectionView, ##XrCompositionLayerQuad, ##XrCompositionLayerSpaceWarpInfoFB, ##XrControllerModelNodeStateMSFT, ##XrCoordinateSpaceCreateInfoML, ##XrEventDataReferenceSpaceChangePending, ##XrExternalCameraExtrinsicsOCULUS, ##XrEyeGazeFB, ##XrGeometryInstanceCreateInfoFB, ##XrGeometryInstanceTransformFB, ##XrHandJointLocationEXT, ##XrHandMeshSpaceCreateInfoMSFT, ##XrHandTrackingAimStateFB, ##XrHandTrackingMeshFB, ##XrMarkerSpaceCreateInfoVARJO, ##XrPassthroughMeshTransformInfoHTC, ##XrQuaternionf, ##XrReferenceSpaceCreateInfo, ##XrSceneComponentLocationMSFT, ##XrSceneFrustumBoundMSFT, ##XrSceneOrientedBoxBoundMSFT, ##XrSpaceLocation, ##XrSpatialAnchorCreateInfoFB, ##XrSpatialAnchorCreateInfoMSFT, ##XrSpatialAnchorSpaceCreateInfoMSFT, ##XrSpatialGraphNodeBindingPropertiesMSFT, ##XrSpatialGraphNodeSpaceCreateInfoMSFT, ##XrSpatialGraphStaticNodeBindingCreateInfoMSFT, ##XrVector2f, ##XrVector3f, ##XrVector4f, ##XrView, #SetInputDeviceLocationEXT()
"""
XrQuaternionf("orientation", "an ##XrQuaternionf representing the orientation within a space.")
@@ -377,7 +377,7 @@ val XrReferenceSpaceCreateInfo = struct(Module.OPENXR, "XrReferenceSpaceCreateIn
Valid Usage (Implicit)
@@ -402,7 +402,7 @@ val XrExtent2Df = struct(Module.OPENXR, "XrExtent2Df") {
The {@code width} and {@code height} value must be non-negative.
See Also
- ##XrCompositionLayerQuad, ##XrOffset2Df, ##XrPlaneDetectorLocationEXT, ##XrRect2Df, ##XrScenePlaneMSFT, #GetMarkerSizeVARJO(), #GetReferenceSpaceBoundsRect()
+ ##XrCompositionLayerQuad, ##XrOffset2Df, ##XrRect2Df, ##XrScenePlaneMSFT, #GetMarkerSizeVARJO(), #GetReferenceSpaceBoundsRect()
"""
float("width", "the floating-point width of the extent.")
@@ -417,7 +417,7 @@ val XrActionSpaceCreateInfo = struct(Module.OPENXR, "XrActionSpaceCreateInfo") {
Valid Usage (Implicit)
@@ -440,7 +440,7 @@ val XrSpaceLocation = struct(Module.OPENXR, "XrSpaceLocation") {
Valid Usage (Implicit)
- {@code type} must be #TYPE_SPACE_LOCATION
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrEyeGazeSampleTimeEXT, ##XrSpaceVelocity
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrEyeGazeSampleTimeEXT, ##XrSpaceVelocity
- {@code locationFlags} must be 0 or a valid combination of {@code XrSpaceLocationFlagBits} values
@@ -465,7 +465,7 @@ val XrViewConfigurationProperties = struct(Module.OPENXR, "XrViewConfigurationPr
Valid Usage (Implicit)
@@ -487,12 +487,12 @@ val XrViewConfigurationView = struct(Module.OPENXR, "XrViewConfigurationView") {
Description
See ##XrSwapchainSubImage for more information about {@code imageRect} values, and ##XrSwapchainCreateInfo for more information about creating swapchains appropriately sized to support those {@code imageRect} values.
- The array of ##XrViewConfigurationView returned by the runtime must adhere to the rules defined in {@code XrViewConfigurationType}, such as the count and association to the left and right eyes.
+ The array of ##XrViewConfigurationView returned by the runtime must adhere to the rules defined in {@code XrViewConfigurationType}, such as the count and association to the left and right eyes.
Valid Usage (Implicit)
- {@code type} must be #TYPE_VIEW_CONFIGURATION_VIEW
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFoveatedViewConfigurationViewVARJO, ##XrViewConfigurationDepthRangeEXT, ##XrViewConfigurationViewFovEPIC
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFoveatedViewConfigurationViewVARJO, ##XrViewConfigurationDepthRangeEXT, ##XrViewConfigurationViewFovEPIC
See Also
@@ -520,13 +520,13 @@ val XrSwapchainCreateInfo = struct(Module.OPENXR, "XrSwapchainCreateInfo") {
Valid Usage (Implicit)
- {@code type} must be #TYPE_SWAPCHAIN_CREATE_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSecondaryViewConfigurationSwapchainCreateInfoMSFT, ##XrSwapchainCreateInfoFoveationFB, ##XrVulkanSwapchainCreateInfoMETA
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrAndroidSurfaceSwapchainCreateInfoFB, ##XrSecondaryViewConfigurationSwapchainCreateInfoMSFT, ##XrSwapchainCreateInfoFoveationFB, ##XrVulkanSwapchainCreateInfoMETA
- {@code createFlags} must be 0 or a valid combination of {@code XrSwapchainCreateFlagBits} values
- {@code usageFlags} must be 0 or a valid combination of {@code XrSwapchainUsageFlagBits} values
See Also
- #CreateSession(), #CreateSwapchain(), #EnumerateSwapchainFormats()
+ #CreateSession(), #CreateSwapchain(), #CreateSwapchainAndroidSurfaceKHR(), #EnumerateSwapchainFormats()
"""
Expression("#TYPE_SWAPCHAIN_CREATE_INFO")..XrStructureType("type", "the {@code XrStructureType} of this structure.")
@@ -555,8 +555,8 @@ val XrSwapchainImageBaseHeader = struct(Module.OPENXR, "XrSwapchainImageBaseHead
Valid Usage (Implicit)
- - {@code type} must be one of the following XrStructureType values: #TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR, #TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code type} must be one of the following XrStructureType values: #TYPE_SWAPCHAIN_IMAGE_D3D11_KHR, #TYPE_SWAPCHAIN_IMAGE_D3D12_KHR, #TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR, #TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR, #TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -578,7 +578,7 @@ val XrSwapchainImageAcquireInfo = struct(Module.OPENXR, "XrSwapchainImageAcquire
Valid Usage (Implicit)
See Also
@@ -597,7 +597,7 @@ val XrSwapchainImageWaitInfo = struct(Module.OPENXR, "XrSwapchainImageWaitInfo")
Valid Usage (Implicit)
See Also
@@ -620,7 +620,7 @@ val XrSwapchainImageReleaseInfo = struct(Module.OPENXR, "XrSwapchainImageRelease
Valid Usage (Implicit)
See Also
@@ -639,7 +639,7 @@ val XrSessionBeginInfo = struct(Module.OPENXR, "XrSessionBeginInfo") {
Valid Usage (Implicit)
- {@code type} must be #TYPE_SESSION_BEGIN_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSecondaryViewConfigurationSessionBeginInfoMSFT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrSecondaryViewConfigurationSessionBeginInfoMSFT
- {@code primaryViewConfigurationType} must be a valid {@code XrViewConfigurationType} value
@@ -666,7 +666,7 @@ val XrFrameWaitInfo = struct(Module.OPENXR, "XrFrameWaitInfo") {
Valid Usage (Implicit)
See Also
@@ -685,12 +685,12 @@ val XrFrameState = struct(Module.OPENXR, "XrFrameState") {
Description
##XrFrameState describes the time at which the next frame will be displayed to the user. {@code predictedDisplayTime} must refer to the midpoint of the interval during which the frame is displayed. The runtime may report a different {@code predictedDisplayPeriod} from the hardware’s refresh cycle.
- For any frame where {@code shouldRender} is #FALSE, the application should avoid heavy GPU work for that frame, for example by not rendering its layers. This typically happens when the application is transitioning into or out of a running session, or when some system UI is fully covering the application at the moment. As long as the session is running, the application should keep running the frame loop to maintain the frame synchronization to the runtime, even if this requires calling #EndFrame() with all layers omitted.
+ For any frame where {@code shouldRender} is #FALSE, the application should avoid heavy GPU work for that frame, for example by not rendering its layers. This typically happens when the application is transitioning into or out of a running session, or when some system UI is fully covering the application at the moment. As long as the session is running, the application should keep running the frame loop to maintain the frame synchronization to the runtime, even if this requires calling #EndFrame() with all layers omitted.
Valid Usage (Implicit)
See Also
@@ -718,7 +718,7 @@ val XrFrameBeginInfo = struct(Module.OPENXR, "XrFrameBeginInfo") {
Valid Usage (Implicit)
See Also
@@ -740,7 +740,7 @@ val XrCompositionLayerBaseHeader = struct(Module.OPENXR, "XrCompositionLayerBase
Valid Usage (Implicit)
- {@code type} must be one of the following XrStructureType values: #TYPE_COMPOSITION_LAYER_CUBE_KHR, #TYPE_COMPOSITION_LAYER_CYLINDER_KHR, #TYPE_COMPOSITION_LAYER_EQUIRECT2_KHR, #TYPE_COMPOSITION_LAYER_EQUIRECT_KHR, #TYPE_COMPOSITION_LAYER_PASSTHROUGH_HTC, #TYPE_COMPOSITION_LAYER_PROJECTION, #TYPE_COMPOSITION_LAYER_QUAD
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrCompositionLayerAlphaBlendFB, ##XrCompositionLayerColorScaleBiasKHR, ##XrCompositionLayerDepthTestFB, ##XrCompositionLayerImageLayoutFB, ##XrCompositionLayerPassthroughFB, ##XrCompositionLayerSecureContentFB, ##XrCompositionLayerSettingsFB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrCompositionLayerAlphaBlendFB, ##XrCompositionLayerColorScaleBiasKHR, ##XrCompositionLayerDepthTestFB, ##XrCompositionLayerImageLayoutFB, ##XrCompositionLayerPassthroughFB, ##XrCompositionLayerSecureContentFB, ##XrCompositionLayerSettingsFB
- {@code layerFlags} must be 0 or a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code space} must be a valid {@code XrSpace} handle
@@ -766,7 +766,7 @@ val XrFrameEndInfo = struct(Module.OPENXR, "XrFrameEndInfo") {
Valid Usage (Implicit)
- {@code type} must be #TYPE_FRAME_END_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFrameEndInfoML, ##XrGlobalDimmerFrameEndInfoML, ##XrLocalDimmingFrameEndInfoMETA, ##XrSecondaryViewConfigurationFrameEndInfoMSFT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrFrameEndInfoML, ##XrGlobalDimmerFrameEndInfoML, ##XrLocalDimmingFrameEndInfoMETA, ##XrSecondaryViewConfigurationFrameEndInfoMSFT
- {@code environmentBlendMode} must be a valid {@code XrEnvironmentBlendMode} value
- If {@code layerCount} is not 0, {@code layers} must be a pointer to an array of {@code layerCount} valid ##XrCompositionLayerBaseHeader-based structures. See also: ##XrCompositionLayerCubeKHR, ##XrCompositionLayerCylinderKHR, ##XrCompositionLayerEquirect2KHR, ##XrCompositionLayerEquirectKHR, ##XrCompositionLayerPassthroughHTC, ##XrCompositionLayerProjection, ##XrCompositionLayerQuad
@@ -781,7 +781,7 @@ val XrFrameEndInfo = struct(Module.OPENXR, "XrFrameEndInfo") {
prepend = true
)..nullable..opaque_const_p("next", "{@code NULL} or a pointer to the next structure in a structure chain. No such structures are defined in core OpenXR.")
XrTime("displayTime", "the {@code XrTime} at which this frame should be displayed.")
- XrEnvironmentBlendMode("environmentBlendMode", "the {@code XrEnvironmentBlendMode} value representing the desired environment blend mode for this frame.")
+ XrEnvironmentBlendMode("environmentBlendMode", "the {@code XrEnvironmentBlendMode} value representing the desired environment blend mode for this frame.")
AutoSize("layers", optional = true)..uint32_t("layerCount", "the number of composition layers in this frame. The maximum supported layer count is identified by ##XrSystemGraphicsProperties::maxLayerCount. If layerCount is greater than the maximum supported layer count then #ERROR_LAYER_LIMIT_EXCEEDED must be returned.")
nullable..XrCompositionLayerBaseHeader.const.p.const.p("layers", "a pointer to an array of ##XrCompositionLayerBaseHeader pointers.")
}
@@ -799,7 +799,7 @@ val XrViewLocateInfo = struct(Module.OPENXR, "XrViewLocateInfo") {
Valid Usage (Implicit)
- {@code type} must be #TYPE_VIEW_LOCATE_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrViewLocateFoveatedRenderingVARJO
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrViewLocateFoveatedRenderingVARJO
- {@code viewConfigurationType} must be a valid {@code XrViewConfigurationType} value
- {@code space} must be a valid {@code XrSpace} handle
@@ -829,7 +829,7 @@ val XrViewState = struct(Module.OPENXR, "XrViewState") {
Valid Usage (Implicit)
@@ -875,7 +875,7 @@ val XrView = struct(Module.OPENXR, "XrView") {
Valid Usage (Implicit)
See Also
@@ -897,16 +897,16 @@ val XrActionSetCreateInfo = struct(Module.OPENXR, "XrActionSetCreateInfo") {
Description
When multiple actions are bound to the same input source, the {@code priority} of each action set determines which bindings are suppressed. Runtimes must ignore input sources from action sets with a lower priority number if those specific input sources are also present in active actions within a higher priority action set. If multiple action sets with the same priority are bound to the same input source and that is the highest priority number, runtimes must process all those bindings at the same time.
- Two actions are considered to be bound to the same input source if they use the same identifier and optional location path segments, even if they have different component segments.
+ Two actions are considered to be bound to the same input source if they use the same identifier and optional location path segments, even if they have different component segments.
When runtimes are ignoring bindings because of priority, they must treat the binding to that input source as though they do not exist. That means the {@code isActive} field must be #FALSE when retrieving action data, and that the runtime must not provide any visual, haptic, or other feedback related to the binding of that action to that input source. Other actions in the same action set which are bound to input sources that do not collide are not affected and are processed as normal.
- If {@code actionSetName} or {@code localizedActionSetName} are empty strings, the runtime must return #ERROR_NAME_INVALID or #ERROR_LOCALIZED_NAME_INVALID respectively. If {@code actionSetName} or {@code localizedActionSetName} are duplicates of the corresponding field for any existing action set in the specified instance, the runtime must return #ERROR_NAME_DUPLICATED or #ERROR_LOCALIZED_NAME_DUPLICATED respectively. If the conflicting action set is destroyed, the conflicting field is no longer considered duplicated. If {@code actionSetName} contains characters which are not allowed in a single level of a well-formed path string, the runtime must return #ERROR_PATH_FORMAT_INVALID.
+ If {@code actionSetName} or {@code localizedActionSetName} are empty strings, the runtime must return #ERROR_NAME_INVALID or #ERROR_LOCALIZED_NAME_INVALID respectively. If {@code actionSetName} or {@code localizedActionSetName} are duplicates of the corresponding field for any existing action set in the specified instance, the runtime must return #ERROR_NAME_DUPLICATED or #ERROR_LOCALIZED_NAME_DUPLICATED respectively. If the conflicting action set is destroyed, the conflicting field is no longer considered duplicated. If {@code actionSetName} contains characters which are not allowed in a single level of a well-formed path string, the runtime must return #ERROR_PATH_FORMAT_INVALID.
Valid Usage (Implicit)
- {@code type} must be #TYPE_ACTION_SET_CREATE_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code actionSetName} must be a null-terminated UTF-8 string whose length is less than or equal to #MAX_ACTION_SET_NAME_SIZE
- {@code localizedActionSetName} must be a null-terminated UTF-8 string whose length is less than or equal to #MAX_LOCALIZED_ACTION_SET_NAME_SIZE
@@ -961,12 +961,12 @@ val XrActionCreateInfo = struct(Module.OPENXR, "XrActionCreateInfo") {
- The application called {@code xrGetActionState*} or a haptic function with a subaction path that was not specified when the action was created.
- If {@code actionName} or {@code localizedActionName} are empty strings, the runtime must return #ERROR_NAME_INVALID or #ERROR_LOCALIZED_NAME_INVALID respectively. If {@code actionName} or {@code localizedActionName} are duplicates of the corresponding field for any existing action in the specified action set, the runtime must return #ERROR_NAME_DUPLICATED or #ERROR_LOCALIZED_NAME_DUPLICATED respectively. If the conflicting action is destroyed, the conflicting field is no longer considered duplicated. If {@code actionName} contains characters which are not allowed in a single level of a well-formed path string, the runtime must return #ERROR_PATH_FORMAT_INVALID.
+ If {@code actionName} or {@code localizedActionName} are empty strings, the runtime must return #ERROR_NAME_INVALID or #ERROR_LOCALIZED_NAME_INVALID respectively. If {@code actionName} or {@code localizedActionName} are duplicates of the corresponding field for any existing action in the specified action set, the runtime must return #ERROR_NAME_DUPLICATED or #ERROR_LOCALIZED_NAME_DUPLICATED respectively. If the conflicting action is destroyed, the conflicting field is no longer considered duplicated. If {@code actionName} contains characters which are not allowed in a single level of a well-formed path string, the runtime must return #ERROR_PATH_FORMAT_INVALID.
Valid Usage (Implicit)
- {@code type} must be #TYPE_ACTION_CREATE_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code actionName} must be a null-terminated UTF-8 string whose length is less than or equal to #MAX_ACTION_NAME_SIZE
- {@code actionType} must be a valid {@code XrActionType} value
- If {@code countSubactionPaths} is not 0, {@code subactionPaths} must be a pointer to an array of {@code countSubactionPaths} valid {@code XrPath} values
@@ -1001,7 +1001,7 @@ val XrActionSuggestedBinding = struct(Module.OPENXR, "XrActionSuggestedBinding")
"""
XrAction("action", "the {@code XrAction} handle for an action")
- XrPath("binding", "the {@code XrPath} of a binding for the action specified in {@code action}. This path is any top level user path plus input source path, for example pathname:/user/hand/right/input/trigger/click. See suggested bindings for more details.")
+ XrPath("binding", "the {@code XrPath} of a binding for the action specified in {@code action}. This path is any top level user path plus input source path, for example pathname:/user/hand/right/input/trigger/click. See suggested bindings for more details.")
}
val XrInteractionProfileSuggestedBinding = struct(Module.OPENXR, "XrInteractionProfileSuggestedBinding") {
@@ -1012,7 +1012,7 @@ val XrInteractionProfileSuggestedBinding = struct(Module.OPENXR, "XrInteractionP
Valid Usage (Implicit)
- {@code type} must be #TYPE_INTERACTION_PROFILE_SUGGESTED_BINDING
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrBindingModificationsKHR
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrBindingModificationsKHR
- {@code suggestedBindings} must be a pointer to an array of {@code countSuggestedBindings} valid ##XrActionSuggestedBinding structures
- The {@code countSuggestedBindings} parameter must be greater than 0
@@ -1039,7 +1039,7 @@ val XrSessionActionSetsAttachInfo = struct(Module.OPENXR, "XrSessionActionSetsAt
Valid Usage (Implicit)
- {@code type} must be #TYPE_SESSION_ACTION_SETS_ATTACH_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code actionSets} must be a pointer to an array of {@code countActionSets} valid {@code XrActionSet} handles
- The {@code countActionSets} parameter must be greater than 0
@@ -1065,7 +1065,7 @@ val XrInteractionProfileState = struct(Module.OPENXR, "XrInteractionProfileState
Valid Usage (Implicit)
See Also
@@ -1088,7 +1088,7 @@ val XrActionStateGetInfo = struct(Module.OPENXR, "XrActionStateGetInfo") {
Valid Usage (Implicit)
@@ -1108,12 +1108,12 @@ val XrActionStateBoolean = struct(Module.OPENXR, "XrActionStateBoolean") {
Boolean action state.
Description
- When multiple input sources are bound to this action, the {@code currentState} follows the previously defined rule to resolve ambiguity.
+ When multiple input sources are bound to this action, the {@code currentState} follows the previously defined rule to resolve ambiguity.
Valid Usage (Implicit)
See Also
@@ -1134,12 +1134,12 @@ val XrActionStateFloat = struct(Module.OPENXR, "XrActionStateFloat") {
Floating point action state.
Description
- When multiple input sources are bound to this action, the {@code currentState} follows the previously defined rule to resolve ambiguity.
+ When multiple input sources are bound to this action, the {@code currentState} follows the previously defined rule to resolve ambiguity.
Valid Usage (Implicit)
See Also
@@ -1163,7 +1163,7 @@ val XrVector2f = struct(Module.OPENXR, "XrVector2f") {
If used to represent physical distances (rather than e.g. normalized direction) and not otherwise specified, values must be in meters.
See Also
- ##XrActionStateVector2f, ##XrBoundary2DFB, ##XrCompositionLayerEquirectKHR, ##XrFoveationConfigurationHTC, ##XrFoveationEyeTrackedStateMETA, ##XrHandTrackingMeshFB, ##XrPlaneDetectorPolygonBufferEXT, ##XrPosef, ##XrQuaternionf, ##XrVector3f, ##XrVector4f, ##XrVisibilityMaskKHR, #SetInputDeviceStateVector2fEXT()
+ ##XrActionStateVector2f, ##XrBoundary2DFB, ##XrCompositionLayerEquirectKHR, ##XrFoveationConfigurationHTC, ##XrFoveationEyeTrackedStateMETA, ##XrHandTrackingMeshFB, ##XrPosef, ##XrQuaternionf, ##XrVector3f, ##XrVector4f, ##XrVisibilityMaskKHR, #SetInputDeviceStateVector2fEXT()
"""
float("x", "the x coordinate of the vector.")
@@ -1176,12 +1176,12 @@ val XrActionStateVector2f = struct(Module.OPENXR, "XrActionStateVector2f") {
2D float vector action state.
Description
- When multiple input sources are bound to this action, the {@code currentState} follows the previously defined rule to resolve ambiguity.
+ When multiple input sources are bound to this action, the {@code currentState} follows the previously defined rule to resolve ambiguity.
Valid Usage (Implicit)
See Also
@@ -1202,12 +1202,12 @@ val XrActionStatePose = struct(Module.OPENXR, "XrActionStatePose") {
Pose action metadata.
Description
- A pose action must not be bound to multiple input sources, according to the previously defined rule.
+ A pose action must not be bound to multiple input sources, according to the previously defined rule.
Valid Usage (Implicit)
See Also
@@ -1248,7 +1248,7 @@ val XrActionsSyncInfo = struct(Module.OPENXR, "XrActionsSyncInfo") {
Valid Usage (Implicit)
- {@code type} must be #TYPE_ACTIONS_SYNC_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrActiveActionSetPrioritiesEXT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrActiveActionSetPrioritiesEXT
- If {@code countActiveActionSets} is not 0, {@code activeActionSets} must be a pointer to an array of {@code countActiveActionSets} valid ##XrActiveActionSet structures
@@ -1273,7 +1273,7 @@ val XrBoundSourcesForActionEnumerateInfo = struct(Module.OPENXR, "XrBoundSources
Valid Usage (Implicit)
@@ -1297,7 +1297,7 @@ val XrInputSourceLocalizedNameGetInfo = struct(Module.OPENXR, "XrInputSourceLoca
Valid Usage (Implicit)
- {@code type} must be #TYPE_INPUT_SOURCE_LOCALIZED_NAME_GET_INFO
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code whichComponents} must be a valid combination of {@code XrInputSourceLocalizedNameFlagBits} values
- {@code whichComponents} must not be 0
@@ -1323,7 +1323,7 @@ val XrHapticActionInfo = struct(Module.OPENXR, "XrHapticActionInfo") {
Valid Usage (Implicit)
@@ -1345,7 +1345,7 @@ val XrHapticBaseHeader = struct(Module.OPENXR, "XrHapticBaseHeader") {
Valid Usage (Implicit)
- {@code type} must be one of the following XrStructureType values: #TYPE_HAPTIC_AMPLITUDE_ENVELOPE_VIBRATION_FB, #TYPE_HAPTIC_PCM_VIBRATION_FB, #TYPE_HAPTIC_VIBRATION
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1470,7 +1470,7 @@ val XrCompositionLayerProjectionView = struct(Module.OPENXR, "XrCompositionLayer
Valid Usage (Implicit)
- {@code type} must be #TYPE_COMPOSITION_LAYER_PROJECTION_VIEW
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrCompositionLayerDepthInfoKHR, ##XrCompositionLayerSpaceWarpInfoFB
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrCompositionLayerDepthInfoKHR, ##XrCompositionLayerSpaceWarpInfoFB
- {@code subImage} must be a valid ##XrSwapchainSubImage structure
@@ -1501,7 +1501,7 @@ val XrCompositionLayerProjection = struct(Module.OPENXR, "XrCompositionLayerProj
Valid Usage (Implicit)
- {@code type} must be #TYPE_COMPOSITION_LAYER_PROJECTION
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrCompositionLayerDepthTestVARJO, ##XrCompositionLayerReprojectionInfoMSFT, ##XrCompositionLayerReprojectionPlaneOverrideMSFT
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain. See also: ##XrCompositionLayerDepthTestVARJO, ##XrCompositionLayerReprojectionInfoMSFT, ##XrCompositionLayerReprojectionPlaneOverrideMSFT
- {@code layerFlags} must be 0 or a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code space} must be a valid {@code XrSpace} handle
- {@code views} must be a pointer to an array of {@code viewCount} valid ##XrCompositionLayerProjectionView structures
@@ -1534,7 +1534,7 @@ val XrCompositionLayerQuad = struct(Module.OPENXR, "XrCompositionLayerQuad", par
Valid Usage (Implicit)
- {@code type} must be #TYPE_COMPOSITION_LAYER_QUAD
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
- {@code layerFlags} must be 0 or a valid combination of {@code XrCompositionLayerFlagBits} values
- {@code space} must be a valid {@code XrSpace} handle
- {@code eyeVisibility} must be a valid {@code XrEyeVisibility} value
@@ -1568,7 +1568,7 @@ val XrEventDataBaseHeader = struct(Module.OPENXR, "XrEventDataBaseHeader", mutab
Valid Usage (Implicit)
- {@code type} must be one of the following XrStructureType values: #TYPE_EVENT_DATA_DISPLAY_REFRESH_RATE_CHANGED_FB, #TYPE_EVENT_DATA_EVENTS_LOST, #TYPE_EVENT_DATA_INSTANCE_LOSS_PENDING, #TYPE_EVENT_DATA_INTERACTION_PROFILE_CHANGED, #TYPE_EVENT_DATA_MAIN_SESSION_VISIBILITY_CHANGED_EXTX, #TYPE_EVENT_DATA_MARKER_TRACKING_UPDATE_VARJO, #TYPE_EVENT_DATA_PERF_SETTINGS_EXT, #TYPE_EVENT_DATA_REFERENCE_SPACE_CHANGE_PENDING, #TYPE_EVENT_DATA_SESSION_STATE_CHANGED, #TYPE_EVENT_DATA_SPACE_ERASE_COMPLETE_FB, #TYPE_EVENT_DATA_SPACE_LIST_SAVE_COMPLETE_FB, #TYPE_EVENT_DATA_SPACE_QUERY_COMPLETE_FB, #TYPE_EVENT_DATA_SPACE_QUERY_RESULTS_AVAILABLE_FB, #TYPE_EVENT_DATA_SPACE_SAVE_COMPLETE_FB, #TYPE_EVENT_DATA_SPACE_SET_STATUS_COMPLETE_FB, #TYPE_EVENT_DATA_SPACE_SHARE_COMPLETE_FB, #TYPE_EVENT_DATA_SPATIAL_ANCHOR_CREATE_COMPLETE_FB, #TYPE_EVENT_DATA_VISIBILITY_MASK_CHANGED_KHR, #TYPE_EVENT_DATA_VIVE_TRACKER_CONNECTED_HTCX
- - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
+ - {@code next} must be {@code NULL} or a valid pointer to the next structure in a structure chain
See Also
@@ -1590,7 +1590,7 @@ val XrEventDataEventsLost = struct(Module.OPENXR, "XrEventDataEventsLost", mutab
Valid Usage (Implicit)
See Also
@@ -1620,7 +1620,7 @@ val XrEventDataInstanceLossPending = struct(Module.OPENXR, "XrEventDataInstanceL
Valid Usage (Implicit)
See Also
@@ -1643,7 +1643,7 @@ val XrEventDataSessionStateChanged = struct(Module.OPENXR, "XrEventDataSessionSt
Valid Usage (Implicit)
See Also
@@ -1665,7 +1665,7 @@ val XrEventDataReferenceSpaceChangePending = struct(Module.OPENXR, "XrEventDataR
Valid Usage (Implicit)
See Also
@@ -1694,7 +1694,7 @@ val XrEventDataInteractionProfileChanged = struct(Module.OPENXR, "XrEventDataInt
Valid Usage (Implicit)
See Also
@@ -1719,7 +1719,7 @@ val XrHapticVibration = struct(Module.OPENXR, "XrHapticVibration", parentStruct
Valid Usage (Implicit)
See Also
diff --git a/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_android_create_instance.kt b/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_android_create_instance.kt
new file mode 100644
index 0000000000..33d7bf133d
--- /dev/null
+++ b/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_android_create_instance.kt
@@ -0,0 +1,38 @@
+/*
+ * Copyright LWJGL. All rights reserved.
+ * License terms: https://www.lwjgl.org/license
+ * MACHINE GENERATED FILE, DO NOT EDIT
+ */
+package openxr.templates
+
+import org.lwjgl.generator.*
+import openxr.*
+
+val KHR_android_create_instance = "KHRAndroidCreateInstance".nativeClassXR("KHR_android_create_instance", type = "instance", postfix = "KHR") {
+ documentation =
+ """
+ The XR_KHR_android_create_instance extension.
+
+ When the application creates an {@code XrInstance} object on Android systems, additional information from the application has to be provided to the XR runtime.
+
+ The Android XR runtime must return error #ERROR_VALIDATION_FAILURE if the additional information is not provided by the application or if the additional parameters are invalid.
+ """
+
+ IntConstant(
+ "The extension specification version.",
+
+ "KHR_android_create_instance_SPEC_VERSION".."3"
+ )
+
+ StringConstant(
+ "The extension name.",
+
+ "KHR_ANDROID_CREATE_INSTANCE_EXTENSION_NAME".."XR_KHR_android_create_instance"
+ )
+
+ EnumConstant(
+ "Extends {@code XrStructureType}.",
+
+ "TYPE_INSTANCE_CREATE_INFO_ANDROID_KHR".."1000008000"
+ )
+}
\ No newline at end of file
diff --git a/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_loader_init_android.kt b/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_loader_init_android.kt
new file mode 100644
index 0000000000..f319903015
--- /dev/null
+++ b/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_loader_init_android.kt
@@ -0,0 +1,42 @@
+/*
+ * Copyright LWJGL. All rights reserved.
+ * License terms: https://www.lwjgl.org/license
+ * MACHINE GENERATED FILE, DO NOT EDIT
+ */
+package openxr.templates
+
+import org.lwjgl.generator.*
+import openxr.*
+
+val KHR_loader_init_android = "KHRLoaderInitAndroid".nativeClassXR("KHR_loader_init_android", type = "instance", postfix = "KHR") {
+ documentation =
+ """
+ The XR_KHR_loader_init_android extension.
+
+ On Android, some loader implementations need the application to provide additional information on initialization. This extension defines the parameters needed by such implementations. If this is available on a given implementation, an application must make use of it.
+
+ On implementations where use of this is required, the following condition must apply:
+
+
+ - Whenever an OpenXR function accepts an ##XrLoaderInitInfoBaseHeaderKHR pointer, the runtime (and loader) must also accept a pointer to an ##XrLoaderInitInfoAndroidKHR.
+
+ """
+
+ IntConstant(
+ "The extension specification version.",
+
+ "KHR_loader_init_android_SPEC_VERSION".."1"
+ )
+
+ StringConstant(
+ "The extension name.",
+
+ "KHR_LOADER_INIT_ANDROID_EXTENSION_NAME".."XR_KHR_loader_init_android"
+ )
+
+ EnumConstant(
+ "Extends {@code XrStructureType}.",
+
+ "TYPE_LOADER_INIT_INFO_ANDROID_KHR".."1000089000"
+ )
+}
\ No newline at end of file
diff --git a/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_opengl_es_enable.kt b/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_opengl_es_enable.kt
new file mode 100644
index 0000000000..6d4211aae9
--- /dev/null
+++ b/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/KHR_opengl_es_enable.kt
@@ -0,0 +1,101 @@
+/*
+ * Copyright LWJGL. All rights reserved.
+ * License terms: https://www.lwjgl.org/license
+ * MACHINE GENERATED FILE, DO NOT EDIT
+ */
+package openxr.templates
+
+import org.lwjgl.generator.*
+import openxr.*
+
+val KHR_opengl_es_enable = "KHROpenGLESEnable".nativeClassXR("KHR_opengl_es_enable", type = "instance", postfix = "KHR") {
+ documentation =
+ """
+ The XR_KHR_opengl_es_enable extension.
+
+ This extension must be provided by runtimes supporting applications using OpenGL ES APIs for rendering. OpenGL ES applications need this extension to obtain compatible swapchain images which the runtime is required to supply. The runtime needs the following OpenGL ES objects from the application in order to interact properly with the OpenGL ES driver: EGLDisplay, EGLConfig and EGLContext.
+
+ These are passed from the application to the runtime in a ##XrGraphicsBindingOpenGLESAndroidKHR structure when creating the {@code XrSession}. Although not restricted to Android, the OpenGL ES extension is currently tailored for Android.
+
+ Note that the application is responsible for creating the required OpenGL ES objects, including an OpenGL ES context to be used for rendering.
+
+ This extension also provides mechanisms for the application to interact with images acquired by calling #EnumerateSwapchainImages().
+
+ In order to expose the structures, types, and functions of this extension, the application source code must define #USE_GRAPHICS_API_OPENGL_ES, as well as an appropriate window system define, before including the OpenXR platform header {@code openxr_platform.h}, in all portions of your library or application that include it. The only window system define currently supported by this extension is:
+
+
+ - #USE_PLATFORM_ANDROID
+
+ """
+
+ IntConstant(
+ "The extension specification version.",
+
+ "KHR_opengl_es_enable_SPEC_VERSION".."8"
+ )
+
+ StringConstant(
+ "The extension name.",
+
+ "KHR_OPENGL_ES_ENABLE_EXTENSION_NAME".."XR_KHR_opengl_es_enable"
+ )
+
+ EnumConstant(
+ "Extends {@code XrStructureType}.",
+
+ "TYPE_GRAPHICS_BINDING_OPENGL_ES_ANDROID_KHR".."1000024001",
+ "TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR".."1000024002",
+ "TYPE_GRAPHICS_REQUIREMENTS_OPENGL_ES_KHR".."1000024003"
+ )
+
+ XrResult(
+ "GetOpenGLESGraphicsRequirementsKHR",
+ """
+ Retrieve the OpenGL ES version requirements for an instance and system.
+
+ C Specification
+ To query OpenGL ES API version requirements for an instance and system, call:
+
+
+XrResult xrGetOpenGLESGraphicsRequirementsKHR(
+ XrInstance instance,
+ XrSystemId systemId,
+ XrGraphicsRequirementsOpenGLESKHR* graphicsRequirements);
+
+ Description
+ The #GetOpenGLESGraphicsRequirementsKHR() function identifies to the application the minimum OpenGL ES version requirement and the highest known tested OpenGL ES version. The runtime must return #ERROR_GRAPHICS_REQUIREMENTS_CALL_MISSING (#ERROR_VALIDATION_FAILURE may be returned due to legacy behavior) on calls to #CreateSession() if #GetOpenGLESGraphicsRequirementsKHR() has not been called for the same {@code instance} and {@code systemId}.
+
+ Valid Usage (Implicit)
+
+ - The {@link KHROpenGLESEnable XR_KHR_opengl_es_enable} extension must be enabled prior to calling #GetOpenGLESGraphicsRequirementsKHR()
+ - {@code instance} must be a valid {@code XrInstance} handle
+ - {@code graphicsRequirements} must be a pointer to an ##XrGraphicsRequirementsOpenGLESKHR structure
+
+
+ Return Codes
+
+ - On success, this command returns
+
+
+ - On failure, this command returns
+
+ - #ERROR_FUNCTION_UNSUPPORTED
+ - #ERROR_VALIDATION_FAILURE
+ - #ERROR_RUNTIME_FAILURE
+ - #ERROR_HANDLE_INVALID
+ - #ERROR_INSTANCE_LOST
+ - #ERROR_SYSTEM_INVALID
+
+
+
+ See Also
+ ##XrGraphicsRequirementsOpenGLESKHR
+ """,
+
+ XrInstance("instance", "an {@code XrInstance} handle previously created with #CreateInstance()."),
+ XrSystemId("systemId", "an {@code XrSystemId} handle for the system which will be used to create a session."),
+ XrGraphicsRequirementsOpenGLESKHR.p("graphicsRequirements", "the ##XrGraphicsRequirementsOpenGLESKHR output structure.")
+ )
+}
\ No newline at end of file
diff --git a/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/XR10.kt b/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/XR10.kt
index 63ed4e8643..ca37a3c380 100644
--- a/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/XR10.kt
+++ b/modules/lwjgl/openxr/src/templates/kotlin/openxr/templates/XR10.kt
@@ -60,8 +60,8 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
#ERROR_SIZE_INSUFFICIENT | The supplied size was smaller than required. |
#ERROR_HANDLE_INVALID | A supplied object handle was invalid. |
#ERROR_INSTANCE_LOST | The {@code XrInstance} was lost or could not be found. It will need to be destroyed and optionally recreated. |
- #ERROR_SESSION_RUNNING | The session is already running. |
- #ERROR_SESSION_NOT_RUNNING | The session is not yet running. |
+ #ERROR_SESSION_RUNNING | The session is already running. |
+ #ERROR_SESSION_NOT_RUNNING | The session is not yet running. |
#ERROR_SESSION_LOST | The {@code XrSession} was lost. It will need to be destroyed and optionally recreated. |
#ERROR_SYSTEM_INVALID | The provided {@code XrSystemId} was invalid. |
#ERROR_PATH_INVALID | The provided {@code XrPath} was not valid. |
@@ -96,6 +96,8 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
#ERROR_LOCALIZED_NAME_INVALID | The localized name provided was invalid. |
#ERROR_GRAPHICS_REQUIREMENTS_CALL_MISSING | The {@code xrGetGraphicsRequirements}* call was not made before calling {@code xrCreateSession}. |
#ERROR_RUNTIME_UNAVAILABLE | The loader was unable to find or load a runtime. |
+ #ERROR_ANDROID_THREAD_SETTINGS_ID_INVALID_KHR | xrSetAndroidApplicationThreadKHR failed as thread id is invalid. (Added by the {@link KHRAndroidThreadSettings XR_KHR_android_thread_settings} extension) |
+ #ERROR_ANDROID_THREAD_SETTINGS_FAILURE_KHR | xrSetAndroidApplicationThreadKHR failed setting the thread attributes/priority. (Added by the {@link KHRAndroidThreadSettings XR_KHR_android_thread_settings} extension) |
#ERROR_CREATE_SPATIAL_ANCHOR_FAILED_MSFT | Spatial anchor could not be created at that location. (Added by the {@link MSFTSpatialAnchor XR_MSFT_spatial_anchor} extension) |
#ERROR_SECONDARY_VIEW_CONFIGURATION_TYPE_NOT_ENABLED_MSFT | The secondary view configuration was not enabled when creating the session. (Added by the {@link MSFTSecondaryViewConfiguration XR_MSFT_secondary_view_configuration} extension) |
#ERROR_CONTROLLER_MODEL_KEY_INVALID_MSFT | The controller model key is invalid. (Added by the {@link MSFTControllerModel XR_MSFT_controller_model} extension) |
@@ -128,10 +130,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
#ERROR_SPACE_NETWORK_TIMEOUT_FB | Timeout occurred while waiting for network request to complete. (Added by the {@link FBSpatialEntitySharing XR_FB_spatial_entity_sharing} extension) |
#ERROR_SPACE_NETWORK_REQUEST_FAILED_FB | The network request failed. (Added by the {@link FBSpatialEntitySharing XR_FB_spatial_entity_sharing} extension) |
#ERROR_SPACE_CLOUD_STORAGE_DISABLED_FB | Cloud storage is required for this operation but is currently disabled. (Added by the {@link FBSpatialEntitySharing XR_FB_spatial_entity_sharing} extension) |
- #ERROR_PASSTHROUGH_COLOR_LUT_BUFFER_SIZE_MISMATCH_META | The provided data buffer did not match the required size. (Added by the {@link METAPassthroughColorLut XR_META_passthrough_color_lut} extension) |
#ERROR_HINT_ALREADY_SET_QCOM | Tracking optimization hint is already set for the domain. (Added by the {@link QCOMTrackingOptimizationSettings XR_QCOM_tracking_optimization_settings} extension) |
- #ERROR_SPACE_NOT_LOCATABLE_EXT | The space passed to the function was not locatable. (Added by the {@link EXTPlaneDetection XR_EXT_plane_detection} extension) |
- #ERROR_PLANE_DETECTION_PERMISSION_DENIED_EXT | The permission for this resource was not granted. (Added by the {@link EXTPlaneDetection XR_EXT_plane_detection} extension) |
@@ -201,12 +200,12 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
XrStructureType - Values for type members of structs
Description
- Most structures containing {@code type} members have a value of {@code type} matching the type of the structure, as described more fully in Valid Usage for Structure Types.
+ Most structures containing {@code type} members have a value of {@code type} matching the type of the structure, as described more fully in Valid Usage for Structure Types.
- Note that all extension enums begin at the extension enum base of 10^9
(base 10). Each extension is assigned a block of 1000 enums, starting at the enum base and arranged by the extension’s number.
+ Note that all extension enums begin at the extension enum base of 110
(base 10). Each extension is assigned a block of 1000 enums, starting at the enum base and arranged by the extension’s index.
See Also
- ##XrActionCreateInfo, ##XrActionSetCreateInfo, ##XrActionSpaceCreateInfo, ##XrActionStateBoolean, ##XrActionStateFloat, ##XrActionStateGetInfo, ##XrActionStatePose, ##XrActionStateVector2f, ##XrActionsSyncInfo, ##XrActiveActionSetPrioritiesEXT, ##XrApiLayerProperties, ##XrBaseInStructure, ##XrBaseOutStructure, ##XrBindingModificationBaseHeaderKHR, ##XrBindingModificationsKHR, ##XrBodyJointLocationsFB, ##XrBodyJointsLocateInfoFB, ##XrBodySkeletonFB, ##XrBodyTrackerCreateInfoFB, ##XrBoundSourcesForActionEnumerateInfo, ##XrBoundary2DFB, ##XrCompositionLayerAlphaBlendFB, ##XrCompositionLayerBaseHeader, ##XrCompositionLayerColorScaleBiasKHR, ##XrCompositionLayerCubeKHR, ##XrCompositionLayerCylinderKHR, ##XrCompositionLayerDepthInfoKHR, ##XrCompositionLayerDepthTestFB, ##XrCompositionLayerDepthTestVARJO, ##XrCompositionLayerEquirect2KHR, ##XrCompositionLayerEquirectKHR, ##XrCompositionLayerImageLayoutFB, ##XrCompositionLayerPassthroughFB, ##XrCompositionLayerPassthroughHTC, ##XrCompositionLayerProjection, ##XrCompositionLayerProjectionView, ##XrCompositionLayerQuad, ##XrCompositionLayerReprojectionInfoMSFT, ##XrCompositionLayerReprojectionPlaneOverrideMSFT, ##XrCompositionLayerSecureContentFB, ##XrCompositionLayerSettingsFB, ##XrCompositionLayerSpaceWarpInfoFB, ##XrControllerModelKeyStateMSFT, ##XrControllerModelNodePropertiesMSFT, ##XrControllerModelNodeStateMSFT, ##XrControllerModelPropertiesMSFT, ##XrControllerModelStateMSFT, ##XrCoordinateSpaceCreateInfoML, ##XrDebugUtilsLabelEXT, ##XrDebugUtilsMessengerCallbackDataEXT, ##XrDebugUtilsMessengerCreateInfoEXT, ##XrDebugUtilsObjectNameInfoEXT, ##XrDevicePcmSampleRateStateFB, ##XrDigitalLensControlALMALENCE, ##XrEventDataBaseHeader, ##XrEventDataBuffer, ##XrEventDataDisplayRefreshRateChangedFB, ##XrEventDataEventsLost, ##XrEventDataInstanceLossPending, ##XrEventDataInteractionProfileChanged, ##XrEventDataMainSessionVisibilityChangedEXTX, ##XrEventDataMarkerTrackingUpdateVARJO, ##XrEventDataPassthroughStateChangedFB, ##XrEventDataPerfSettingsEXT, ##XrEventDataReferenceSpaceChangePending, ##XrEventDataSceneCaptureCompleteFB, ##XrEventDataSessionStateChanged, ##XrEventDataSpaceEraseCompleteFB, ##XrEventDataSpaceListSaveCompleteFB, ##XrEventDataSpaceQueryCompleteFB, ##XrEventDataSpaceQueryResultsAvailableFB, ##XrEventDataSpaceSaveCompleteFB, ##XrEventDataSpaceSetStatusCompleteFB, ##XrEventDataSpaceShareCompleteFB, ##XrEventDataSpatialAnchorCreateCompleteFB, ##XrEventDataVirtualKeyboardBackspaceMETA, ##XrEventDataVirtualKeyboardCommitTextMETA, ##XrEventDataVirtualKeyboardEnterMETA, ##XrEventDataVirtualKeyboardHiddenMETA, ##XrEventDataVirtualKeyboardShownMETA, ##XrEventDataVisibilityMaskChangedKHR, ##XrEventDataViveTrackerConnectedHTCX, ##XrExtensionProperties, ##XrExternalCameraOCULUS, ##XrEyeGazeSampleTimeEXT, ##XrEyeGazesFB, ##XrEyeGazesInfoFB, ##XrEyeTrackerCreateInfoFB, ##XrFaceExpressionInfoFB, ##XrFaceExpressionWeightsFB, ##XrFaceTrackerCreateInfoFB, ##XrFacialExpressionsHTC, ##XrFacialTrackerCreateInfoHTC, ##XrForceFeedbackCurlApplyLocationsMNDX, ##XrFoveatedViewConfigurationViewVARJO, ##XrFoveationApplyInfoHTC, ##XrFoveationCustomModeInfoHTC, ##XrFoveationDynamicModeInfoHTC, ##XrFoveationEyeTrackedProfileCreateInfoMETA, ##XrFoveationEyeTrackedStateMETA, ##XrFoveationLevelProfileCreateInfoFB, ##XrFoveationProfileCreateInfoFB, ##XrFrameBeginInfo, ##XrFrameEndInfo, ##XrFrameEndInfoML, ##XrFrameState, ##XrFrameWaitInfo, ##XrGeometryInstanceCreateInfoFB, ##XrGeometryInstanceTransformFB, ##XrGlobalDimmerFrameEndInfoML, ##XrGraphicsBindingEGLMNDX, ##XrGraphicsBindingOpenGLWaylandKHR, ##XrGraphicsBindingOpenGLWin32KHR, ##XrGraphicsBindingOpenGLXcbKHR, ##XrGraphicsBindingOpenGLXlibKHR, ##XrGraphicsBindingVulkanKHR, ##XrGraphicsRequirementsOpenGLKHR, ##XrGraphicsRequirementsVulkanKHR, ##XrHandJointLocationsEXT, ##XrHandJointVelocitiesEXT, ##XrHandJointsLocateInfoEXT, ##XrHandJointsMotionRangeInfoEXT, ##XrHandMeshMSFT, ##XrHandMeshSpaceCreateInfoMSFT, ##XrHandMeshUpdateInfoMSFT, ##XrHandPoseTypeInfoMSFT, ##XrHandTrackerCreateInfoEXT, ##XrHandTrackingAimStateFB, ##XrHandTrackingCapsulesStateFB, ##XrHandTrackingDataSourceInfoEXT, ##XrHandTrackingDataSourceStateEXT, ##XrHandTrackingMeshFB, ##XrHandTrackingScaleFB, ##XrHapticActionInfo, ##XrHapticAmplitudeEnvelopeVibrationFB, ##XrHapticBaseHeader, ##XrHapticPcmVibrationFB, ##XrHapticVibration, ##XrHolographicWindowAttachmentMSFT, ##XrInputSourceLocalizedNameGetInfo, ##XrInstanceCreateInfo, ##XrInstanceProperties, ##XrInteractionProfileAnalogThresholdVALVE, ##XrInteractionProfileDpadBindingEXT, ##XrInteractionProfileState, ##XrInteractionProfileSuggestedBinding, ##XrKeyboardSpaceCreateInfoFB, ##XrKeyboardTrackingQueryFB, ##XrLoaderInitInfoBaseHeaderKHR, ##XrLocalDimmingFrameEndInfoMETA, ##XrMarkerSpaceCreateInfoVARJO, ##XrNewSceneComputeInfoMSFT, ##XrPassthroughBrightnessContrastSaturationFB, ##XrPassthroughColorHTC, ##XrPassthroughColorLutCreateInfoMETA, ##XrPassthroughColorLutUpdateInfoMETA, ##XrPassthroughColorMapInterpolatedLutMETA, ##XrPassthroughColorMapLutMETA, ##XrPassthroughColorMapMonoToMonoFB, ##XrPassthroughColorMapMonoToRgbaFB, ##XrPassthroughCreateInfoFB, ##XrPassthroughCreateInfoHTC, ##XrPassthroughKeyboardHandsIntensityFB, ##XrPassthroughLayerCreateInfoFB, ##XrPassthroughMeshTransformInfoHTC, ##XrPassthroughPreferencesMETA, ##XrPassthroughStyleFB, ##XrPerformanceMetricsCounterMETA, ##XrPerformanceMetricsStateMETA, ##XrPlaneDetectorBeginInfoEXT, ##XrPlaneDetectorCreateInfoEXT, ##XrPlaneDetectorGetInfoEXT, ##XrPlaneDetectorLocationEXT, ##XrPlaneDetectorLocationsEXT, ##XrPlaneDetectorPolygonBufferEXT, ##XrReferenceSpaceCreateInfo, ##XrRenderModelBufferFB, ##XrRenderModelCapabilitiesRequestFB, ##XrRenderModelLoadInfoFB, ##XrRenderModelPathInfoFB, ##XrRenderModelPropertiesFB, ##XrRoomLayoutFB, ##XrSceneCaptureRequestInfoFB, ##XrSceneComponentLocationsMSFT, ##XrSceneComponentParentFilterInfoMSFT, ##XrSceneComponentsGetInfoMSFT, ##XrSceneComponentsLocateInfoMSFT, ##XrSceneComponentsMSFT, ##XrSceneCreateInfoMSFT, ##XrSceneDeserializeInfoMSFT, ##XrSceneMeshBuffersGetInfoMSFT, ##XrSceneMeshBuffersMSFT, ##XrSceneMeshIndicesUint16MSFT, ##XrSceneMeshIndicesUint32MSFT, ##XrSceneMeshVertexBufferMSFT, ##XrSceneMeshesMSFT, ##XrSceneObjectTypesFilterInfoMSFT, ##XrSceneObjectsMSFT, ##XrSceneObserverCreateInfoMSFT, ##XrScenePlaneAlignmentFilterInfoMSFT, ##XrScenePlanesMSFT, ##XrSecondaryViewConfigurationFrameEndInfoMSFT, ##XrSecondaryViewConfigurationFrameStateMSFT, ##XrSecondaryViewConfigurationLayerInfoMSFT, ##XrSecondaryViewConfigurationSessionBeginInfoMSFT, ##XrSecondaryViewConfigurationStateMSFT, ##XrSecondaryViewConfigurationSwapchainCreateInfoMSFT, ##XrSemanticLabelsFB, ##XrSemanticLabelsSupportInfoFB, ##XrSerializedSceneFragmentDataGetInfoMSFT, ##XrSessionActionSetsAttachInfo, ##XrSessionBeginInfo, ##XrSessionCreateInfo, ##XrSessionCreateInfoOverlayEXTX, ##XrSpaceComponentFilterInfoFB, ##XrSpaceComponentStatusFB, ##XrSpaceComponentStatusSetInfoFB, ##XrSpaceContainerFB, ##XrSpaceEraseInfoFB, ##XrSpaceFilterInfoBaseHeaderFB, ##XrSpaceListSaveInfoFB, ##XrSpaceLocation, ##XrSpaceQueryInfoBaseHeaderFB, ##XrSpaceQueryInfoFB, ##XrSpaceQueryResultsFB, ##XrSpaceSaveInfoFB, ##XrSpaceShareInfoFB, ##XrSpaceStorageLocationFilterInfoFB, ##XrSpaceUserCreateInfoFB, ##XrSpaceUuidFilterInfoFB, ##XrSpaceVelocity, ##XrSpatialAnchorCreateInfoFB, ##XrSpatialAnchorCreateInfoMSFT, ##XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT, ##XrSpatialAnchorPersistenceInfoMSFT, ##XrSpatialAnchorSpaceCreateInfoMSFT, ##XrSpatialGraphNodeBindingPropertiesGetInfoMSFT, ##XrSpatialGraphNodeBindingPropertiesMSFT, ##XrSpatialGraphNodeSpaceCreateInfoMSFT, ##XrSpatialGraphStaticNodeBindingCreateInfoMSFT, ##XrSwapchainCreateInfo, ##XrSwapchainCreateInfoFoveationFB, ##XrSwapchainImageAcquireInfo, ##XrSwapchainImageBaseHeader, ##XrSwapchainImageFoveationVulkanFB, ##XrSwapchainImageOpenGLKHR, ##XrSwapchainImageReleaseInfo, ##XrSwapchainImageVulkanKHR, ##XrSwapchainImageWaitInfo, ##XrSwapchainStateBaseHeaderFB, ##XrSwapchainStateFoveationFB, ##XrSwapchainStateSamplerOpenGLESFB, ##XrSwapchainStateSamplerVulkanFB, ##XrSystemBodyTrackingPropertiesFB, ##XrSystemColorSpacePropertiesFB, ##XrSystemEyeGazeInteractionPropertiesEXT, ##XrSystemEyeTrackingPropertiesFB, ##XrSystemFaceTrackingPropertiesFB, ##XrSystemFacialTrackingPropertiesHTC, ##XrSystemForceFeedbackCurlPropertiesMNDX, ##XrSystemFoveatedRenderingPropertiesVARJO, ##XrSystemFoveationEyeTrackedPropertiesMETA, ##XrSystemGetInfo, ##XrSystemHandTrackingMeshPropertiesMSFT, ##XrSystemHandTrackingPropertiesEXT, ##XrSystemHeadsetIdPropertiesMETA, ##XrSystemKeyboardTrackingPropertiesFB, ##XrSystemMarkerTrackingPropertiesVARJO, ##XrSystemPassthroughColorLutPropertiesMETA, ##XrSystemPassthroughProperties2FB, ##XrSystemPassthroughPropertiesFB, ##XrSystemPlaneDetectionPropertiesEXT, ##XrSystemProperties, ##XrSystemRenderModelPropertiesFB, ##XrSystemSpaceWarpPropertiesFB, ##XrSystemSpatialEntityPropertiesFB, ##XrSystemVirtualKeyboardPropertiesMETA, ##XrTriangleMeshCreateInfoFB, ##XrView, ##XrViewConfigurationDepthRangeEXT, ##XrViewConfigurationProperties, ##XrViewConfigurationView, ##XrViewConfigurationViewFovEPIC, ##XrViewLocateFoveatedRenderingVARJO, ##XrViewLocateInfo, ##XrViewState, ##XrVirtualKeyboardAnimationStateMETA, ##XrVirtualKeyboardCreateInfoMETA, ##XrVirtualKeyboardInputInfoMETA, ##XrVirtualKeyboardLocationInfoMETA, ##XrVirtualKeyboardModelAnimationStatesMETA, ##XrVirtualKeyboardModelVisibilitySetInfoMETA, ##XrVirtualKeyboardSpaceCreateInfoMETA, ##XrVirtualKeyboardTextContextChangeInfoMETA, ##XrVirtualKeyboardTextureDataMETA, ##XrVisibilityMaskKHR, ##XrVisualMeshComputeLodInfoMSFT, ##XrViveTrackerPathsHTCX, ##XrVulkanDeviceCreateInfoKHR, ##XrVulkanGraphicsDeviceGetInfoKHR, ##XrVulkanInstanceCreateInfoKHR, ##XrVulkanSwapchainCreateInfoMETA, ##XrVulkanSwapchainFormatListCreateInfoKHR, #StructureTypeToString()
+ ##XrActionCreateInfo, ##XrActionSetCreateInfo, ##XrActionSpaceCreateInfo, ##XrActionStateBoolean, ##XrActionStateFloat, ##XrActionStateGetInfo, ##XrActionStatePose, ##XrActionStateVector2f, ##XrActionsSyncInfo, ##XrActiveActionSetPrioritiesEXT, ##XrAndroidSurfaceSwapchainCreateInfoFB, ##XrApiLayerProperties, ##XrBaseInStructure, ##XrBaseOutStructure, ##XrBindingModificationBaseHeaderKHR, ##XrBindingModificationsKHR, ##XrBodyJointLocationsFB, ##XrBodyJointsLocateInfoFB, ##XrBodySkeletonFB, ##XrBodyTrackerCreateInfoFB, ##XrBoundSourcesForActionEnumerateInfo, ##XrBoundary2DFB, ##XrCompositionLayerAlphaBlendFB, ##XrCompositionLayerBaseHeader, ##XrCompositionLayerColorScaleBiasKHR, ##XrCompositionLayerCubeKHR, ##XrCompositionLayerCylinderKHR, ##XrCompositionLayerDepthInfoKHR, ##XrCompositionLayerDepthTestFB, ##XrCompositionLayerDepthTestVARJO, ##XrCompositionLayerEquirect2KHR, ##XrCompositionLayerEquirectKHR, ##XrCompositionLayerImageLayoutFB, ##XrCompositionLayerPassthroughFB, ##XrCompositionLayerPassthroughHTC, ##XrCompositionLayerProjection, ##XrCompositionLayerProjectionView, ##XrCompositionLayerQuad, ##XrCompositionLayerReprojectionInfoMSFT, ##XrCompositionLayerReprojectionPlaneOverrideMSFT, ##XrCompositionLayerSecureContentFB, ##XrCompositionLayerSettingsFB, ##XrCompositionLayerSpaceWarpInfoFB, ##XrControllerModelKeyStateMSFT, ##XrControllerModelNodePropertiesMSFT, ##XrControllerModelNodeStateMSFT, ##XrControllerModelPropertiesMSFT, ##XrControllerModelStateMSFT, ##XrCoordinateSpaceCreateInfoML, ##XrDebugUtilsLabelEXT, ##XrDebugUtilsMessengerCallbackDataEXT, ##XrDebugUtilsMessengerCreateInfoEXT, ##XrDebugUtilsObjectNameInfoEXT, ##XrDevicePcmSampleRateStateFB, ##XrDigitalLensControlALMALENCE, ##XrEventDataBaseHeader, ##XrEventDataBuffer, ##XrEventDataDisplayRefreshRateChangedFB, ##XrEventDataEventsLost, ##XrEventDataInstanceLossPending, ##XrEventDataInteractionProfileChanged, ##XrEventDataMainSessionVisibilityChangedEXTX, ##XrEventDataMarkerTrackingUpdateVARJO, ##XrEventDataPassthroughStateChangedFB, ##XrEventDataPerfSettingsEXT, ##XrEventDataReferenceSpaceChangePending, ##XrEventDataSceneCaptureCompleteFB, ##XrEventDataSessionStateChanged, ##XrEventDataSpaceEraseCompleteFB, ##XrEventDataSpaceListSaveCompleteFB, ##XrEventDataSpaceQueryCompleteFB, ##XrEventDataSpaceQueryResultsAvailableFB, ##XrEventDataSpaceSaveCompleteFB, ##XrEventDataSpaceSetStatusCompleteFB, ##XrEventDataSpaceShareCompleteFB, ##XrEventDataSpatialAnchorCreateCompleteFB, ##XrEventDataVisibilityMaskChangedKHR, ##XrEventDataViveTrackerConnectedHTCX, ##XrExtensionProperties, ##XrExternalCameraOCULUS, ##XrEyeGazeSampleTimeEXT, ##XrEyeGazesFB, ##XrEyeGazesInfoFB, ##XrEyeTrackerCreateInfoFB, ##XrFaceExpressionInfoFB, ##XrFaceExpressionWeightsFB, ##XrFaceTrackerCreateInfoFB, ##XrFacialExpressionsHTC, ##XrFacialTrackerCreateInfoHTC, ##XrForceFeedbackCurlApplyLocationsMNDX, ##XrFoveatedViewConfigurationViewVARJO, ##XrFoveationApplyInfoHTC, ##XrFoveationCustomModeInfoHTC, ##XrFoveationDynamicModeInfoHTC, ##XrFoveationEyeTrackedProfileCreateInfoMETA, ##XrFoveationEyeTrackedStateMETA, ##XrFoveationLevelProfileCreateInfoFB, ##XrFoveationProfileCreateInfoFB, ##XrFrameBeginInfo, ##XrFrameEndInfo, ##XrFrameEndInfoML, ##XrFrameState, ##XrFrameWaitInfo, ##XrGeometryInstanceCreateInfoFB, ##XrGeometryInstanceTransformFB, ##XrGlobalDimmerFrameEndInfoML, ##XrGraphicsBindingD3D11KHR, ##XrGraphicsBindingD3D12KHR, ##XrGraphicsBindingEGLMNDX, ##XrGraphicsBindingOpenGLESAndroidKHR, ##XrGraphicsBindingOpenGLWaylandKHR, ##XrGraphicsBindingOpenGLWin32KHR, ##XrGraphicsBindingOpenGLXcbKHR, ##XrGraphicsBindingOpenGLXlibKHR, ##XrGraphicsBindingVulkanKHR, ##XrGraphicsRequirementsD3D11KHR, ##XrGraphicsRequirementsD3D12KHR, ##XrGraphicsRequirementsOpenGLESKHR, ##XrGraphicsRequirementsOpenGLKHR, ##XrGraphicsRequirementsVulkanKHR, ##XrHandJointLocationsEXT, ##XrHandJointVelocitiesEXT, ##XrHandJointsLocateInfoEXT, ##XrHandJointsMotionRangeInfoEXT, ##XrHandMeshMSFT, ##XrHandMeshSpaceCreateInfoMSFT, ##XrHandMeshUpdateInfoMSFT, ##XrHandPoseTypeInfoMSFT, ##XrHandTrackerCreateInfoEXT, ##XrHandTrackingAimStateFB, ##XrHandTrackingCapsulesStateFB, ##XrHandTrackingMeshFB, ##XrHandTrackingScaleFB, ##XrHapticActionInfo, ##XrHapticAmplitudeEnvelopeVibrationFB, ##XrHapticBaseHeader, ##XrHapticPcmVibrationFB, ##XrHapticVibration, ##XrHolographicWindowAttachmentMSFT, ##XrInputSourceLocalizedNameGetInfo, ##XrInstanceCreateInfo, ##XrInstanceCreateInfoAndroidKHR, ##XrInstanceProperties, ##XrInteractionProfileAnalogThresholdVALVE, ##XrInteractionProfileDpadBindingEXT, ##XrInteractionProfileState, ##XrInteractionProfileSuggestedBinding, ##XrKeyboardSpaceCreateInfoFB, ##XrKeyboardTrackingQueryFB, ##XrLoaderInitInfoAndroidKHR, ##XrLoaderInitInfoBaseHeaderKHR, ##XrLocalDimmingFrameEndInfoMETA, ##XrMarkerSpaceCreateInfoVARJO, ##XrNewSceneComputeInfoMSFT, ##XrPassthroughBrightnessContrastSaturationFB, ##XrPassthroughColorHTC, ##XrPassthroughColorMapMonoToMonoFB, ##XrPassthroughColorMapMonoToRgbaFB, ##XrPassthroughCreateInfoFB, ##XrPassthroughCreateInfoHTC, ##XrPassthroughKeyboardHandsIntensityFB, ##XrPassthroughLayerCreateInfoFB, ##XrPassthroughMeshTransformInfoHTC, ##XrPassthroughStyleFB, ##XrPerformanceMetricsCounterMETA, ##XrPerformanceMetricsStateMETA, ##XrReferenceSpaceCreateInfo, ##XrRenderModelBufferFB, ##XrRenderModelCapabilitiesRequestFB, ##XrRenderModelLoadInfoFB, ##XrRenderModelPathInfoFB, ##XrRenderModelPropertiesFB, ##XrRoomLayoutFB, ##XrSceneCaptureRequestInfoFB, ##XrSceneComponentLocationsMSFT, ##XrSceneComponentParentFilterInfoMSFT, ##XrSceneComponentsGetInfoMSFT, ##XrSceneComponentsLocateInfoMSFT, ##XrSceneComponentsMSFT, ##XrSceneCreateInfoMSFT, ##XrSceneDeserializeInfoMSFT, ##XrSceneMeshBuffersGetInfoMSFT, ##XrSceneMeshBuffersMSFT, ##XrSceneMeshIndicesUint16MSFT, ##XrSceneMeshIndicesUint32MSFT, ##XrSceneMeshVertexBufferMSFT, ##XrSceneMeshesMSFT, ##XrSceneObjectTypesFilterInfoMSFT, ##XrSceneObjectsMSFT, ##XrSceneObserverCreateInfoMSFT, ##XrScenePlaneAlignmentFilterInfoMSFT, ##XrScenePlanesMSFT, ##XrSecondaryViewConfigurationFrameEndInfoMSFT, ##XrSecondaryViewConfigurationFrameStateMSFT, ##XrSecondaryViewConfigurationLayerInfoMSFT, ##XrSecondaryViewConfigurationSessionBeginInfoMSFT, ##XrSecondaryViewConfigurationStateMSFT, ##XrSecondaryViewConfigurationSwapchainCreateInfoMSFT, ##XrSemanticLabelsFB, ##XrSerializedSceneFragmentDataGetInfoMSFT, ##XrSessionActionSetsAttachInfo, ##XrSessionBeginInfo, ##XrSessionCreateInfo, ##XrSessionCreateInfoOverlayEXTX, ##XrSpaceComponentFilterInfoFB, ##XrSpaceComponentStatusFB, ##XrSpaceComponentStatusSetInfoFB, ##XrSpaceContainerFB, ##XrSpaceEraseInfoFB, ##XrSpaceFilterInfoBaseHeaderFB, ##XrSpaceListSaveInfoFB, ##XrSpaceLocation, ##XrSpaceQueryInfoBaseHeaderFB, ##XrSpaceQueryInfoFB, ##XrSpaceQueryResultsFB, ##XrSpaceSaveInfoFB, ##XrSpaceShareInfoFB, ##XrSpaceStorageLocationFilterInfoFB, ##XrSpaceUserCreateInfoFB, ##XrSpaceUuidFilterInfoFB, ##XrSpaceVelocity, ##XrSpatialAnchorCreateInfoFB, ##XrSpatialAnchorCreateInfoMSFT, ##XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT, ##XrSpatialAnchorPersistenceInfoMSFT, ##XrSpatialAnchorSpaceCreateInfoMSFT, ##XrSpatialGraphNodeBindingPropertiesGetInfoMSFT, ##XrSpatialGraphNodeBindingPropertiesMSFT, ##XrSpatialGraphNodeSpaceCreateInfoMSFT, ##XrSpatialGraphStaticNodeBindingCreateInfoMSFT, ##XrSwapchainCreateInfo, ##XrSwapchainCreateInfoFoveationFB, ##XrSwapchainImageAcquireInfo, ##XrSwapchainImageBaseHeader, ##XrSwapchainImageD3D11KHR, ##XrSwapchainImageD3D12KHR, ##XrSwapchainImageFoveationVulkanFB, ##XrSwapchainImageOpenGLESKHR, ##XrSwapchainImageOpenGLKHR, ##XrSwapchainImageReleaseInfo, ##XrSwapchainImageVulkanKHR, ##XrSwapchainImageWaitInfo, ##XrSwapchainStateAndroidSurfaceDimensionsFB, ##XrSwapchainStateBaseHeaderFB, ##XrSwapchainStateFoveationFB, ##XrSwapchainStateSamplerOpenGLESFB, ##XrSwapchainStateSamplerVulkanFB, ##XrSystemBodyTrackingPropertiesFB, ##XrSystemColorSpacePropertiesFB, ##XrSystemEyeGazeInteractionPropertiesEXT, ##XrSystemEyeTrackingPropertiesFB, ##XrSystemFaceTrackingPropertiesFB, ##XrSystemFacialTrackingPropertiesHTC, ##XrSystemForceFeedbackCurlPropertiesMNDX, ##XrSystemFoveatedRenderingPropertiesVARJO, ##XrSystemFoveationEyeTrackedPropertiesMETA, ##XrSystemGetInfo, ##XrSystemHandTrackingMeshPropertiesMSFT, ##XrSystemHandTrackingPropertiesEXT, ##XrSystemHeadsetIdPropertiesMETA, ##XrSystemKeyboardTrackingPropertiesFB, ##XrSystemMarkerTrackingPropertiesVARJO, ##XrSystemPassthroughProperties2FB, ##XrSystemPassthroughPropertiesFB, ##XrSystemProperties, ##XrSystemRenderModelPropertiesFB, ##XrSystemSpaceWarpPropertiesFB, ##XrSystemSpatialEntityPropertiesFB, ##XrTriangleMeshCreateInfoFB, ##XrView, ##XrViewConfigurationDepthRangeEXT, ##XrViewConfigurationProperties, ##XrViewConfigurationView, ##XrViewConfigurationViewFovEPIC, ##XrViewLocateFoveatedRenderingVARJO, ##XrViewLocateInfo, ##XrViewState, ##XrVisibilityMaskKHR, ##XrVisualMeshComputeLodInfoMSFT, ##XrViveTrackerPathsHTCX, ##XrVulkanDeviceCreateInfoKHR, ##XrVulkanGraphicsDeviceGetInfoKHR, ##XrVulkanInstanceCreateInfoKHR, ##XrVulkanSwapchainCreateInfoMETA, ##XrVulkanSwapchainFormatListCreateInfoKHR, #StructureTypeToString()
""",
"TYPE_UNKNOWN".."0",
@@ -598,10 +597,10 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
- #SESSION_STATE_UNKNOWN. An unknown state. The runtime must not return this value in an ##XrEventDataSessionStateChanged event.
- #SESSION_STATE_IDLE. The initial state after calling #CreateSession() or returned to after calling #EndSession().
- - #SESSION_STATE_READY. The application is ready to call #BeginSession() and sync its frame loop with the runtime.
+ - #SESSION_STATE_READY. The application is ready to call #BeginSession() and sync its frame loop with the runtime.
- #SESSION_STATE_SYNCHRONIZED. The application has synced its frame loop with the runtime but is not visible to the user.
- - #SESSION_STATE_VISIBLE. The application has synced its frame loop with the runtime and is visible to the user but cannot receive XR input.
- - #SESSION_STATE_FOCUSED. The application has synced its frame loop with the runtime, is visible to the user and can receive XR input.
+ - #SESSION_STATE_VISIBLE. The application has synced its frame loop with the runtime and is visible to the user but cannot receive XR input.
+ - #SESSION_STATE_FOCUSED. The application has synced its frame loop with the runtime, is visible to the user and can receive XR input.
- #SESSION_STATE_STOPPING. The application should exit its frame loop and call #EndSession().
- #SESSION_STATE_LOSS_PENDING. The session is in the process of being lost. The application should destroy the current session and can optionally recreate it.
- #SESSION_STATE_EXITING. The application should end its XR experience and not automatically restart it.
@@ -613,11 +612,11 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
Receiving the #SESSION_STATE_READY state indicates that the runtime desires the application to prepare rendering resources, begin its session and synchronize its frame loop with the runtime. The application does this by successfully calling #BeginSession() and then running its frame loop by calling #WaitFrame(), #BeginFrame() and #EndFrame() in a loop. If the runtime wishes to return the session to the #SESSION_STATE_IDLE state, it must wait until the application calls #BeginSession(). After returning from the #BeginSession() call, the runtime may then immediately transition forward through the #SESSION_STATE_SYNCHRONIZED state to the #SESSION_STATE_STOPPING state, to request that the application end this session. If the system supports a user engagement sensor and runtime is in #SESSION_STATE_IDLE state, the runtime should not transition to the #SESSION_STATE_READY state until the user starts engaging with the device.
- Receiving the #SESSION_STATE_SYNCHRONIZED state indicates that the application has synchronized its frame loop with the runtime, but its frames are not visible to the user. The application should continue running its frame loop by calling #WaitFrame(), #BeginFrame() and #EndFrame(), although it should avoid heavy GPU work so that other visible applications can take CPU and GPU precedence. The application can save resources here by skipping rendering and not submitting any composition layers until #WaitFrame() returns an ##XrFrameState with {@code shouldRender} set to true. A runtime may use this frame synchronization to facilitate seamless switching from a previous XR application to this application on a frame boundary.
+ Receiving the #SESSION_STATE_SYNCHRONIZED state indicates that the application has synchronized its frame loop with the runtime, but its frames are not visible to the user. The application should continue running its frame loop by calling #WaitFrame(), #BeginFrame() and #EndFrame(), although it should avoid heavy GPU work so that other visible applications can take CPU and GPU precedence. The application can save resources here by skipping rendering and not submitting any composition layers until #WaitFrame() returns an ##XrFrameState with {@code shouldRender} set to true. A runtime may use this frame synchronization to facilitate seamless switching from a previous XR application to this application on a frame boundary.
- Receiving the #SESSION_STATE_VISIBLE state indicates that the application has synchronized its frame loop with the runtime, and the session’s frames will be visible to the user, but the session is not eligible to receive XR input. An application may be visible but not have focus, for example when the runtime is composing a modal pop-up on top of the application’s rendered frames. The application should continue running its frame loop, rendering and submitting its composition layers, although it may wish to pause its experience, as users cannot interact with the application at this time. It is important for applications to continue rendering when visible, even when they do not have focus, so the user continues to see something reasonable underneath modal pop-ups. Runtimes should make input actions inactive while the application is unfocused, and applications should react to an inactive input action by skipping rendering of that action’s input avatar (depictions of hands or other tracked objects controlled by the user).
+ Receiving the #SESSION_STATE_VISIBLE state indicates that the application has synchronized its frame loop with the runtime, and the session’s frames will be visible to the user, but the session is not eligible to receive XR input. An application may be visible but not have focus, for example when the runtime is composing a modal pop-up on top of the application’s rendered frames. The application should continue running its frame loop, rendering and submitting its composition layers, although it may wish to pause its experience, as users cannot interact with the application at this time. It is important for applications to continue rendering when visible, even when they do not have focus, so the user continues to see something reasonable underneath modal pop-ups. Runtimes should make input actions inactive while the application is unfocused, and applications should react to an inactive input action by skipping rendering of that action’s input avatar (depictions of hands or other tracked objects controlled by the user).
- Receiving the #SESSION_STATE_FOCUSED state indicates that the application has synchronized its frame loop with the runtime, the session’s frames will be visible to the user, and the session is eligible to receive XR input. The runtime should only give one session XR input focus at any given time. The application should be running its frame loop, rendering and submitting composition layers, including input avatars (depictions of hands or other tracked objects controlled by the user) for any input actions that are active. The runtime should avoid rendering its own input avatars when an application is focused, unless input from a given source is being captured by the runtime at the moment.
+ Receiving the #SESSION_STATE_FOCUSED state indicates that the application has synchronized its frame loop with the runtime, the session’s frames will be visible to the user, and the session is eligible to receive XR input. The runtime should only give one session XR input focus at any given time. The application should be running its frame loop, rendering and submitting composition layers, including input avatars (depictions of hands or other tracked objects controlled by the user) for any input actions that are active. The runtime should avoid rendering its own input avatars when an application is focused, unless input from a given source is being captured by the runtime at the moment.
Receiving the #SESSION_STATE_STOPPING state indicates that the runtime has determined that the application should halt its rendering loop. Applications should exit their rendering loop and call #EndSession() when in this state. A possible reason for this would be to minimize contention between multiple applications. If the system supports a user engagement sensor and the session is running, the runtime should transition to the #SESSION_STATE_STOPPING state when the user stops engaging with the device.
@@ -1208,7 +1207,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
XrSystemId* systemId);
Description
- To get an {@code XrSystemId}, an application specifies its desired form factor to #GetSystem() and gets the runtime’s {@code XrSystemId} associated with that configuration.
+ To get an {@code XrSystemId}, an application specifies its desired form factor to #GetSystem() and gets the runtime’s {@code XrSystemId} associated with that configuration.
If the form factor is supported but temporarily unavailable, #GetSystem() must return #ERROR_FORM_FACTOR_UNAVAILABLE. A runtime may return #SUCCESS on a subsequent call for a form factor it previously returned #ERROR_FORM_FACTOR_UNAVAILABLE. For example, connecting or warming up hardware might cause an unavailable form factor to become available.
@@ -1714,7 +1713,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
For a {@code time} in the future, the runtime should locate the spaces based on the runtime’s most up-to-date prediction of how the world will be at that future time.
- The minimum valid range of values for {@code time} are described in prediction-time-limits. For values of {@code time} outside this range, #LocateSpace() may return a location with no position and #SPACE_LOCATION_POSITION_VALID_BIT unset.
+ The minimum valid range of values for {@code time} are described in prediction-time-limits. For values of {@code time} outside this range, #LocateSpace() may return a location with no position and #SPACE_LOCATION_POSITION_VALID_BIT unset.
Some devices improve their understanding of the world as the device is used. The location returned by #LocateSpace() for a given {@code space}, {@code baseSpace} and {@code time} may change over time, even for spaces that track static objects, as one or both spaces adjust their origins.
@@ -1835,9 +1834,9 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
XrResult xrEnumerateViewConfigurations(
XrInstance instance,
XrSystemId systemId,
- uint32_t viewConfigurationsTypeCapacityInput,
- uint32_t* viewConfigurationsTypeCountOutput,
- XrViewConfigurationType* viewConfigurationsTypes);
+ uint32_t viewConfigurationTypeCapacityInput,
+ uint32_t* viewConfigurationTypeCountOutput,
+ XrViewConfigurationType* viewConfigurationTypes);
Description
#EnumerateViewConfigurations() enumerates the view configuration types supported by the {@code XrSystemId}. The supported set for that system must not change during the lifetime of its {@code XrInstance}. The returned list of primary view configurations should be in order from what the runtime considered highest to lowest user preference. Thus the first enumerated view configuration type should be the one the runtime prefers the application to use if possible.
@@ -1847,8 +1846,8 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
Valid Usage (Implicit)
- {@code instance} must be a valid {@code XrInstance} handle
- - {@code viewConfigurationsTypeCountOutput} must be a pointer to a {@code uint32_t} value
- - If {@code viewConfigurationsTypeCapacityInput} is not 0, {@code viewConfigurationsTypes} must be a pointer to an array of {@code viewConfigurationsTypeCapacityInput} {@code XrViewConfigurationType} values
+ - {@code viewConfigurationTypeCountOutput} must be a pointer to a {@code uint32_t} value
+ - If {@code viewConfigurationTypeCapacityInput} is not 0, {@code viewConfigurationTypes} must be a pointer to an array of {@code viewConfigurationTypeCapacityInput} {@code XrViewConfigurationType} values
Return Codes
@@ -1872,9 +1871,9 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
XrInstance("instance", "the instance from which {@code systemId} was retrieved."),
XrSystemId("systemId", "the {@code XrSystemId} whose view configurations will be enumerated."),
- AutoSize("viewConfigurationsTypes")..uint32_t("viewConfigurationsTypeCapacityInput", "the capacity of the {@code viewConfigurations} array, or 0 to indicate a request to retrieve the required capacity."),
- Check(1)..uint32_t.p("viewConfigurationsTypeCountOutput", "a pointer to the count of {@code viewConfigurations} written, or a pointer to the required capacity in the case that {@code viewConfigurationsTypeCapacityInput} is insufficient."),
- nullable..XrViewConfigurationType.p("viewConfigurationsTypes", "a pointer to an array of {@code XrViewConfigurationType} values, but can be {@code NULL} if {@code viewConfigurationsTypeCapacityInput} is 0.")
+ AutoSize("viewConfigurationTypes")..uint32_t("viewConfigurationTypeCapacityInput", ""),
+ Check(1)..uint32_t.p("viewConfigurationTypeCountOutput", ""),
+ nullable..XrViewConfigurationType.p("viewConfigurationTypes", "")
)
XrResult(
@@ -2183,7 +2182,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
- {@code swapchain} must be a valid {@code XrSwapchain} handle
- {@code imageCountOutput} must be a pointer to a {@code uint32_t} value
- - If {@code imageCapacityInput} is not 0, {@code images} must be a pointer to an array of {@code imageCapacityInput} ##XrSwapchainImageBaseHeader-based structures. See also: ##XrSwapchainImageOpenGLKHR, ##XrSwapchainImageVulkanKHR
+ - If {@code imageCapacityInput} is not 0, {@code images} must be a pointer to an array of {@code imageCapacityInput} ##XrSwapchainImageBaseHeader-based structures. See also: ##XrSwapchainImageD3D11KHR, ##XrSwapchainImageD3D12KHR, ##XrSwapchainImageOpenGLESKHR, ##XrSwapchainImageOpenGLKHR, ##XrSwapchainImageVulkanKHR
Return Codes
@@ -2394,13 +2393,13 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
Description
When the application receives ##XrEventDataSessionStateChanged event with the #SESSION_STATE_READY state, the application should then call #BeginSession() to start rendering frames for display to the user.
- After this function successfully returns, the session is considered to be running. The application should then start its frame loop consisting of some sequence of #WaitFrame()/#BeginFrame()/#EndFrame() calls.
+ After this function successfully returns, the session is considered to be running. The application should then start its frame loop consisting of some sequence of #WaitFrame()/#BeginFrame()/#EndFrame() calls.
- If the session is already running when the application calls #BeginSession(), the runtime must return error #ERROR_SESSION_RUNNING. If the session is not running when the application calls #BeginSession(), but the session is not yet in the #SESSION_STATE_READY state, the runtime must return error #ERROR_SESSION_NOT_READY.
+ If the session is already running when the application calls #BeginSession(), the runtime must return error #ERROR_SESSION_RUNNING. If the session is not running when the application calls #BeginSession(), but the session is not yet in the #SESSION_STATE_READY state, the runtime must return error #ERROR_SESSION_NOT_READY.
Note that a runtime may decide not to show the user any given frame from a session at any time, for example if the user has switched to a different application’s running session. The application should check whether #WaitFrame() returns an ##XrFrameState with {@code shouldRender} set to true before rendering a given frame to determine whether that frame will be visible to the user.
- Runtime session frame state must start in a reset state when a session transitions to running so that no state is carried over from when the same session was previously running.
+ Runtime session frame state must start in a reset state when a session transitions to running so that no state is carried over from when the same session was previously running.
If {@code primaryViewConfigurationType} in {@code beginInfo} is not supported by the {@code XrSystemId} used to create the {@code session}, the runtime must return #ERROR_VIEW_CONFIGURATION_TYPE_UNSUPPORTED.
@@ -2452,9 +2451,9 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
XrSession session);
Description
- When the application receives ##XrEventDataSessionStateChanged event with the #SESSION_STATE_STOPPING state, the application should stop its frame loop and then call #EndSession() to end the running session. This function signals to the runtime that the application will no longer call #WaitFrame(), #BeginFrame() or #EndFrame() from any thread allowing the runtime to safely transition the session to #SESSION_STATE_IDLE. The application must also avoid reading input state or sending haptic output after calling #EndSession().
+ When the application receives ##XrEventDataSessionStateChanged event with the #SESSION_STATE_STOPPING state, the application should stop its frame loop and then call #EndSession() to end the running session. This function signals to the runtime that the application will no longer call #WaitFrame(), #BeginFrame() or #EndFrame() from any thread allowing the runtime to safely transition the session to #SESSION_STATE_IDLE. The application must also avoid reading input state or sending haptic output after calling #EndSession().
- If the session is not running when the application calls #EndSession(), the runtime must return error #ERROR_SESSION_NOT_RUNNING. If the session is still running when the application calls #EndSession(), but the session is not yet in the #SESSION_STATE_STOPPING state, the runtime must return error #ERROR_SESSION_NOT_STOPPING.
+ If the session is not running when the application calls #EndSession(), the runtime must return error #ERROR_SESSION_NOT_RUNNING. If the session is still running when the application calls #EndSession(), but the session is not yet in the #SESSION_STATE_STOPPING state, the runtime must return error #ERROR_SESSION_NOT_STOPPING.
If the application wishes to exit a running session, the application can call #RequestExitSession() so that the session transitions from #SESSION_STATE_IDLE to #SESSION_STATE_EXITING.
@@ -2487,7 +2486,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
#BeginSession(), #CreateSession(), #DestroySession()
""",
- XrSession("session", "a handle to a running {@code XrSession}.")
+ XrSession("session", "a handle to a running {@code XrSession}.")
)
XrResult(
@@ -2496,7 +2495,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
Request to exit a running session.
C Specification
- When an application wishes to exit a running session, it can call #RequestExitSession(), requesting that the runtime transition through the various intermediate session states including #SESSION_STATE_STOPPING to #SESSION_STATE_EXITING.
+ When an application wishes to exit a running session, it can call #RequestExitSession(), requesting that the runtime transition through the various intermediate session states including #SESSION_STATE_STOPPING to #SESSION_STATE_EXITING.
On platforms where an application’s lifecycle is managed by the system, session state changes may be implicitly triggered by application lifecycle state changes. On such platforms, using platform-specific methods to alter application lifecycle state may be the preferred method of provoking session state changes. The behavior of #RequestExitSession() is not altered, however explicit session exit may not interact with the platform-specific application lifecycle.
@@ -2507,7 +2506,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
XrSession session);
Description
- If {@code session} is not running when #RequestExitSession() is called, #ERROR_SESSION_NOT_RUNNING must be returned.
+ If {@code session} is not running when #RequestExitSession() is called, #ERROR_SESSION_NOT_RUNNING must be returned.
Valid Usage (Implicit)
@@ -2569,7 +2568,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
Calling #WaitFrame() must be externally synchronized by the application, concurrent calls may result in undefined behavior.
- The runtime must return #ERROR_SESSION_NOT_RUNNING if the {@code session} is not running.
+ The runtime must return #ERROR_SESSION_NOT_RUNNING if the {@code session} is not running.
Note
The engine simulation
should advance based on the display time. Every stage in the engine pipeline should use the exact same display time for one particular application-generated frame. An accurate and consistent display time across all stages and threads in the engine pipeline is important to avoid object motion judder. If the application has multiple pipeline stages, the application should pass its computed display time through its pipeline, as #WaitFrame() must be called only once per frame.
@@ -2637,7 +2636,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
The runtime
must return the success code #FRAME_DISCARDED if a prior #BeginFrame() has been called without an intervening call to #EndFrame().
- The runtime
must return #ERROR_SESSION_NOT_RUNNING if the {@code session}
is not running.
+ The runtime
must return #ERROR_SESSION_NOT_RUNNING if the {@code session}
is not running.
Valid Usage (Implicit)
@@ -2713,7 +2712,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
#ERROR_ENVIRONMENT_BLEND_MODE_UNSUPPORTED must be returned if ##XrFrameEndInfo::environmentBlendMode is not supported.
- #ERROR_SESSION_NOT_RUNNING must be returned if the {@code session} is not running.
+ #ERROR_SESSION_NOT_RUNNING must be returned if the {@code session} is not running.
Note
Applications should discard frames for which #EndFrame() returns a recoverable error over attempting to resubmit the frame with different frame parameters to provide a more consistent experience across different runtime implementations.
@@ -2784,9 +2783,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
Description
The #LocateViews() function returns the view and projection info for a particular display time. This time is typically the target display time for a given frame. Repeatedly calling #LocateViews() with the same time
may not necessarily return the same result. Instead the prediction gets increasingly accurate as the function is called closer to the given time for which a prediction is made. This allows an application to get the predicted views as late as possible in its pipeline to get the least amount of latency and prediction error.
- #LocateViews() returns an array of ##XrView elements, one for each view of the specified view configuration type, along with an ##XrViewState containing additional state data shared across all views. The eye each view corresponds to is statically defined in
{@code XrViewConfigurationType} in case the application wants to apply eye-specific rendering traits. The ##XrViewState and ##XrView member data may change on subsequent calls to #LocateViews(), and so applications
must not assume it to be constant.
-
- If an application gives a {@code viewLocateInfo} with a {@code viewConfigurationType} that was not passed in the session’s call to #BeginSession() via the {@code beginInfo.pname}:primaryViewConfigurationType, or enabled though an extension, then the runtime
must return #ERROR_VALIDATION_FAILURE.
+ #LocateViews() returns an array of ##XrView elements, one for each view of the specified view configuration type, along with an ##XrViewState containing additional state data shared across all views. The eye each view corresponds to is statically defined in
{@code XrViewConfigurationType} in case the application wants to apply eye-specific rendering traits. The ##XrViewState and ##XrView member data may change on subsequent calls to #LocateViews(), and so applications
must not assume it to be constant.
Valid Usage (Implicit)
@@ -2847,7 +2844,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
XrPath* path);
Description
- #StringToPath() retrieves the {@code XrPath} value for a well-formed path string. If such a value had not yet been assigned by the runtime to the provided path string in this {@code XrInstance}, one must be assigned at this point. All calls to this function with the same {@code XrInstance} and path string must retrieve the same {@code XrPath} value. Upon failure, #StringToPath() must return an appropriate {@code XrResult}, and may set the output parameter to #NULL_PATH. See Path Atom Type for the conditions under which an error may be returned when this function is given a valid {@code XrInstance} and a well-formed path string.
+ #StringToPath() retrieves the {@code XrPath} value for a well-formed path string. If such a value had not yet been assigned by the runtime to the provided path string in this {@code XrInstance}, one must be assigned at this point. All calls to this function with the same {@code XrInstance} and path string must retrieve the same {@code XrPath} value. Upon failure, #StringToPath() must return an appropriate {@code XrResult}, and may set the output parameter to #NULL_PATH. See Path Atom Type for the conditions under which an error may be returned when this function is given a valid {@code XrInstance} and a well-formed path string.
If the runtime’s resources are exhausted and it cannot create the path, a return value of #ERROR_PATH_COUNT_EXCEEDED must be returned. If the application specifies a string that is not a well-formed path string, #ERROR_PATH_FORMAT_INVALID must be returned.
@@ -3013,7 +3010,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
Description
Action set handles can be destroyed by calling #DestroyActionSet(). When an action set handle is destroyed, all handles of actions in that action set are also destroyed.
- The implementation must not free underlying resources for the action set while there are other valid handles that refer to those resources. The implementation may release resources for an action set when all of the action spaces for actions in that action set have been destroyed. See Action Spaces Lifetime for details.
+ The implementation must not free underlying resources for the action set while there are other valid handles that refer to those resources. The implementation may release resources for an action set when all of the action spaces for actions in that action set have been destroyed. See Action Spaces Lifetime for details.
Resources for all action sets in an instance must be freed when the instance containing those actions sets is destroyed.
@@ -3123,7 +3120,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
Description
Action handles can be destroyed by calling #DestroyAction(). Handles for actions that are part of an action set are automatically destroyed when the action set’s handle is destroyed.
- The implementation must not destroy the underlying resources for an action when #DestroyAction() is called. Those resources are still used to make action spaces locatable and when processing action priority in #SyncActions(). Destroying the action handle removes the application’s access to these resources, but has no other change on actions.
+ The implementation must not destroy the underlying resources for an action when #DestroyAction() is called. Those resources are still used to make action spaces locatable and when processing action priority in #SyncActions(). Destroying the action handle removes the application’s access to these resources, but has no other change on actions.
Resources for all actions in an instance must be freed when the instance containing those actions sets is destroyed.
@@ -3177,7 +3174,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
If the application successfully calls #SuggestInteractionProfileBindings() more than once for an interaction profile, the runtime must discard the previous suggested bindings and replace them with the new suggested bindings for that profile.
- If the interaction profile path does not follow the structure defined in Interaction Profiles or suggested bindings contain paths that do not follow the format defined in Device input subpaths, the runtime must return #ERROR_PATH_UNSUPPORTED. If the interaction profile or input source for any of the suggested bindings does not exist in the allowlist defined in Interaction Profile Paths, the runtime must return #ERROR_PATH_UNSUPPORTED. A runtime must accept every valid binding in the allowlist though it is free to ignore any of them.
+ If the interaction profile path does not follow the structure defined in Interaction Profiles or suggested bindings contain paths that do not follow the format defined in Device input subpaths, the runtime must return #ERROR_PATH_UNSUPPORTED. If the interaction profile or input source for any of the suggested bindings does not exist in the allowlist defined in Interaction Profile Paths, the runtime must return #ERROR_PATH_UNSUPPORTED. A runtime must accept every valid binding in the allowlist though it is free to ignore any of them.
If the action set for any action referenced in the {@code suggestedBindings} parameter has been included in a call to #AttachSessionActionSets(), the implementation must return #ERROR_ACTIONSETS_ALREADY_ATTACHED.
@@ -3288,7 +3285,7 @@ val XR10 = "XR10".nativeClass(Module.OPENXR, "XR10", prefix = "XR", binding = XR
The runtime must return only interaction profiles for which the application has provided bindings with #SuggestInteractionProfileBindings() or #NULL_PATH. The runtime may return interaction profiles that do not represent physically present hardware, for example if the runtime is using a known interaction profile to bind to hardware that the application is not aware of. The runtime may return the last-known interaction profile in the event that no controllers are active.
- If #AttachSessionActionSets() has not yet been called for the {@code session}, the runtime must return #ERROR_ACTIONSET_NOT_ATTACHED. If {@code topLevelUserPath} is not one of the device input subpaths described in section /user paths, the runtime must return #ERROR_PATH_UNSUPPORTED.
+ If #AttachSessionActionSets() has not yet been called for the {@code session}, the runtime must return #ERROR_ACTIONSET_NOT_ATTACHED. If {@code topLevelUserPath} is not one of the device input subpaths described in section /user paths, the runtime must return #ERROR_PATH_UNSUPPORTED.
Valid Usage (Implicit)