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


структура D3D12_DEPTH_STENCIL_DESC1 (d3d12.h)

Описывает состояние трафарета глубины.

Синтаксис

typedef struct D3D12_DEPTH_STENCIL_DESC1 {
  BOOL                       DepthEnable;
  D3D12_DEPTH_WRITE_MASK     DepthWriteMask;
  D3D12_COMPARISON_FUNC      DepthFunc;
  BOOL                       StencilEnable;
  UINT8                      StencilReadMask;
  UINT8                      StencilWriteMask;
  D3D12_DEPTH_STENCILOP_DESC FrontFace;
  D3D12_DEPTH_STENCILOP_DESC BackFace;
  BOOL                       DepthBoundsTestEnable;
} D3D12_DEPTH_STENCIL_DESC1;

Члены

DepthEnable

Указывает, следует ли включить тестирование глубины. Задайте для этого элемента значение TRUE , чтобы включить тестирование глубины.

DepthWriteMask

D3D12_DEPTH_WRITE_MASK типизированное значение, идентифицирующее часть буфера трафарета глубины, которую можно изменить с помощью данных глубины.

DepthFunc

D3D12_COMPARISON_FUNC типизированное значение, идентифицирующее функцию, которая сравнивает данные глубины с существующими данными глубины.

StencilEnable

Указывает, следует ли включить тестирование набора элементов. Присвойте этому элементу значение TRUE , чтобы включить тестирование трафарета.

StencilReadMask

Определите часть буфера трафарета глубины для чтения данных трафарета.

StencilWriteMask

Определите часть буфера трафарета глубины для записи данных трафарета.

FrontFace

Структура D3D12_DEPTH_STENCILOP_DESC, которая описывает, как использовать результаты теста глубины и теста трафарета для пикселей, нормальная поверхность которых обращена к камере.

BackFace

Структура D3D12_DEPTH_STENCILOP_DESC , описывающая, как использовать результаты теста глубины и теста трафарета для пикселей, поверхность которых обычно обращена от камеры.

DepthBoundsTestEnable

Значение TRUE, чтобы включить тестирование с ограничениями глубины; в противном случае — FALSE. Значение по умолчанию — FALSE.

Комментарии

Объект D3D12_GRAPHICS_PIPELINE_STATE_DESC содержит структуру состояния трафарета глубины, которая управляет тем, как тестирование трафарета глубины выполняется на этапе слияния вывода.

В этой таблице показаны значения по умолчанию для состояний трафарета глубины.

Состояние Значение по умолчанию
DepthEnable TRUE
DepthWriteMask D3D12_DEPTH_WRITE_MASK_ALL
DepthFunc D3D12_COMPARISON_LESS
StencilEnable Ложь.
StencilReadMask D3D12_DEFAULT_STENCIL_READ_MASK
StencilWriteMask D3D12_DEFAULT_STENCIL_WRITE_MASK
FrontFace.StencilFunc

и

BackFace.StencilFunc

D3D12_COMPARISON_ALWAYS
FrontFace.StencilDepthFailOp

и

BackFace.StencilDepthFailOp

D3D12_STENCIL_OP_KEEP
FrontFace.StencilPassOp

и

BackFace.StencilPassOp

D3D12_STENCIL_OP_KEEP
FrontFace.StencilFailOp

и

BackFace.StencilFailOp

D3D12_STENCIL_OP_KEEP
DepthBoundsTestEnable Ложь.
 

Форматы, поддерживающие набор элементов, DXGI_FORMAT_D24_UNORM_S8_UINT и DXGI_FORMAT_D32_FLOAT_S8X24_UINT.

Требования

Требование Значение
Заголовок d3d12.h

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

Основные структуры