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 XrGraphicsBindingVulkanKHR structure in order to create a Vulkan-based XrSession. Note that during this process the application is responsible for creating all the required Vulkan objects.
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.
| Modifier and Type | Field and Description |
|---|---|
| public static final String | XR_KHR_VULKAN_ENABLE_EXTENSION_NAME
The extension name. |
| public static final int | XR_KHR_vulkan_enable_SPEC_VERSION
The extension specification version. |
| public static final int | XR_TYPE_GRAPHICS_BINDING_VULKAN_KHR
Extends |
| public static final int | XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN_KHR
Extends |
| public static final int | XR_TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR
Extends |
| Access | Constructor and Description |
|---|---|
| protected |
| Modifier and Type | Method and Description |
|---|---|
| public static int | nxrGetVulkanDeviceExtensionsKHR(XrInstance instance, long systemId, int
the capacity of the bufferCapacityInput, long bufferCountOutput, long buffer)buffer, or 0 to indicate a request to retrieve the required capacity.Unsafe version of: |
| public static int | nxrGetVulkanGraphicsDeviceKHR(XrInstance instance, long systemId, VkInstance vkInstance, long vkPhysicalDevice)
Unsafe version of: |
| public static int | nxrGetVulkanGraphicsRequirementsKHR(XrInstance instance, long systemId, long graphicsRequirements)
Unsafe version of: |
| public static int | nxrGetVulkanInstanceExtensionsKHR(XrInstance instance, long systemId, int
the capacity of the bufferCapacityInput, long bufferCountOutput, long buffer)buffer, or 0 to indicate a request to retrieve the required capacity.Unsafe version of: |
| public static int | xrGetVulkanDeviceExtensionsKHR(XrInstance
an instance, long XrInstance handle previously created with CreateInstance.an systemId, IntBuffer XrSystemId handle for the system which will be used to create a session.a pointer to the count of characters written (including terminating bufferCountOutput, ByteBuffer \0), or a pointer to the required capacity in the case that bufferCapacityInput is insufficient.a pointer to an array of characters, but can be buffer)NULL if bufferCapacityInput is 0. The format of the output is a single space (ASCII 0x20) delimited string of extension names.Get list of required Vulkan device extensions for an OpenXR instance and system. |
| public static int | xrGetVulkanGraphicsDeviceKHR(XrInstance
an instance, long XrInstance handle previously created with CreateInstance.an systemId, VkInstance XrSystemId handle for the system which will be used to create a session.a valid Vulkan vkInstance, PointerBuffer VkInstance.a pointer to a vkPhysicalDevice)VkPhysicalDevice value to populate.Retrieve the Vulkan physical device associated with an OpenXR instance and system. |
| public static int | xrGetVulkanGraphicsRequirementsKHR(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.Retrieve the Vulkan version requirements for an instance and system. |
| public static int | xrGetVulkanInstanceExtensionsKHR(XrInstance
an instance, long XrInstance handle previously created with CreateInstance.an systemId, IntBuffer XrSystemId handle for the system which will be used to create a session.a pointer to the count of characters written (including terminating bufferCountOutput, ByteBuffer \0), or a pointer to the required capacity in the case that bufferCapacityInput is insufficient.a pointer to an array of characters, but can be buffer)NULL if bufferCapacityInput is 0. The format of the output is a single space (ASCII 0x20) delimited string of extension names.Get list of required Vulkan instance extensions for an OpenXR instance and system. |
| XR_KHR_VULKAN_ENABLE_EXTENSION_NAME | back to summary |
|---|---|
| public static final String XR_KHR_VULKAN_ENABLE_EXTENSION_NAME The extension name. | |
| XR_KHR_vulkan_enable_SPEC_VERSION | back to summary |
|---|---|
| public static final int XR_KHR_vulkan_enable_SPEC_VERSION The extension specification version. | |
| XR_TYPE_GRAPHICS_BINDING_VULKAN_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_GRAPHICS_BINDING_VULKAN_KHR Extends Enum values: | |
| XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN_KHR Extends Enum values: | |
| XR_TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR | back to summary |
|---|---|
| public static final int XR_TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR Extends Enum values: | |
| KHRVulkanEnable | back to summary |
|---|---|
| protected KHRVulkanEnable() | |
| nxrGetVulkanDeviceExtensionsKHR | back to summary |
|---|---|
| public static int nxrGetVulkanDeviceExtensionsKHR(XrInstance instance, long systemId, int bufferCapacityInput, long bufferCountOutput, long buffer) Unsafe version of:
| |
| nxrGetVulkanGraphicsDeviceKHR | back to summary |
|---|---|
| public static int nxrGetVulkanGraphicsDeviceKHR(XrInstance instance, long systemId, VkInstance vkInstance, long vkPhysicalDevice) Unsafe version of: | |
| nxrGetVulkanGraphicsRequirementsKHR | back to summary |
|---|---|
| public static int nxrGetVulkanGraphicsRequirementsKHR(XrInstance instance, long systemId, long graphicsRequirements) Unsafe version of: | |
| nxrGetVulkanInstanceExtensionsKHR | back to summary |
|---|---|
| public static int nxrGetVulkanInstanceExtensionsKHR(XrInstance instance, long systemId, int bufferCapacityInput, long bufferCountOutput, long buffer) Unsafe version of:
| |
| xrGetVulkanDeviceExtensionsKHR | back to summary |
|---|---|
| public static int xrGetVulkanDeviceExtensionsKHR(XrInstance instance, long systemId, IntBuffer bufferCountOutput, ByteBuffer buffer) Get list of required Vulkan device extensions for an OpenXR instance and system. C Specification
Valid Usage (Implicit)
Return Codes
See Also
| |
| xrGetVulkanGraphicsDeviceKHR | back to summary |
|---|---|
| public static int xrGetVulkanGraphicsDeviceKHR(XrInstance instance, long systemId, VkInstance vkInstance, PointerBuffer vkPhysicalDevice) Retrieve the Vulkan physical device associated with an OpenXR instance and system. C SpecificationTo identify what graphics device needs to be used for an instance and system, call:
Description
Valid Usage (Implicit)
Return Codes
| |
| xrGetVulkanGraphicsRequirementsKHR | back to summary |
|---|---|
| public static int xrGetVulkanGraphicsRequirementsKHR(XrInstance instance, long systemId, XrGraphicsRequirementsVulkanKHR graphicsRequirements) Retrieve the Vulkan version requirements for an instance and system. C SpecificationTo query Vulkan API version requirements, call:
DescriptionThe Valid Usage (Implicit)
Return Codes
See Also
| |
| xrGetVulkanInstanceExtensionsKHR | back to summary |
|---|---|
| public static int xrGetVulkanInstanceExtensionsKHR(XrInstance instance, long systemId, IntBuffer bufferCountOutput, ByteBuffer buffer) Get list of required Vulkan instance extensions for an OpenXR instance and system. C Specification
Valid Usage (Implicit)
Return Codes
See Also
| |