데칼링(Direct3D 9)
Direct3D 애플리케이션은 데칼링을 사용하여 렌더링 대상 화면에 그려지는 특정 기본 이미지의 픽셀을 제어합니다. 애플리케이션은 원형 이미지에 데칼을 적용하여 동면 다각형이 올바르게 렌더링되도록 합니다.
예를 들어 도로에 타이어 표시와 노란색 선을 적용할 때 표시가 도로 바로 위에 표시되어야 합니다. 그러나 표시와 도로의 z 값은 동일합니다. 따라서 깊이 버퍼는 둘 사이의 깨끗한 분리를 생성하지 않을 수 있습니다. 후면 기본 형식의 일부 픽셀은 전면 기본 형식 위에 렌더링될 수 있으며 그 반대의 경우도 마찬가지입니다. 결과 이미지는 프레임에서 프레임으로 반짝이는 것처럼 보입니다. 이 효과는 z-fighting 또는 깜빡임이라고 합니다.
이 문제를 해결하려면 데칼이 나타날 뒷면 기본 형상의 섹션을 스텐실을 사용하여 마스킹합니다. z 버퍼링을 해제하고 전면 기본 형식의 이미지를 렌더링 대상 표면의 마스킹된 영역으로 렌더링합니다.
이 문제를 해결하기 위해 여러 텍스처 혼합을 사용할 수 있지만 이렇게 하면 애플리케이션에서 생성할 수 있는 다른 특수 효과의 수가 제한됩니다. 스텐실 버퍼를 사용하여 데칼을 적용하면 다른 효과에 대한 텍스처 혼합 단계가 해제됩니다.
관련 항목