D3D11_DEPTH_STENCIL_DESC 구조체(d3d11.h)

깊이 스텐실 상태를 설명합니다.

구문

typedef struct D3D11_DEPTH_STENCIL_DESC {
  BOOL                       DepthEnable;
  D3D11_DEPTH_WRITE_MASK     DepthWriteMask;
  D3D11_COMPARISON_FUNC      DepthFunc;
  BOOL                       StencilEnable;
  UINT8                      StencilReadMask;
  UINT8                      StencilWriteMask;
  D3D11_DEPTH_STENCILOP_DESC FrontFace;
  D3D11_DEPTH_STENCILOP_DESC BackFace;
} D3D11_DEPTH_STENCIL_DESC;

멤버

DepthEnable

형식: BOOL

깊이 테스트를 사용하도록 설정합니다.

DepthWriteMask

형식: D3D11_DEPTH_WRITE_MASK

깊이 데이터로 수정할 수 있는 깊이 스텐실 버퍼의 일부를 식별합니다( D3D11_DEPTH_WRITE_MASK 참조).

DepthFunc

형식: D3D11_COMPARISON_FUNC

깊이 데이터를 기존 깊이 데이터와 비교하는 함수입니다. 함수 옵션은 D3D11_COMPARISON_FUNC 나열됩니다.

StencilEnable

형식: BOOL

스텐실 테스트를 사용하도록 설정합니다.

StencilReadMask

형식: UINT8

스텐실 데이터를 읽기 위한 깊이 스텐실 버퍼의 일부를 식별합니다.

StencilWriteMask

형식: UINT8

스텐실 데이터를 작성하기 위한 깊이 스텐실 버퍼의 일부를 식별합니다.

FrontFace

형식: D3D11_DEPTH_STENCILOP_DESC

표면 표준이 카메라를 향하고 있는 픽셀에 대해 깊이 테스트 결과 및 스텐실 테스트를 사용하는 방법을 식별합니다( D3D11_DEPTH_STENCILOP_DESC 참조).

BackFace

형식: D3D11_DEPTH_STENCILOP_DESC

표면 표준이 카메라에서 멀리 향하고 있는 픽셀에 대해 깊이 테스트 결과 및 스텐실 테스트를 사용하는 방법을 식별합니다( D3D11_DEPTH_STENCILOP_DESC 참조).

설명

ID3D11Device::CreateDepthStencilState 메서드에 D3D11_DEPTH_STENCIL_DESC 포인터를 전달하여 깊이 스텐실 상태 개체를 만듭니다.

깊이 스텐실 상태는 출력 병합기 단계에서 깊이 스텐실 테스트를 수행하는 방법을 제어합니다.

다음 표에는 깊이 스텐실 상태의 기본값이 나와 있습니다.

시스템 상태 기본값
DepthEnable TRUE
DepthWriteMask D3D11_DEPTH_WRITE_MASK_ALL
DepthFunc D3D11_COMPARISON_LESS
StencilEnable FALSE
StencilReadMask D3D11_DEFAULT_STENCIL_READ_MASK
StencilWriteMask D3D11_DEFAULT_STENCIL_WRITE_MASK
FrontFace.StencilFunc

BackFace.StencilFunc

D3D11_COMPARISON_ALWAYS
FrontFace.StencilDepthFailOp

BackFace.StencilDepthFailOp

D3D11_STENCIL_OP_KEEP
FrontFace.StencilPassOp

BackFace.StencilPassOp

D3D11_STENCIL_OP_KEEP
FrontFace.StencilFailOp

BackFace.StencilFailOp

D3D11_STENCIL_OP_KEEP
 

스텐실링을 지원하는 형식은 DXGI_FORMAT_D24_UNORM_S8_UINT DXGI_FORMAT_D32_FLOAT_S8X24_UINT.

요구 사항

요구 사항
헤더 d3d11.h

추가 정보

핵심 구조체