Метод ID3D10Device::SetPredication (d3d10.h)
Задайте предикат отрисовки.
Синтаксис
void SetPredication(
[in] ID3D10Predicate *pPredicate,
[in] BOOL PredicateValue
);
Параметры
[in] pPredicate
Тип: ID3D10Predicate*
Указатель на предикат (см. ID3D10Predicate). Значение NULL указывает на предикат "нет"; В этом случае значение PredicateValue не имеет значения, но будет сохранено для ID3D10Device::GetPredication.
[in] PredicateValue
Тип: BOOL
Если задано значение TRUE, отрисовка будет зависеть от выполнения условий предиката. Если значение РАВНО FALSE, отрисовка будет влиять, если условия не выполняются.
Возвращаемое значение
None
Remarks
Предикат должен находиться в состоянии "выдано" или "сигнальное", чтобы использовать его для предикаций. Хотя предикат задан для предикаций, вызовы ID3D10Asynchronous::Begin и ID3D10Asynchronous::End недопустимы.
Этот метод используется для обозначения того, что последующие команды отрисовки и обработки ресурсов фактически не выполняются, если результирующие данные Предиката в предикате равны PredicateValue. Однако некоторые предикаты являются только указаниями, поэтому они не могут препятствовать выполнению операций.
Основная полезность предикаций заключается в том, чтобы позволить приложению выполнять графические команды без снижения производительности при вращении, ожидая возврата ID3D10Asynchronous::GetData . Таким образом, предикация может возникать, когда ID3D10Asynchronous::GetData возвращает S_FALSE. Другой способ представить это: приложение также может использовать Предикат в качестве резервного, если возможно, что ID3D10Asynchronous::GetData возвращает S_FALSE. Если ID3D10Asynchronous::GetData возвращает S_OK, приложение может пропустить вызов графических команд вручную с собственной логикой приложения.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d10.h |
Библиотека | D3D10.lib |