D3D12_INDIRECT_ARGUMENT_DESC structure (d3d12.h)

Describes an indirect argument (an indirect parameter), for use with a command signature.

Syntax

typedef struct D3D12_INDIRECT_ARGUMENT_DESC {
  D3D12_INDIRECT_ARGUMENT_TYPE Type;
  union {
    struct {
      UINT Slot;
    } VertexBuffer;
    struct {
      UINT RootParameterIndex;
      UINT DestOffsetIn32BitValues;
      UINT Num32BitValuesToSet;
    } Constant;
    struct {
      UINT RootParameterIndex;
    } ConstantBufferView;
    struct {
      UINT RootParameterIndex;
    } ShaderResourceView;
    struct {
      UINT RootParameterIndex;
    } UnorderedAccessView;
    struct {
      UINT RootParameterIndex;
      UINT DestOffsetIn32BitValues;
    } IncrementingConstant;
  };
} D3D12_INDIRECT_ARGUMENT_DESC;

Members

Type

A single D3D12_INDIRECT_ARGUMENT_TYPE enumeration constant.

VertexBuffer

VertexBuffer.Slot

Specifies the slot containing the vertex buffer address.

Constant

Constant.RootParameterIndex

Specifies the root index of the constant.

Constant.DestOffsetIn32BitValues

The offset, in 32-bit values, to set the first constant of the group. Supports multi-value constants at a given root index. Root constant entries must be sorted from smallest to largest DestOffsetIn32BitValues.

Constant.Num32BitValuesToSet

The number of 32-bit constants that are set at the given root index. Supports multi-value constants at a given root index.

ConstantBufferView

ConstantBufferView.RootParameterIndex

Specifies the root index of the CBV.

ShaderResourceView

ShaderResourceView.RootParameterIndex

Specifies the root index of the SRV.

UnorderedAccessView

UnorderedAccessView.RootParameterIndex

Specifies the root index of the UAV.

IncrementingConstant

IncrementingConstant.RootParameterIndex

IncrementingConstant.DestOffsetIn32BitValues

Remarks

Use this structure with the D3D12_COMMAND_SIGNATURE_DESC structure.

Requirements

Requirement Value
Header d3d12.h

See also

Core Structures

Example Root Signatures