This extension enables the use of the Vulkan graphics API in an OpenXR runtime. Without this extension, the OpenXR runtime may not be able to use any Vulkan swapchain images.
This extension provides the mechanisms necessary for an application to generate a valid XrGraphicsBindingVulkan2KHR structure in order to create a Vulkan-based XrSession.
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, you must define USE_GRAPHICS_API_VULKAN before including the OpenXR platform header openxr_platform.h, in all portions of your library or application that include it.
This extension is intended as an alternative to XR_KHR_vulkan_enable, and does not depend on it.
| Modifier and Type | Field and Description |
|---|---|
| public static final String | XR_KHR_VULKAN_ENABLE2_EXTENSION_NAME
The extension name. |
| public static final int | XR_KHR_vulkan_enable2_SPEC_VERSION
The extension specification version. |
| public static final int | XR_TYPE_GRAPHICS_BINDING_VULKAN2_KHR
Extends |
| public static final int | XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN2_KHR
Extends |
| public static final int | XR_TYPE_SWAPCHAIN_IMAGE_VULKAN2_KHR
Extends |
| public static final int | XR_TYPE_VULKAN_DEVICE_CREATE_INFO_KHR
Extends |
| public static final int | XR_TYPE_VULKAN_GRAPHICS_DEVICE_GET_INFO_KHR
Extends |
| public static final int | XR_TYPE_VULKAN_INSTANCE_CREATE_INFO_KHR
Extends |
| Access | Constructor and Description |
|---|---|
| protected |
| Modifier and Type | Method and Description |
|---|---|
| public static int | nxrCreateVulkanDeviceKHR(XrInstance instance, long createInfo, long vulkanDevice, long vulkanResult)
Unsafe version of: |
| public static int | nxrCreateVulkanInstanceKHR(XrInstance instance, long createInfo, long vulkanInstance, long vulkanResult)
Unsafe version of: |
| public static int | nxrGetVulkanGraphicsDevice2KHR(XrInstance instance, long getInfo, long vulkanPhysicalDevice)
Unsafe version of: |
| public static int | nxrGetVulkanGraphicsRequirements2KHR(XrInstance instance, long systemId, long graphicsRequirements)
Unsafe version of: |
| public static int | xrCreateVulkanDeviceKHR(XrInstance
an instance, XrVulkanDeviceCreateInfoKHR XrInstance handle previously created with CreateInstance.extensible input struct of type createInfo, PointerBuffer XrCreateVulkanDeviceCreateInfoKHRpoints to a vulkanDevice, IntBuffer VkDevice handle to populate with the new Vulkan device.points to a vulkanResult)VkResult to populate with the result of the vkCreateDevice operation as returned by pfnGetInstanceProcAddr.Create an OpenXR compatible VkDevice. |
| public static int | xrCreateVulkanInstanceKHR(XrInstance
an instance, XrVulkanInstanceCreateInfoKHR XrInstance handle previously created with CreateInstance.extensible input struct of type createInfo, PointerBuffer XrVulkanInstanceCreateInfoKHRpoints to a vulkanInstance, IntBuffer VkInstance handle to populate with the new Vulkan instance.points to a vulkanResult)VkResult to populate with the result of the vkCreateInstance operation as returned by pfnGetInstanceProcAddr.Create an OpenXR compatible VkInstance. |
| public static int | xrGetVulkanGraphicsDevice2KHR(XrInstance
an instance, XrVulkanGraphicsDeviceGetInfoKHR XrInstance handle previously created with CreateInstance.extensible input struct of type getInfo, PointerBuffer XrVulkanGraphicsDeviceGetInfoKHRa pointer to a vulkanPhysicalDevice)VkPhysicalDevice handle to populate.Retrieve the Vulkan physical device associated with an OpenXR instance and system. |
| public static int | xrGetVulkanGraphicsRequirements2KHR(XrInstance
an instance, long XrInstance handle previously created with CreateInstance.an systemId, XrGraphicsRequirementsVulkanKHR XrSystemId handle for the system which will be used to create a session.the graphicsRequirements)XrGraphicsRequirementsVulkanKHR output structure. |
| XR_KHR_VULKAN_ENABLE2_EXTENSION_NAME | back to summary |
|---|---|
| public static final String XR_KHR_VULKAN_ENABLE2_EXTENSION_NAME The extension name. | |
| XR_KHR_vulkan_enable2_SPEC_VERSION | back to summary |
|---|---|
| public static final int XR_KHR_vulkan_enable2_SPEC_VERSION The extension specification version. | |
| XR_TYPE_GRAPHICS_BINDING_VULKAN2_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_GRAPHICS_BINDING_VULKAN2_KHR Extends Enum values: | |
| XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN2_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN2_KHR Extends Enum values: | |
| XR_TYPE_SWAPCHAIN_IMAGE_VULKAN2_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_SWAPCHAIN_IMAGE_VULKAN2_KHR Extends Enum values: | |
| XR_TYPE_VULKAN_DEVICE_CREATE_INFO_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_VULKAN_DEVICE_CREATE_INFO_KHR Extends Enum values: | |
| XR_TYPE_VULKAN_GRAPHICS_DEVICE_GET_INFO_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_VULKAN_GRAPHICS_DEVICE_GET_INFO_KHR Extends Enum values: | |
| XR_TYPE_VULKAN_INSTANCE_CREATE_INFO_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_VULKAN_INSTANCE_CREATE_INFO_KHR Extends Enum values: | |
| KHRVulkanEnable2 | back to summary |
|---|---|
| protected KHRVulkanEnable2() | |
| nxrCreateVulkanDeviceKHR | back to summary |
|---|---|
| public static int nxrCreateVulkanDeviceKHR(XrInstance instance, long createInfo, long vulkanDevice, long vulkanResult) Unsafe version of: | |
| nxrCreateVulkanInstanceKHR | back to summary |
|---|---|
| public static int nxrCreateVulkanInstanceKHR(XrInstance instance, long createInfo, long vulkanInstance, long vulkanResult) Unsafe version of: | |
| nxrGetVulkanGraphicsDevice2KHR | back to summary |
|---|---|
| public static int nxrGetVulkanGraphicsDevice2KHR(XrInstance instance, long getInfo, long vulkanPhysicalDevice) Unsafe version of: | |
| nxrGetVulkanGraphicsRequirements2KHR | back to summary |
|---|---|
| public static int nxrGetVulkanGraphicsRequirements2KHR(XrInstance instance, long systemId, long graphicsRequirements) Unsafe version of: | |
| xrCreateVulkanDeviceKHR | back to summary |
|---|---|
| public static int xrCreateVulkanDeviceKHR(XrInstance instance, XrVulkanDeviceCreateInfoKHR createInfo, PointerBuffer vulkanDevice, IntBuffer vulkanResult) Create an OpenXR compatible VkDevice. C Specification
Valid Usage (Implicit)
Return Codes
See Also
| |
| xrCreateVulkanInstanceKHR | back to summary |
|---|---|
| public static int xrCreateVulkanInstanceKHR(XrInstance instance, XrVulkanInstanceCreateInfoKHR createInfo, PointerBuffer vulkanInstance, IntBuffer vulkanResult) Create an OpenXR compatible VkInstance. C Specification
Valid Usage (Implicit)
Return Codes
See Also
| |
| xrGetVulkanGraphicsDevice2KHR | back to summary |
|---|---|
| public static int xrGetVulkanGraphicsDevice2KHR(XrInstance instance, XrVulkanGraphicsDeviceGetInfoKHR getInfo, PointerBuffer vulkanPhysicalDevice) Retrieve the Vulkan physical device associated with an OpenXR instance and system. C Specification
Valid Usage (Implicit)
Return Codes
See Also
| |
| xrGetVulkanGraphicsRequirements2KHR | back to summary |
|---|---|
| public static int xrGetVulkanGraphicsRequirements2KHR(XrInstance instance, long systemId, XrGraphicsRequirementsVulkanKHR graphicsRequirements) See
| |