Diligent Engine
 
Loading...
Searching...
No Matches
Diligent::GraphicsPipelineDesc Struct Reference

Graphics pipeline state description. More...

#include <PipelineState.h>

Public Attributes

BlendStateDesc BlendDesc
 Blend state description.
 
Uint32 SampleMask = 0xFFFFFFFF
 Sample mask.
 
RasterizerStateDesc RasterizerDesc
 Rasterizer state description.
 
DepthStencilStateDesc DepthStencilDesc
 Depth-stencil state description.
 
InputLayoutDesc InputLayout
 Input layout, ignored in a mesh pipeline.
 
PRIMITIVE_TOPOLOGY PrimitiveTopology = PRIMITIVE_TOPOLOGY_TRIANGLE_LIST
 Primitive topology type, ignored in a mesh pipeline.
 
Uint8 NumViewports = 1
 The number of viewports used by this pipeline.
 
Uint8 NumRenderTargets = 0
 The number of render targets in the RTVFormats array.
 
Uint8 SubpassIndex = 0
 
PIPELINE_SHADING_RATE_FLAGS ShadingRateFlags = PIPELINE_SHADING_RATE_FLAG_NONE
 Shading rate flags that specify which type of the shading rate will be used with this pipeline.
 
TEXTURE_FORMAT RTVFormats [DILIGENT_MAX_RENDER_TARGETS] = {}
 Render target formats.
 
TEXTURE_FORMAT DSVFormat = TEX_FORMAT_UNKNOWN
 Depth-stencil format.
 
Bool ReadOnlyDSV = False
 Indicates that the pipeline will be used with read-only depth-stencil buffer.
 
SampleDesc SmplDesc
 Multisampling parameters.
 
IRenderPasspRenderPass = nullptr
 Pointer to the render pass object.
 
Uint32 NodeMask = 0
 Node mask.
 

Detailed Description

Graphics pipeline state description.

This structure describes the graphics pipeline state and is part of the GraphicsPipelineStateCreateInfo structure.

Member Data Documentation

◆ DSVFormat

TEXTURE_FORMAT Diligent::GraphicsPipelineDesc::DSVFormat = TEX_FORMAT_UNKNOWN

Depth-stencil format.

Must be Diligent::TEX_FORMAT_UNKNOWN when pRenderPass is not null.

◆ NumRenderTargets

Uint8 Diligent::GraphicsPipelineDesc::NumRenderTargets = 0

The number of render targets in the RTVFormats array.

Must be 0 when pRenderPass is not null.

◆ pRenderPass

IRenderPass* Diligent::GraphicsPipelineDesc::pRenderPass = nullptr

Pointer to the render pass object.

When non-null render pass is specified, NumRenderTargets must be 0, and all RTV formats as well as DSV format must be Diligent::TEX_FORMAT_UNKNOWN.

◆ ReadOnlyDSV

Bool Diligent::GraphicsPipelineDesc::ReadOnlyDSV = False

Indicates that the pipeline will be used with read-only depth-stencil buffer.

Must be false when pRenderPass is not null.

◆ RTVFormats

TEXTURE_FORMAT Diligent::GraphicsPipelineDesc::RTVFormats[DILIGENT_MAX_RENDER_TARGETS] = {}

Render target formats.

All formats must be Diligent::TEX_FORMAT_UNKNOWN when pRenderPass is not null.

◆ SampleMask

Uint32 Diligent::GraphicsPipelineDesc::SampleMask = 0xFFFFFFFF

Sample mask.

32-bit sample mask that determines which samples get updated in all the active render targets. A sample mask is always applied; it is independent of whether multisampling is enabled, and does not depend on whether an application uses multisample render targets.

◆ SubpassIndex

Uint8 Diligent::GraphicsPipelineDesc::SubpassIndex = 0

When pRenderPass is not null, the subpass index within the render pass. When pRenderPass is null, this member must be 0.