CD3DX12_PIPELINE_STATE_STREAM2 structure

A helper structure for creating and working with graphics and compute pipeline states through a combined interface. See D3D12_GRAPHICS_PIPELINE_STATE_DESC and D3D12_COMPUTE_PIPELINE_STATE_DESC.

CD3DX12_PIPELINE_STATE_STREAM2 supports OS Build 19041+ (where there is a mesh shader pipeline).

Syntax

struct CD3DX12_PIPELINE_STATE_STREAM2
{
    CD3DX12_PIPELINE_STATE_STREAM2();
    CD3DX12_PIPELINE_STATE_STREAM2(const D3D12_GRAPHICS_PIPELINE_STATE_DESC& Desc) noexcept;
    CD3DX12_PIPELINE_STATE_STREAM2(const D3DX12_MESH_SHADER_PIPELINE_STATE_DESC& Desc) noexcept;
    CD3DX12_PIPELINE_STATE_STREAM2(const D3D12_COMPUTE_PIPELINE_STATE_DESC& Desc) noexcept;
    CD3DX12_PIPELINE_STATE_STREAM_FLAGS Flags;
    CD3DX12_PIPELINE_STATE_STREAM_NODE_MASK NodeMask;
    CD3DX12_PIPELINE_STATE_STREAM_ROOT_SIGNATURE pRootSignature;
    CD3DX12_PIPELINE_STATE_STREAM_INPUT_LAYOUT InputLayout;
    CD3DX12_PIPELINE_STATE_STREAM_IB_STRIP_CUT_VALUE IBStripCutValue;
    CD3DX12_PIPELINE_STATE_STREAM_PRIMITIVE_TOPOLOGY PrimitiveTopologyType;
    CD3DX12_PIPELINE_STATE_STREAM_VS VS;
    CD3DX12_PIPELINE_STATE_STREAM_GS GS;
    CD3DX12_PIPELINE_STATE_STREAM_STREAM_OUTPUT StreamOutput;
    CD3DX12_PIPELINE_STATE_STREAM_HS HS;
    CD3DX12_PIPELINE_STATE_STREAM_DS DS;
    CD3DX12_PIPELINE_STATE_STREAM_PS PS;
    CD3DX12_PIPELINE_STATE_STREAM_AS AS;
    CD3DX12_PIPELINE_STATE_STREAM_MS MS;
    CD3DX12_PIPELINE_STATE_STREAM_CS CS;
    CD3DX12_PIPELINE_STATE_STREAM_BLEND_DESC BlendState;
    CD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCIL1 DepthStencilState;
    CD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCIL_FORMAT DSVFormat;
    CD3DX12_PIPELINE_STATE_STREAM_RASTERIZER RasterizerState;
    CD3DX12_PIPELINE_STATE_STREAM_RENDER_TARGET_FORMATS RTVFormats;
    CD3DX12_PIPELINE_STATE_STREAM_SAMPLE_DESC SampleDesc;
    CD3DX12_PIPELINE_STATE_STREAM_SAMPLE_MASK SampleMask;
    CD3DX12_PIPELINE_STATE_STREAM_CACHED_PSO CachedPSO;
    CD3DX12_PIPELINE_STATE_STREAM_VIEW_INSTANCING ViewInstancingDesc;
    D3D12_GRAPHICS_PIPELINE_STATE_DESC GraphicsDescV0() const noexcept;
    D3D12_COMPUTE_PIPELINE_STATE_DESC ComputeDescV0() const noexcept;
};

Members

CD3DX12_PIPELINE_STATE_STREAM2

Default constructor. Creates a new, uninitialized, instance of a CD3DX12_PIPELINE_STATE_STREAM2.

CD3DX12_PIPELINE_STATE_STREAM2(const D3D12_GRAPHICS_PIPELINE_STATE_DESC&)

Constructor that creates a new instance of a CD3DX12_PIPELINE_STATE_STREAM2 initialized with the contents of a D3D12_GRAPHICS_PIPELINE_STATE_DESC structure.

You'll then need to set mesh and amplification shaders manually, since they don't have representation in D3D12_GRAPHICS_PIPELINE_STATE_DESC.

CD3DX12_PIPELINE_STATE_STREAM2(const D3DX12_MESH_SHADER_PIPELINE_STATE_DESC&)

Constructor that creates a new instance of a CD3DX12_PIPELINE_STATE_STREAM2 initialized with the contents of a D3DX12_MESH_SHADER_PIPELINE_STATE_DESC structure.

CD3DX12_PIPELINE_STATE_STREAM2(const D3D12_COMPUTE_PIPELINE_STATE_DESC&)

