Condividi tramite


struttura D3D12_GLOBAL_ROOT_SIGNATURE (d3d12.h)

Definisce una sottoiezione dello stato della firma radice globale che verrà usata con gli shader associati.

Sintassi

typedef struct D3D12_GLOBAL_ROOT_SIGNATURE {
  ID3D12RootSignature *pGlobalRootSignature;
} D3D12_GLOBAL_ROOT_SIGNATURE;

Members

pGlobalRootSignature

Firma radice che funzionerà come firma radice globale. Un oggetto stato contiene un riferimento a questa firma.

Commenti

La presenza di questo sottooggetto in un oggetto stato è facoltativa. La combinazione di firme radice globali e/o locali associate a una determinata funzione shader deve definire tutte le associazioni di risorse dichiarate dallo shader senza sovrapposizioni tra le firme radice globali e locali.

Se una determinata funzione in un grafico di chiamata è associata a una particolare firma radice globale, tutte le altre funzioni del grafico devono essere associate alla stessa firma radice globale o nessuna e la voce dello shader (radice del grafico di chiamata) deve essere associata alla firma radice globale.

Gli shader diversi possono usare firme radice globali diverse (o nessuna) all'interno di un oggetto stato, ma qualsiasi shader a cui viene fatto riferimento durante una determinata operazione DispatchRays da un elenco di comandi deve avere specificato la stessa firma radice globale di quanto è stato impostato nell'elenco di comandi come firma radice di calcolo. È quindi valido definire un singolo oggetto di stato di grandi dimensioni con più firme radice globali associate a subset diversi degli shader. Le app non sono costrette a dividere l'oggetto di stato solo perché alcuni shader usano firme radice globali diverse.

Requisiti

   
Intestazione d3d12.h