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 |