Condividi tramite


enumerazione D3D12DDI_PREDICATION_OP (d3d12umddi.h)

Contiene valori per le opzioni dell'operazione di predicazione. Questo metodo viene usato per indicare che le operazioni video successive e i comandi di manipolazione delle risorse non vengono effettivamente eseguiti se i dati del predicato risultanti del predicato sono uguali all'operazione specificata.

Sintassi

typedef enum D3D12DDI_PREDICATION_OP {
  D3D12DDI_PREDICATION_OP_EQUAL_ZERO,
  D3D12DDI_PREDICATION_OP_NOT_EQUAL_ZERO
} ;

Costanti

 
D3D12DDI_PREDICATION_OP_EQUAL_ZERO
Abilita il predicato se tutti i bit in un buffer a 64 bit sono zero (0).
D3D12DDI_PREDICATION_OP_NOT_EQUAL_ZERO
Abilita la predicazione se almeno uno dei buffer a 64 bit non è zero (0).

Commenti

Il predicato consente al chiamante di avere un'istruzione if nel buffer dei comandi. Ilcomando COMMANDList::SetPredication ID3D12 contrassegna l'inizio dell'istruzione if. L'istruzione if termina alla chiamata successiva a ID3D12CommandList::SetPredication o alla chiusura dell'elenco di comandi. Inoltre, il predicato non supporta annidati se è, else-if o altro. Espressione da valutare per l'oggetto if passata come parametri alla chiamata ID3D12*CommandList::SetPredication. Un puntatore a un valore a 64 bit viene passato come buffer D3D12 e un offset di byte allineato a 64 bit. L'operazione specifica il confronto.

Se l'espressione restituisce true, i comandi nell'istruzione if non vengono eseguiti.

Il valore stesso viene determinato solo dopo l'esecuzione del comando SetPredication nella GPU. Il valore del buffer deve essere "acquisito" dal comando SetPredication quando viene eseguito nella GPU, in modo che le successive modifiche al buffer non cambino se i comandi nell'istruzione if vengono eseguiti. Il valore archiviato nel buffer può essere da qualsiasi posizione. Gli esempi sono il valore di decodifica delle statistiche di query Status, un valore scritto da uno shader e così via.

All'interno di un elenco di comandi, le applicazioni possono chiamare ID3D12*CommandList::SetPredication con un puntatore a risorse Null per disabilitare il predicato per i comandi successivi nell'elenco di comandi. In caso contrario, lo stato del predicato viene reimpostato su disabilitato quando l'utente chiude e reimposta l'elenco di comandi per l'esecuzione, in modo che SetPredication non venga mantenuto tra gli elenchi di comandi.

Requisiti

Requisito Valore
Intestazione d3d12umddi.h (include D3d12umddi.h)