D3D12_PIPELINE_STATE_FLAGS Enumeration

Flags to control the placement of data produced by the geometry shader and tessellation, including whether geometry shader data is stored offchip or onchip, and whether tessellation data is stored offchip or onchip.

Syntax

typedef enum D3D12_PIPELINE_STATE_FLAGS
{
    D3D12_PIPELINE_STATE_FLAG_NONE = 0x0,
    D3D12_PIPELINE_STATE_FLAG_TOOL_DEBUG = 0x80000000,
    D3D12XBOX_PIPELINE_STATE_FLAG_GS_OFFCHIP_TS_ONCHIP = 0x00000000,
    D3D12XBOX_PIPELINE_STATE_FLAG_GS_ONCHIP_TS_OFFCHIP = 0x00001000,
    D3D12XBOX_PIPELINE_STATE_FLAG_GS_OFFCHIP_TS_OFFCHIP = 0x00002000,
    D3D12XBOX_PIPELINE_STATE_FLAG_FORCE_UNIFORM_SV_INSTANCE_ID_IN_VS_AND_PS = 0x00004000,
    D3D12XBOX_PIPELINE_STATE_FLAG_DISABLE_DRAW_BALANCING = 0x00008000
} D3D12_PIPELINE_STATE_FLAGS;  

Constants

Constant Description
D3D12_PIPELINE_STATE_FLAG_NONE The default. Geometry shader data is stored off-chip. Tessellation data is stored on-chip.
D3D12_PIPELINE_STATE_FLAG_TOOL_DEBUG Not used on Xbox One.
D3D12XBOX_PIPELINE_STATE_FLAG_GS_OFFCHIP_TS_ONCHIP Geometry shader data is stored off-chip. Tessellation data is stored on-chip.
D3D12XBOX_PIPELINE_STATE_FLAG_GS_ONCHIP_TS_OFFCHIP Geometry shader data is stored on-chip. Tessellation data is stored off-chip.
D3D12XBOX_PIPELINE_STATE_FLAG_GS_OFFCHIP_TS_OFFCHIP Geometry shader data is stored off-chip. Tessellation data is stored off-chip.
D3D12XBOX_PIPELINE_STATE_FLAG_FORCE_UNIFORM_SV_INSTANCE_ID_IN_VS_AND_PS Waves are split at instance boundaries, causing SV_InstanceID to be uniform; SV_InstanceID is still read from a vector register.
D3D12XBOX_PIPELINE_STATE_FLAG_DISABLE_DRAW_BALANCING Draw balancing is disabled for this PSO.

Remarks

This enumeration is used in the Flags member of the D3D12_GRAPHICS_PIPELINE_STATE_DESC structure.

Note (Feb. 27, 2015) This enumeration will be added to D3D12 on PC, containing only non-Xbox-specific members.

See also the discussion of “onchip” and “offchip” in Tessellation.

Requirements

Header: Declared in d3d12_x.h.