3D를 올바르게 렌더링하려면 앞쪽에 있는 물체가 뒤에 있는 물체를 가릴수있는 처리가 필요하다.
[ culling ]은 보이지 않는 부분을 숨기는 처리이며, 주로 [ DepthBuffer(Z Buffer) ]방식을 사용한다.
처리 방식
culling에는 [Z sroting]과 [ Z buffer] 방식 등이 있다.

- (A) Z sorting:
- 간단함
- 물체끼리 교차하는 전후관계를 결정하기 어려울 때 제대로 렌더링되지 않음
- sorting에 시간이 걸림
- (B) Z buffer: 거리를 픽셀 단위로 기록하기 위한 [ Depth Buffer ] 필요
- 전후관계를 픽셀단위로 판단할 수 있음
- 일반적으로는 Z 버퍼 기법을 사용
- 반투명인 물체가 있으면 depth buffer만으로는 제대로 렌더링할 수 없음
- alpha sorting: Z buffer로 불투명한 물체 렌더링
- 불투명 물체를 먼저 렌더링해 둠
- 반투명 물체를 뒤에서부터 sorting하여 렌더링한다
- Stencil Buffer: 여러가지 효과를 표현하는데 쓰이는 [Stencil Buffer ]를 사용하는 경우도 있음
DepthStencil Buffer
DirectX 11에서 Depth Buffer와 Stencil Buffer는 1개의 리소스를 공유하므로, [ DepthStnecil Buffer] 라고 묶어서 취급한다.
- [ render target ] 과 조합해서 사용
- 렌더타겟은 동시에 8개까지 설정할 수 있지만 깊이/스텐실 버퍼는 1개 뿐이다.