Diligent::RenderDeviceD3D12Impl class final

Render device implementation in Direct3D12 backend.

Contents

Base classes

template<class TBase, typename CommandQueueType>
class RenderDeviceNextGenBase<RenderDeviceD3DBase<EngineD3D12ImplTraits>, ICommandQueueD3D12>
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 Direct3D12 backend.
void CreateComputePipelineState(const ComputePipelineStateCreateInfo& PSOCreateInfo, IPipelineState** ppPipelineState) final
Implementation of IRenderDevice::CreateComputePipelineState() in Direct3D12 backend.
void CreateRayTracingPipelineState(const RayTracingPipelineStateCreateInfo& PSOCreateInfo, IPipelineState** ppPipelineState) final
Implementation of IRenderDevice::CreateRayTracingPipelineState() in Direct3D12 backend.
void CreateBuffer(const BufferDesc& BuffDesc, const BufferData* pBuffData, IBuffer** ppBuffer) final
Implementation of IRenderDevice::CreateBuffer() in Direct3D12 backend.
void CreateShader(const ShaderCreateInfo& ShaderCreateInfo, IShader** ppShader) final
Implementation of IRenderDevice::CreateShader() in Direct3D12 backend.
void CreateTexture(const TextureDesc& TexDesc, const TextureData* pData, ITexture** ppTexture) final
Implementation of IRenderDevice::CreateTexture() in Direct3D12 backend.
void CreateSampler(const SamplerDesc& SamplerDesc, ISampler** ppSampler) final
Implementation of IRenderDevice::CreateSampler() in Direct3D12 backend.
void CreateFence(const FenceDesc& Desc, IFence** ppFence) final
Implementation of IRenderDevice::CreateFence() in Direct3D12 backend.
void CreateQuery(const QueryDesc& Desc, IQuery** ppQuery) final
Implementation of IRenderDevice::CreateQuery() in Direct3D12 backend.
void CreateRenderPass(const RenderPassDesc& Desc, IRenderPass** ppRenderPass) final
Implementation of IRenderDevice::CreateRenderPass() in Direct3D12 backend.
void CreateFramebuffer(const FramebufferDesc& Desc, IFramebuffer** ppFramebuffer) final
Implementation of IRenderDevice::CreateFramebuffer() in Direct3D12 backend.
void CreateBLAS(const BottomLevelASDesc& Desc, IBottomLevelAS** ppBLAS) final
Implementation of IRenderDevice::CreateBLAS() in Direct3D12 backend.
void CreateTLAS(const TopLevelASDesc& Desc, ITopLevelAS** ppTLAS) final
Implementation of IRenderDevice::CreateTLAS() in Direct3D12 backend.
void CreateSBT(const ShaderBindingTableDesc& Desc, IShaderBindingTable** ppSBT) final
Implementation of IRenderDevice::CreateSBT() in Direct3D12 backend.
void CreatePipelineResourceSignature(const PipelineResourceSignatureDesc& Desc, IPipelineResourceSignature** ppSignature) final
Implementation of IRenderDevice::CreatePipelineResourceSignature() in Direct3D12 backend.
auto GetD3D12Device() -> ID3D12Device* final
Implementation of IRenderDeviceD3D12::GetD3D12Device().
void CreateTextureFromD3DResource(ID3D12Resource* pd3d12Texture, RESOURCE_STATE InitialState, ITexture** ppTexture) final
Implementation of IRenderDeviceD3D12::CreateTextureFromD3DResource().
void CreateBufferFromD3DResource(ID3D12Resource* pd3d12Buffer, const BufferDesc& BuffDesc, RESOURCE_STATE InitialState, IBuffer** ppBuffer) final
Implementation of IRenderDeviceD3D12::CreateBufferFromD3DResource().
void CreateBLASFromD3DResource(ID3D12Resource* pd3d12BLAS, const BottomLevelASDesc& Desc, RESOURCE_STATE InitialState, IBottomLevelAS** ppBLAS) final
Implementation of IRenderDeviceD3D12::CreateBLASFromD3DResource().
void CreateTLASFromD3DResource(ID3D12Resource* pd3d12TLAS, const TopLevelASDesc& Desc, RESOURCE_STATE InitialState, ITopLevelAS** ppTLAS) final
Implementation of IRenderDeviceD3D12::CreateTLASFromD3DResource().
void IdleGPU() final
Implementation of IRenderDevice::IdleGPU() in Direct3D12 backend.
void ReleaseStaleResources(bool ForceRelease = false) final
Implementation of IRenderDevice::() in Direct3D12 backend.