перечисление D3D12DDI_PREDICATION_OP (d3d12umddi.h)
Содержит значения для параметров операции предикаций. Этот метод используется для обозначения того, что последующие операции видео и команды манипуляции ресурсами на самом деле не выполняются, если полученные данные предиката предиката равны указанной операции.
Синтаксис
typedef enum D3D12DDI_PREDICATION_OP {
D3D12DDI_PREDICATION_OP_EQUAL_ZERO,
D3D12DDI_PREDICATION_OP_NOT_EQUAL_ZERO
} ;
Константы
D3D12DDI_PREDICATION_OP_EQUAL_ZERO Включает предикацию, если все биты в 64-разрядном буфере равны нулю (0). |
D3D12DDI_PREDICATION_OP_NOT_EQUAL_ZERO Включает предикацию, если хотя бы один из 64-разрядного буфера не равен нулю (0). |
Замечания
Предикация позволяет вызывающему объекту иметь инструкцию if в буфере команд. Команда Id3D12CommandList::SetPredication помечает начало инструкции if. Оператор if заканчивается на следующем вызове ID3D12CommandList::SetPredication или при закрытии списка команд. Кроме того, предикация не поддерживает вложенные вложенные элементы if, else-if или else. Выражение для вычисления, передаваемого в качестве параметров вызову ID3D12*CommandList::SetPredication. Указатель на 64-битное значение передается в виде буфера D3D12 и смещения 64-битного байта. Операция указывает сравнение.
Если выражение оценивается как true, команды в инструкции if-операторы не выполняются.
Само значение определяется только после выполнения команды SetPredication на GPU. Значение буфера должно быть "захвачено" командой SetPredication при выполнении на GPU, чтобы последующие изменения буфера не изменялись независимо от того, выполняются ли команды в инструкции if. Значение, хранящееся в буфере, может находиться в любом месте. Примерами являются значение состояния статистики декодирования запросов, значение, написанное шейдером и т. д.
В списке команд приложения могут вызывать ID3D12*CommandList::SetPredication с указателем на пустой ресурс, чтобы отключить предикаты для последующих команд в списке команд. В противном случае состояние предикаций сбрасывается до отключения при закрытии и сбросе списка команд для выполнения, поэтому SetPredication не сохраняется в списках команд.
Требования
Требование | Ценность |
---|---|
заголовка | d3d12umddi.h (include D3d12umddi.h) |