D3D12XBOX_DERIVED_GRAPHICS_STATE_DESC Structure

Describes a derived graphics pipeline state object (which can be a D3D12_DEPTH_STENCIL_DESC, D3D12_RASTERIZER_DESC, D3D12_BLEND_DESC, or SampleMask). The new pipeline state object is derived from an existing pipeline state object.

Syntax

typedef struct D3D12XBOX_DERIVED_GRAPHICS_STATE_DESC {
    D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE Type;
    union {
        D3D12_DEPTH_STENCIL_DESC DepthStencilDesc;
        D3D12_RASTERIZER_DESC RasterizerDesc;
        D3D12_BLEND_DESC BlendDesc;
        UINT SampleMask;
        D3D12XBOX_PIXEL_SHADER_OPTIONS_DESC PixelShaderOptions;
        D3D12XBOX_DEPTH_STENCIL_OPTIONS_DESC DepthStencilOptions;
        D3D12XBOX_GRAPHICS_SHADER_LIMITS_DESC ShaderLimitsDesc;
        D3D12XBOX_TESSELLATION_PARAMETERS_DESC TessellationParameters;
    };
} D3D12XBOX_DERIVED_GRAPHICS_STATE_DESC;  

Members

Type
The derived graphics pipeline state type, as a D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE enumeration constant, such as for “depth and stencil”, “rasterizer”, “blend”, or “sample mask”.

DepthStencilDesc
Used when Type is D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE_DEPTH_STENCIL . The depth or stencil description, as a D3D12_DEPTH_STENCIL_DESC structure.

RasterizerDesc
Used when Type is D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE_RASTERIZER . The rasterizer description, as a D3D12_RASTERIZER_DESC structure.

BlendDesc
Used when Type is D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE_BLEND. The blend description, as a D3D12_BLEND_DESC structure.

SampleMask

Used when Type is D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE_SAMPLE_MASK .

A value that describes a mask of pixel samples to trace. If this value specifies any of the masked samples, the trace is activated. The least significant bit (LSB) is sample 0. The non-multisample antialiasing (MSAA) counts as a sample count of 1; therefore, the LSB of SampleMask should be set. If set to zero, the pixel is not traced. However, pixel traces can still be enabled on an invocation basis.

This provides 32-bit sample coverage. The default value is 0xffffffff. A sample mask determines which samples get updated in all the active render targets. The mapping of bits in a sample mask to samples in a multisample render target is the responsibility of an individual application. 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.

PixelShaderOptions
Used when Type is D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE_PIXEL_SHADER_OPTIONS. Specifies pixel shader options as a D3D12XBOX_PIXEL_SHADER_OPTIONS_DESC structure.

DepthStencilOptions
Used when Type is D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE_DEPTH_STENCIL_OPTIONS. Specifies depth stencil options as a D3D12XBOX_DEPTH_STENCIL_OPTIONS_DESC structure.

ShaderLimitsDesc
Used when Type is D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE_SHADER_LIMITS. Specifies graphics shader limits as a D3D12XBOX_GRAPHICS_SHADER_LIMITS_DESC structure.

TessellationParameters
Used when Type is D3D12XBOX_DERIVED_GRAPHICS_STATE_TYPE_TESSELLATION_PARAMETERS. Specifies tessellation parameters as a D3D12XBOX_TESSELLATION_PARAMETERS_DESC structure.

Remarks

This structure is passed into ID3D12Device::CreateDerivedGraphicsPipelineStateX.

Requirements

Header: Declared in d3d12_x.h.