Constructor that creates a new instance of a CD3DX12_PIPELINE_STATE_STREAM2 initialized with the contents of a D3D12_COMPUTE_PIPELINE_STATE_DESC structure.

Flags

Type: CD3DX12_PIPELINE_STATE_STREAM_FLAGS

Flags (for example, to indicate that the pipeline state should be compiled with additional information to assist debugging).

NodeMask

Type: CD3DX12_PIPELINE_STATE_STREAM_NODE_MASK

Describes the pipeline state node mask, which is used to identify the nodes (physical adapters of the device) that the PSO applies to in multi-adapter scenarios; each bit in the mask corresponds to a single node. For single-adapter scenarios, use 0.

pRootSignature

Type: CD3DX12_PIPELINE_STATE_STREAM_ROOT_SIGNATURE

Describes the root signature.

InputLayout

Type: CD3DX12_PIPELINE_STATE_STREAM_INPUT_LAYOUT

Describes the input-buffer format for the input-assembler stage

IBStripCutValue

Type: CD3DX12_PIPELINE_STATE_STREAM_IB_STRIP_CUT_VALUE

Describes the special index value of the input buffer that indicates a cut (discontinuity) when using triangle-strip topology.

PrimitiveTopologyType

Type: CD3DX12_PIPELINE_STATE_STREAM_PRIMITIVE_TOPOLOGY

Describes the primitive topology and its order.

VS

Type: CD3DX12_PIPELINE_STATE_STREAM_VS

Describes the vertex shader.

GS

Type: CD3DX12_PIPELINE_STATE_STREAM_GS

Describes the geometry shader.

StreamOutput

Type: CD3DX12_PIPELINE_STATE_STREAM_STREAM_OUTPUT

Describes the streaming output-buffer.

HS

Type: CD3DX12_PIPELINE_STATE_STREAM_HS

Describes the hull shader.

DS

Type: CD3DX12_PIPELINE_STATE_STREAM_DS

Describes the domain shader.

PS

Type: CD3DX12_PIPELINE_STATE_STREAM_PS

Describes the pixel shader.

AS

Type: CD3DX12_PIPELINE_STATE_STREAM_AS

Describes the amplification shader.

MS

Type: CD3DX12_PIPELINE_STATE_STREAM_MS

Describes the mesh shader.

CS

Type: CD3DX12_PIPELINE_STATE_STREAM_CS

Describes the compute shader.

BlendState

Type: CD3DX12_PIPELINE_STATE_STREAM_BLEND_DESC

Describes the blend state.

DepthStencilState

Type: CD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCIL1

Describes the depth-stencil state.

DSVFormat

Type: CD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCIL_FORMAT

Describes the depth-stencil format.

RasterizerState

Type: CD3DX12_PIPELINE_STATE_STREAM_RASTERIZER

Describes the rasterizer state.

RTVFormats

Type: CD3DX12_PIPELINE_STATE_STREAM_RENDER_TARGET_FORMATS

Describes the render target formats.

SampleDesc

Type: CD3DX12_PIPELINE_STATE_STREAM_SAMPLE_DESC

Describes the sample count and quality.

SampleMask

Type: CD3DX12_PIPELINE_STATE_STREAM_SAMPLE_MASK

Describes the sample mask used with the blend state.

CachedPSO

Type: CD3DX12_PIPELINE_STATE_STREAM_CACHED_PSO

Describes a cached PSO.

ViewInstancingDesc

Type: CD3DX12_PIPELINE_STATE_STREAM_VIEW_INSTANCING

Describes a view instancing configuration.

GraphicsDescV0

Returns D3D12_GRAPHICS_PIPELINE_STATE_DESC.

returns the contents of the CD3DX12_PIPELINE_STATE_STREAM2 object as a D3D12_GRAPHICS_PIPELINE_STATE_DESC structure by value. D3D12_GRAPHICS_PIPELINE_STATE_DESC doesn't include the CS member, so that value is lost in the conversion.

ComputeDescV0

Returns D3D12_COMPUTE_PIPELINE_STATE_DESC.

returns the contents of the CD3DX12_PIPELINE_STATE_STREAM2 object as a D3D12_COMPUTE_PIPELINE_STATE_DESC structure by value. D3D12_COMPUTE_PIPELINE_STATE_DESC doesn't include the members InputLayout, IBStripCutValue, PrimitiveTopologyType, VS, GS, StreamOutput, HS, DS, PS, BlendState, DepthStencilState, DSVFormat, RasterizerState, NumRootSignature, RTVFormats, SampleDesc, and SampleMask, so those values are lost in the conversion.

Requirements

Requirement Value
Header D3dx12.h

See also