Condividi tramite


D3D12DDI_INDIRECT_ARGUMENT_DESC struttura (d3d12umddi.h)

La struttura D3D12DDI_INDIRECT_ARGUMENT_DESC descrive un argomento indiretto (un parametro indiretto), da usare con una firma di comando.

Sintassi

typedef struct D3D12DDI_INDIRECT_ARGUMENT_DESC {
  D3D12DDI_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;
  };
} D3D12DDI_INDIRECT_ARGUMENT_DESC;

Members

Type

Valore di enumerazione D3D12DDI_INDIRECT_ARGUMENT_TYPE che specifica il tipo di argomento indiretto. Questo valore determina quale membro dell'unione viene usato.

VertexBuffer

VertexBuffer.Slot

Specifica lo slot contenente l'indirizzo del buffer del vertice.

Constant

Constant.RootParameterIndex

Specifica l'indice radice della costante.

Constant.DestOffsetIn32BitValues

Offset, in valori a 32 bit, per impostare la prima costante del gruppo. Supporta costanti multivalore in corrispondenza di un determinato indice radice. Le voci costanti radice devono essere ordinate dal più piccolo al più grande DestOffsetIn32BitValues.

Constant.Num32BitValuesToSet

Numero di costanti a 32 bit impostate nell'indice radice specificato. Supporta costanti multivalore in corrispondenza di un determinato indice radice.

ConstantBufferView

ConstantBufferView.RootParameterIndex

Specifica l'indice radice del CBV.

ShaderResourceView

ShaderResourceView.RootParameterIndex

Specifica l'indice radice dell'oggetto SRV.

UnorderedAccessView

UnorderedAccessView.RootParameterIndex

Specifica l'indice radice dell'UAV.

IncrementingConstant

IncrementingConstant.RootParameterIndex

Indice all'interno della firma radice che identifica la costante radice da aggiornare.

field IncrementingConstant.DestOffsetIn32BitValues

Questo campo specifica l'offset, in termini di valori a 32 bit (non byte), all'interno della memoria della costante radice in cui verrà scritto il valore incrementato. Definisce la posizione all'interno della costante radice in cui verrà avviata la costante di incremento. Se la costante radice è una matrice di più valori a 32 bit, questo offset indica quale elemento della matrice riceverà il primo valore incrementato.

IncrementingConstant.DestOffsetIn32BitValues

Commenti

Gli argomenti indiretti vengono usati insieme alle firme dei comandi per specificare il tipo e la struttura dei dati letti dalla GPU da un buffer per eseguire un comando, senza che la CPU debba essere coinvolta in ogni singolo disegno o chiamata di invio.

Usare questa struttura con la struttura D3D12DDIARG_CREATE_COMMAND_SIGNATURE_0001 .

Per altre informazioni, vedere La specifica di Mesh Shader .

Requisiti

Requisito Valore
Client minimo supportato Windows 10, versione 1903
Intestazione d3d12umddi.h (include D3d12umddi.h)

Vedi anche

D3D12DDI_INDIRECT_ARGUMENT_TYPE

D3D12DDIARG_CREATE_COMMAND_SIGNATURE_0001