D3D12DDI_PREDICATION_OP enumeración (d3d12umddi.h)

Contiene valores para las opciones de operación de predicación. Este método se usa para indicar que las siguientes operaciones de vídeo y comandos de manipulación de recursos no se realizan realmente si los datos de predicado resultantes del predicado son iguales a la operación especificada.

Sintaxis

typedef enum D3D12DDI_PREDICATION_OP {
  D3D12DDI_PREDICATION_OP_EQUAL_ZERO,
  D3D12DDI_PREDICATION_OP_NOT_EQUAL_ZERO
} ;

Constantes

 
D3D12DDI_PREDICATION_OP_EQUAL_ZERO
Habilita el predicado si todos los bits de un búfer de 64 bits son cero (0).
D3D12DDI_PREDICATION_OP_NOT_EQUAL_ZERO
Habilita el predicado si al menos uno de los búferes de 64 bits no es cero (0).

Comentarios

Predicación permite al autor de la llamada tener una instrucción if en el búfer de comandos. El comando ID3D12CommandList::SetPredication marca el principio de la instrucción if. La instrucción if finaliza en la siguiente llamada a ID3D12CommandList::SetPredication o cuando se cierra la lista de comandos. Además, el predicado no admite anidados si es, else-if, o de lo contrario. Expresión que se va a evaluar para si se pasa como parámetros a la llamada ID3D12*CommandList::SetPredication. Un puntero a un valor de 64 bits se pasa como un búfer D3D12 y un desplazamiento de bytes alineado de 64 bits. La operación especifica la comparación.

Si la expresión se evalúa como true, los comandos de la instrucción if no se ejecutan.

El propio valor solo se determina una vez que el comando SetPredication se ejecuta en la GPU. El valor del búfer debe ser "capturado" por el comando SetPredication cuando se ejecuta en la GPU, de modo que las modificaciones posteriores en el búfer no cambien si se ejecutan o no los comandos de la instrucción if. El valor almacenado en el búfer podría ser desde cualquier lugar. Algunos ejemplos son el valor de estado de las estadísticas de consulta de descodificación, un valor escrito por un sombreador, etc.

Dentro de una lista de comandos, las aplicaciones pueden llamar a ID3D12*CommandList::SetPredication con un puntero de recurso nulo para deshabilitar el predicado para los comandos posteriores de la lista de comandos. De lo contrario, el estado de predicación se restablece a deshabilitado cuando el usuario cierra y restablece la lista de comandos para su ejecución, por lo que SetPredication no se conserva en las listas de comandos.

Requisitos

   
Header d3d12umddi.h (incluya D3d12umddi.h)