RenderDeviceVkImpl class final
Render device implementation in Vulkan backend.
Contents
- Reference
Base classes
-
template<class TBase, typename CommandQueueType>class RenderDeviceNextGenBase<RenderDeviceBase<EngineVkImplTraits>, ICommandQueueVk>
- Base implementation of the render device for next-generation backends.
Public functions
- void CreateGraphicsPipelineState(const GraphicsPipelineStateCreateInfo& PSOCreateInfo, IPipelineState** ppPipelineState) final
- Implementation of IRenderDevice::
CreateGraphicsPipelineState() in Vulkan backend. - void CreateComputePipelineState(const ComputePipelineStateCreateInfo& PSOCreateInfo, IPipelineState** ppPipelineState) final
- Implementation of IRenderDevice::
CreateComputePipelineState() in Vulkan backend. - void CreateRayTracingPipelineState(const RayTracingPipelineStateCreateInfo& PSOCreateInfo, IPipelineState** ppPipelineState) final
- Implementation of IRenderDevice::
CreateRayTracingPipelineState() in Vulkan backend. - void CreateBuffer(const BufferDesc& BuffDesc, const BufferData* pBuffData, IBuffer** ppBuffer) final
- Implementation of IRenderDevice::
CreateBuffer() in Vulkan backend. - void CreateShader(const ShaderCreateInfo& ShaderCreateInfo, IShader** ppShader) final
- Implementation of IRenderDevice::
CreateShader() in Vulkan backend. - void CreateTexture(const TextureDesc& TexDesc, const TextureData* pData, ITexture** ppTexture) final
- Implementation of IRenderDevice::
CreateTexture() in Vulkan backend. - void CreateSampler(const SamplerDesc& SamplerDesc, ISampler** ppSampler) final
- Implementation of IRenderDevice::
CreateSampler() in Vulkan backend. - void CreateFence(const FenceDesc& Desc, IFence** ppFence) final
- Implementation of IRenderDevice::
CreateFence() in Vulkan backend. - void CreateQuery(const QueryDesc& Desc, IQuery** ppQuery) final
- Implementation of IRenderDevice::
CreateQuery() in Vulkan backend. - void CreateRenderPass(const RenderPassDesc& Desc, IRenderPass** ppRenderPass) final
- Implementation of IRenderDevice::
CreateRenderPass() in Vulkan backend. - void CreateFramebuffer(const FramebufferDesc& Desc, IFramebuffer** ppFramebuffer) final
- Implementation of IRenderDevice::
CreateFramebuffer() in Vulkan backend. - void CreateBLAS(const BottomLevelASDesc& Desc, IBottomLevelAS** ppBLAS) final
- Implementation of IRenderDevice::
CreateBLAS() in Vulkan backend. - void CreateTLAS(const TopLevelASDesc& Desc, ITopLevelAS** ppTLAS) final
- Implementation of IRenderDevice::
CreateTLAS() in Vulkan backend. - void CreateSBT(const ShaderBindingTableDesc& Desc, IShaderBindingTable** ppSBT) final
- Implementation of IRenderDevice::
CreateSBT() in Vulkan backend. - void CreatePipelineResourceSignature(const PipelineResourceSignatureDesc& Desc, IPipelineResourceSignature** ppSignature) final
- Implementation of IRenderDevice::
CreatePipelineResourceSignature() in Vulkan backend. - auto GetVkDevice() -> VkDevice final
- Implementation of IRenderDeviceVk::
GetVkDevice(). - auto GetVkPhysicalDevice() -> VkPhysicalDevice final
- Implementation of IRenderDeviceVk::
GetVkPhysicalDevice(). - auto GetVkInstance() -> VkInstance final
- Implementation of IRenderDeviceVk::
GetVkInstance(). - auto GetVkVersion() -> Uint32 final
- Implementation of IRenderDeviceVk::
GetVkVersion(). -
void CreateTextureFromVulkanImage(VkImage vkImage,
const TextureDesc& TexDesc,
RESOURCE_
STATE InitialState, ITexture** ppTexture) final - Implementation of IRenderDeviceVk::
CreateTextureFromVulkanImage(). -
void CreateBufferFromVulkanResource(VkBuffer vkBuffer,
const BufferDesc& BuffDesc,
RESOURCE_
STATE InitialState, IBuffer** ppBuffer) final - Implementation of IRenderDeviceVk::
CreateBufferFromVulkanResource(). -
void CreateBLASFromVulkanResource(VkAccelerationStructureKHR vkBLAS,
const BottomLevelASDesc& Desc,
RESOURCE_
STATE InitialState, IBottomLevelAS** ppBLAS) final - Implementation of IRenderDeviceVk::
CreateBLASFromVulkanResource(). -
void CreateTLASFromVulkanResource(VkAccelerationStructureKHR vkTLAS,
const TopLevelASDesc& Desc,
RESOURCE_
STATE InitialState, ITopLevelAS** ppTLAS) final - Implementation of IRenderDeviceVk::
CreateTLASFromVulkanResource(). - void IdleGPU() final
- Implementation of IRenderDevice::
IdleGPU() in Vulkan backend. - void ReleaseStaleResources(bool ForceRelease = false) final
- Implementation of IRenderDevice::
ReleaseStaleResources() in Vulkan backend.