Поделиться через


Метод ID3D12GraphicsCommandList1::OMSetDepthBounds (d3d12.h)

Этот метод позволяет динамически изменять границы глубины.

Синтаксис

void OMSetDepthBounds(
  [in] FLOAT Min,
  [in] FLOAT Max
);

Параметры

[in] Min

Тип: FLOAT

SAL: In

Задает минимальные границы глубины. Значение по умолчанию — 0. Значения NaN автоматически преобразуются в 0.

[in] Max

Тип: FLOAT

SAL: In

Задает максимальные границы глубины. Значение по умолчанию — 1. Значения NaN автоматически преобразуются в 0.

Возвращаемое значение

None

Remarks

Проверка границ глубины позволяет отбрасывать пиксели и образцы, если хранимое в настоящее время значение глубины выходит за пределы диапазона, заданного значениями Min и Max включительно. Если хранимое в данный момент значение глубины пикселя или образца находится в этом диапазоне, то тест по ограничениям глубины проходит успешное выполнение, и он отображается; В противном случае проверка границ глубины завершается сбоем, и пиксель или выборка отклоняются. Обратите внимание, что тест с ограничениями глубины учитывает текущее значение глубины, а не значение глубины, созданное выполняющимся пиксельным шейдером.

Чтобы использовать тестирование с ограничениями глубины, приложение должно использовать новый метод CreatePipelineState , чтобы включить тестирование с ограничениями глубины в PSO, а затем использовать этот метод списка команд для динамического изменения границ глубины.

OMSetDepthBounds является необязательной функцией. Используйте метод CheckFeatureSupport , чтобы определить, поддерживается ли эта функция драйвером пользовательского режима. О поддержке этой функции сообщается через структуру D3D12_FEATURE_D3D12_OPTIONS2 .

Требования

Требование Значение
Целевая платформа Windows
Header d3d12.h
Библиотека D3d12.lib
DLL D3d12.dll

См. также раздел

ID3D12GraphicsCommandList1