IRenderDeviceVk struct
Exposes Vulkan-specific functionality of a render device.
Contents
- Reference
Base classes
- struct IRenderDevice
- Render device interface.
Public functions
- auto GetVkDevice() -> VkDevice METHOD() virtual
- Returns logical Vulkan device handle.
- auto GetVkPhysicalDevice() -> VkPhysicalDevice METHOD() virtual
- Returns physical Vulkan device.
- auto GetVkInstance() -> VkInstance METHOD() virtual
- Returns Vulkan instance.
- auto GetVkVersion() -> Uint32 METHOD() virtual
- Returns Vulkan API version.
- auto GetNextFenceValue(Uint32 QueueIndex) -> Uint64 METHOD() virtual
- Returns the fence value that will be signaled by the GPU command queue next.
- auto GetCompletedFenceValue(Uint32 QueueIndex) -> Uint64 METHOD() virtual
- Returns the last completed fence value for the given command queue.
- auto IsFenceSignaled(Uint32 QueueIndex, Uint64 FenceValue) -> Bool METHOD() virtual
- Checks if the fence value has been signaled by the GPU. True means that all associated work has been finished.
-
auto CreateTextureFromVulkanImage(VkImage vkImage,
const TextureDesc& TexDesc,
RESOURCE_
STATE InitialState, ITexture** ppTexture) -> void METHOD() virtual - Creates a texture object from native Vulkan image.
-
auto CreateBufferFromVulkanResource(VkBuffer vkBuffer,
const BufferDesc& BuffDesc,
RESOURCE_
STATE InitialState, IBuffer** ppBuffer) -> void METHOD() virtual - Creates a buffer object from native Vulkan resource.
-
auto CreateBLASFromVulkanResource(VkAccelerationStructureKHR vkBLAS,
const BottomLevelASDesc& Desc,
RESOURCE_
STATE InitialState, IBottomLevelAS** ppBLAS) -> void METHOD() virtual - Creates a bottom-level AS object from native Vulkan resource.
-
auto CreateTLASFromVulkanResource(VkAccelerationStructureKHR vkTLAS,
const TopLevelASDesc& Desc,
RESOURCE_
STATE InitialState, ITopLevelAS** ppTLAS) -> void METHOD() virtual - Creates a top-level AS object from native Vulkan resource.
Function documentation
Uint32 METHOD() Diligent:: IRenderDeviceVk:: GetVkVersion() virtual
Returns Vulkan API version.
void METHOD() Diligent:: IRenderDeviceVk:: CreateTextureFromVulkanImage(VkImage vkImage,
const TextureDesc& TexDesc,
RESOURCE_ STATE InitialState,
ITexture** ppTexture) virtual
Creates a texture object from native Vulkan image.
| Parameters | |
|---|---|
| vkImage in | - Vulkan image handle |
| TexDesc in | - Texture description. Vulkan provides no means to retrieve any image properties from the image handle, so complete texture description must be provided |
| InitialState in | - Initial texture state. See Diligent:: |
| ppTexture out | - Address of the memory location where the pointer to the texture interface will be stored. The function calls AddRef(), so that the new object will contain one reference. |
void METHOD() Diligent:: IRenderDeviceVk:: CreateBufferFromVulkanResource(VkBuffer vkBuffer,
const BufferDesc& BuffDesc,
RESOURCE_ STATE InitialState,
IBuffer** ppBuffer) virtual
Creates a buffer object from native Vulkan resource.
| Parameters | |
|---|---|
| vkBuffer in | - Vulkan buffer handle |
| BuffDesc in | - Buffer description. Vulkan provides no means to retrieve any buffer properties from the buffer handle, so complete buffer description must be provided |
| InitialState in | - Initial buffer state. See Diligent:: |
| ppBuffer out | - Address of the memory location where the pointer to the buffer interface will be stored. The function calls AddRef(), so that the new object will contain one reference. |
void METHOD() Diligent:: IRenderDeviceVk:: CreateBLASFromVulkanResource(VkAccelerationStructureKHR vkBLAS,
const BottomLevelASDesc& Desc,
RESOURCE_ STATE InitialState,
IBottomLevelAS** ppBLAS) virtual
Creates a bottom-level AS object from native Vulkan resource.
| Parameters | |
|---|---|
| vkBLAS in | - Vulkan acceleration structure handle. |
| Desc in | - Bottom-level AS description. |
| InitialState in | - Initial BLAS state. Can be RESOURCE_STATE_UNKNOWN, RESOURCE_STATE_BUILD_AS_READ, RESOURCE_STATE_BUILD_AS_WRITE. See Diligent:: |
| ppBLAS out | - Address of the memory location where the pointer to the bottom-level AS interface will be stored. The function calls AddRef(), so that the new object will contain one reference. |
void METHOD() Diligent:: IRenderDeviceVk:: CreateTLASFromVulkanResource(VkAccelerationStructureKHR vkTLAS,
const TopLevelASDesc& Desc,
RESOURCE_ STATE InitialState,
ITopLevelAS** ppTLAS) virtual
Creates a top-level AS object from native Vulkan resource.
| Parameters | |
|---|---|
| vkTLAS in | - Vulkan acceleration structure handle. |
| Desc in | - Bottom-level AS description. |
| InitialState in | - Initial TLAS state. Can be RESOURCE_STATE_UNKNOWN, RESOURCE_STATE_BUILD_AS_READ, RESOURCE_STATE_BUILD_AS_WRITE, RESOURCE_STATE_RAY_TRACING. See Diligent:: |
| ppTLAS out | - Address of the memory location where the pointer to the top-level AS interface will be stored. The function calls AddRef(), so that the new object will contain one reference. |