Class GPUPipelineStateDX12
Graphics pipeline state object for DirectX 12 backend.
Inheritance
GPUPipelineStateDX12
Inherited Members
GPUPipelineStateDX12
Assembly: FlaxEngine.dll
File: Engine/GraphicsDevice/DirectX/DX12/GPUPipelineStateDX12.h
Syntax
public class GPUPipelineStateDX12 : public GPUResourceDX12
Constructors
GPUPipelineStateDX12(GPUDeviceDX12* device)
Fields
Header
PrimitiveTopology
Declaration
public D3D_PRIMITIVE_TOPOLOGY PrimitiveTopology = D3D_PRIMITIVE_TOPOLOGY_UNDEFINED
Field Value
D3D_PRIMITIVE_TOPOLOGY
|
VertexBufferLayout
Declaration
public GPUVertexLayoutDX12* VertexBufferLayout = nullptr
Field Value
VertexInputLayout
Methods
GetState(GPUTextureViewDX12* depth, int32 rtCount, GPUTextureViewDX12* *rtHandles, GPUVertexLayoutDX12* vertexLayout)
Gets DirectX 12 graphics pipeline state object for the given rendering state. Uses depth buffer and render targets formats and multi-sample levels to setup a proper PSO. Uses caching.
Declaration
public ID3D12PipelineState* GetState(GPUTextureViewDX12* depth, int32 rtCount, GPUTextureViewDX12* *rtHandles, GPUVertexLayoutDX12* vertexLayout)
Parameters
GPUTexture The depth buffer (can be null). |
int32
rtCount
The render targets count (can be 0). |
GPUTexture The render target handles array. |
GPUVertex The vertex buffers layout. |
Returns
ID3D12Pipeline DirectX 12 graphics pipeline state object |
Init(const Description& desc)
Create new state data
Declaration
public virtual bool Init(const Description& desc) override
Parameters
Description
desc
Full pipeline state description |
Returns
bool
True if cannot create state, otherwise false |
Overrides
IsValid()
Returns true if pipeline state is valid and ready to use
Declaration
public virtual bool IsValid() const override
Returns
bool
|
Overrides
OnReleaseGPU()
Releases GPU resource data (implementation).
Declaration
protected virtual void OnReleaseGPU() override