Direct3D 12 보수적 래스터화
보수적인 래스터화는 픽셀 렌더링에 몇 가지 확실성을 더하며, 특히 충돌 감지 알고리즘에 유용합니다.
- 개요
- 파이프라인 상호 작용
- 래스터화 규칙 상호 작용
- 다중 샘플링 상호 작용
- SampleMask 상호 작용
- 깊이/스텐실 테스트 상호 작용
- 도우미 픽셀 상호 작용
- 출력 검사 상호 작용
- inputCoverage 상호 작용
- innerCoverage 상호 작용
- 특성 보간 상호 작용
- 클리핑 상호 작용
- 클립 거리 상호 작용
- 대상 독립 래스터화 상호 작용
- IA 기본 토폴로지 상호 작용
- 쿼리 상호 작용
- 컬 상태 상호 작용
- IsFrontFace 상호 작용
- 채우기 모드 상호 작용
- 구현 세부 정보
- API 요약
- 관련 항목
개요
일반 래스터화는 렌더링된 기본 형식에 의해 부분적으로 적용되는 모든 픽셀이 래스터화됨을 의미하며, 이는 픽셀 셰이더가 호출됨을 의미합니다. 일반적인 동작은 샘플링이며, 일반 래스터화를 사용하는 경우 사용되지 않습니다.
보수적 래스터화는 충돌 감지, 폐색 컬링 및 타일 렌더링의 확실성을 포함하여 다양한 상황에서 유용합니다.
예를 들어 다음 그림에서는 래스터라이저(즉, 16.8 고정 소수점 꼭짓점 좌표 사용)에 나타나는 것처럼 일반 래스터화를 사용하여 렌더링된 녹색 삼각형을 보여 줍니다. 갈색 영역은 "불확실성 영역"으로 알려져 있습니다 - 래스터라이저의 기본이 원래 부동 소수점 꼭짓점 좌표와 관련하여 보수적인지 확인하는 데 필요한 삼각형의 확장 범위를 나타내는 개념 영역입니다. 각 꼭짓점의 빨간색 사각형은 불확실성 영역이 어떻게 계산되는지를 보여 줍니다.
큰 회색 사각형은 렌더링될 픽셀을 표시합니다. 분홍색 사각형은 삼각형의 가장자리가 픽셀의 가장자리를 가로지를 때 재생되는 "Top-Left 규칙"을 사용하여 렌더링된 픽셀을 표시합니다. 시스템에서 일반적으로는 아니지만 항상 컬링하지는 않는 가양성(하지 않아야 하는 픽셀 집합)이 있을 수 있습니다.
왼쪽 위 규칙
파이프라인과의 상호 작용
래스터화 규칙 상호 작용
일반 래스터화 모드에서 래스터화 규칙은 위에서 설명한 Top-Left 규칙 및 픽셀 검사에 대한 예외를 제외하고 일반 래스터화 모드를 사용하도록 설정하지 않은 경우와 동일한 방식으로 적용됩니다. 16.8 Fixed-Point 래스터라이저 정밀도를 사용해야 합니다.
하드웨어에서 전체 부동 소수점 꼭짓점 좌표를 사용하는 경우 적용되지 않는 픽셀은 고정 소수점 도메인의 반 픽셀이 아닌 불확실성 영역 내에 있는 경우에만 포함될 수 있습니다. 향후 하드웨어는 계층 2에 지정된 긴축된 불확실성 영역에 도달할 것으로 예상됩니다. 이 요구 사항은 조각 삼각형이 필요 이상으로 확장되지 않도록 방지합니다.
유사한 유효한 불확실성 영역도 InnerCoverage
적용되지만 이 경우 더 큰 불확실성 영역이 필요하지 않은 구현이 없으므로 더 엄격합니다. 자세한 내용은 InnerCoverage 상호 작용 참조하세요.
내부 및 외부 불확실성 영역은 고정 지점 도메인에서 하위 픽셀 그리드의 절반 또는 픽셀의 1/512 크기보다 크거나 같아야 합니다. 이는 유효한 최소 불확실성 지역입니다. 1/512는 16.8 고정 소수점 래스터라이저 좌표 표현과 부동 소수점 꼭짓점 좌표를 16.8 고정 점 좌표로 변환할 때 적용되는 가장 가까운 원형 규칙에서 가져옵니다. 래스터라이저 정밀도가 변경되면 1/512가 변경됩니다. 구현에서 이 최소 불확실성 영역을 구현하는 경우 불확실성 영역의 가장자리 또는 모서리가 픽셀의 가장자리 또는 모서리를 따라 떨어질 때 Top-Left 규칙을 따라야 합니다. 불확실성 영역의 잘린 가장자리는 가장 가까운 꼭짓점으로 처리되어야 합니다. 즉, 연결된 꼭짓점에서 조인하는 두 개의 가장자리로 계산됩니다. Top-Left 규칙은 최소 불확실성 영역을 사용하는 경우 보수적 래스터화 구현이 보수적 래스터화 모드가 비활성화될 때 적용할 수 있는 픽셀을 래스터화하지 못하기 때문에 필요합니다.
다음 다이어그램은 고정 소수점 도메인의 기본 요소 가장자리 주위에 사각형을 스윕하여 생성되는 유효한 외부 불확실성 영역을 보여 줍니다(즉, 꼭짓점이 16.8 고정 소수점 표현으로 정량화됨). 이 사각형의 차원은 유효한 외부 불확실성 영역 크기를 기반으로 합니다. 픽셀의 1/2의 경우 정사각형은 너비와 높이가 1픽셀이고 픽셀의 경우 1/512의 경우 정사각형은 너비와 높이가 픽셀의 1/256입니다. 녹색 삼각형은 지정된 기본 형식을 나타내고, 빨간색 점선은 과대 평가된 보수적 래스터화의 경계를 나타내고, 단색 검정 사각형은 기본 가장자리를 따라 휩쓸린 사각형을 나타내고, 파란색 체크 무늬 영역은 외부 불확실성 영역입니다.
외부 불확실성 영역을
다중 샘플링 상호 작용
RenderTarget/DepthStencil 표면의 샘플 수(또는 ForcedSampleCount 사용 중인지 여부)에 관계없이 모든 샘플은 보수적 래스터화에 의해 래스터화된 픽셀에 대해 다룹니다. 개별 샘플 위치는 기본 위치에 속하는지 여부를 테스트하지 않습니다.
SampleMask 상호 작용
SampleMask 래스터라이저 상태는 InputCoverage
대해 일반 래스터화를 사용하도록 설정하지 않은 경우와 동일한 방식으로 적용되지만 InnerCoverage
영향을 주지 않습니다(즉, InnerCoverage
선언된 입력에 AND가 아닙니다). 이는 InnerCoverage
MSAA 샘플이 마스킹되는지 여부와 관련이 없기 때문입니다. 0 InnerCoverage
픽셀이 완전히 커버되지 않고 샘플이 업데이트되지 않는다는 의미일 뿐입니다.
깊이/스텐실 테스트 상호 작용
깊이/스텐실 테스트는 보수적 래스터화를 사용하지 않을 때 모든 샘플이 적용되는 것과 동일한 방식으로 보수적으로 래스터화된 픽셀에 대해 진행됩니다.
포함된 모든 샘플을 계속 진행하면 깊이 추정이 발생할 수 있으며, 이는 유효하며 일반 래스터화가 활성화되지 않은 경우 지정된 뷰포트로 고정되어야 합니다. 이는 샘플 수가 1보다 큰 RenderTarget 픽셀 빈도 보간 모드를 사용하는 경우와 유사하지만, 보수적 래스터화의 경우 추정할 수 있는 고정 함수 깊이 테스트로 들어가는 깊이 값입니다.
깊이 추정을 사용한 초기 깊이 컬링 동작은 정의되지 않습니다. 일부 초기 깊이 컬링 하드웨어가 추정된 깊이 값을 제대로 지원할 수 없기 때문입니다. 그러나 깊이 추정이 있는 경우 초기 깊이 컬링 동작은 추정된 깊이 값을 지원할 수 있는 하드웨어에서도 문제가 됩니다. 이 문제는 픽셀 셰이더 입력 깊이를 래스터화되는 기본 형식의 최소 및 최대 깊이 값으로 고정하고 해당 값을 oDepth
(픽셀 셰이더 출력 깊이 레지스터)에 기록하여 해결할 수 있습니다. 이 경우 oDepth
쓰기로 인해 초기 깊이 컬링을 사용하지 않도록 설정하려면 구현이 필요합니다.
도우미 픽셀 상호 작용
도우미 픽셀 규칙은 일반 래스터화를 사용하도록 설정하지 않은 경우와 동일한 방식으로 적용됩니다. 이 작업의 일환으로 도우미 픽셀을 포함한 모든 픽셀은 InputCoverage
상호 작용 섹션에 지정된 대로 InputCoverage
정확하게 보고해야 합니다. 따라서 완전히 덮지 않은 픽셀은 0개의 검사를 보고합니다.
출력 검사 상호 작용
출력 검사(oMask
)는 보수적인 래스터화가 적용되는 모든 샘플에서 사용하도록 설정되지 않은 경우처럼 보수적으로 래스터화된 픽셀에 대해 동작합니다.
InputCoverage 상호 작용
보수적 래스터화 모드에서 이 입력 레지스터는 보수적인 래스터화가 지정된 보수적으로 래스터화된 픽셀에 대해 사용하도록 설정되지 않은 경우 모든 샘플이 적용되는 것처럼 채워집니다. 즉, 기존의 모든 상호 작용이 적용되고(예: SampleMask 적용됨) LSB에서 InputCoverage
첫 번째 n비트가 보수적으로 래스터화된 픽셀에 대해 1로 설정됩니다. 픽셀당 n개의 샘플 RenderTarget 및/또는 DepthStencil 버퍼가 출력 병합기바인딩되거나 ForcedSampleCount n 샘플이 있습니다. 나머지 비트는 0입니다.
이 입력은 보수적 래스터화 사용과 관계없이 셰이더에서 사용할 수 있지만, 보수적 래스터화는 적용된 모든 샘플만 표시하도록 동작을 변경합니다(또는 도우미 픽셀의 경우 없음).
InnerCoverage 상호 작용
이 기능은 계층 3에서만 필요하며 사용할 수 있습니다. 구현에서 계층 3보다 작은 계층을 지원하는 경우 이 모드를 사용하는 셰이더에 대해 런타임이 셰이더를 만들지 못합니다.
픽셀 셰이더에는 32비트 스칼라 정수 시스템 생성 값을 사용할 수 있습니다. InnerCoverage
. LSB의 비트 0이 지정된 보수적으로 래스터화된 픽셀에 대해 1로 설정된 비트 필드이며, 해당 픽셀이 현재 기본 형식 내에 완전히 포함되도록 보장되는 경우에만 해당합니다. 다른 모든 입력 레지스터 비트는 비트 0이 설정되지 않은 경우 0으로 설정해야 하지만 비트 0이 1로 설정된 경우 정의되지 않습니다(기본적으로 이 비트 필드는 false가 정확히 0이어야 하지만 true는 0이 아닌 홀수(비트 0 집합)일 수 있는 부울 값을 나타냅니다. 이 입력은 과소 평가된 보수적 래스터화 정보에 사용됩니다. 현재 픽셀이 기하 도형 내부에 완전히 있는지 여부를 픽셀 셰이더에 알릴 수 있습니다.
현재 그리기를 작동하는 해상도보다 크거나 같은 해상도의 맞춤 오류를 고려해야 합니다. 가양성(픽셀이 현재 그리기 작동 중인 해상도보다 크거나 같은 해상도에서 맞춤 오류에 대해 완전히 적용되지 않는 경우 InnerCoverage
비트 설정)이 없어야 하지만 거짓 부정은 허용됩니다. 요약하자면, 구현은 래스터라이저에서 전체 부동 소수점 꼭짓점 좌표가 포함되지 않는 완전히 덮인 픽셀을 잘못 식별해서는 안 됩니다.
하드웨어에서 전체 부동 소수점 꼭짓점 좌표를 사용하는 경우 완전히 커버되는 픽셀은 고정 소수점 도메인에서 하위 픽셀 그리드의 크기 또는 픽셀의 1/256보다 크지 않아야 하는 내부 불확실성 영역을 교차하는 경우에만 생략할 수 있습니다. 또 다른 방법으로, 내부 불확실성 영역의 내부 경계 내에 있는 픽셀은 완전히 덮인 것으로 표시되어야 합니다. 불확실성 영역의 내부 경계는 아래 다이어그램에서 굵은 검은색 점선으로 표시됩니다. 1/256은 16.8 고정 소수점 래스터라이저 좌표 표현에서 가져온 것으로, 래스터라이저 정밀도가 변경되면 변경됩니다. 이 불확실성 영역은 부동 소수점 꼭짓점 좌표를 래스터라이저의 고정 소수점 꼭짓점 좌표로 변환하여 발생하는 맞춤 오류를 고려하기에 충분합니다.
래스터화 규칙 상호 작용에 정의된 동일한 1/512 최소 불확실성 지역 요구 사항도 여기에 적용됩니다.
다음 다이어그램은 고정 소수점 도메인에서 기본 형식의 가장자리 주위에 사각형을 스윕하여 생성되는 유효한 내부 불확실성 영역을 보여 줍니다(즉, 꼭짓점이 16.8 고정 지점 표현으로 정량화됨). 이 사각형의 차원은 유효한 내부 불확실성 영역 크기를 기반으로 합니다. 픽셀의 1/256의 경우 정사각형은 너비와 높이가 픽셀의 1/128입니다. 녹색 삼각형은 지정된 기본 형식을 나타내고, 굵은 검은색 점선은 내부 불확실성 영역의 경계를 나타내고, 단색 검정 사각형은 기본 가장자리를 따라 스윕되는 사각형을 나타내고, 주황색 체크 무늬 영역은 내부 불확실성 영역입니다.
InnerCoverage
사용은 픽셀이 보수적으로 래스터화되는지 여부에 영향을 주지 않습니다. 즉, 이러한 InputCoverage
모드 중 하나를 사용하면 일반 래스터화 모드를 사용할 때 래스터화되는 픽셀에 영향을 주지 않습니다. 따라서 InnerCoverage
사용되고 픽셀 셰이더가 기하 도형에 완전히 포함되지 않은 픽셀을 처리하는 경우 해당 값은 0이 되지만 픽셀 셰이더 호출에는 샘플이 업데이트됩니다. 이는 InputCoverage
0인 경우와 다릅니다. 즉, 샘플이 업데이트되지 않습니다.
이 입력은 InputCoverage
함께 사용할 수 없습니다.
InnerCoverage
액세스하려면 픽셀 셰이더 입력 레지스터 중 하나에서 단일 구성 요소로 선언되어야 합니다. 선언의 보간 모드는 상수여야 합니다(보간은 적용되지 않음).
InnerCoverage
비트 필드는 깊이/스텐실 테스트의 영향을 받지 않으며 SampleMask 래스터라이저 상태로 AND되지도 않습니다.
이 입력은 일반 래스터화 모드에서만 유효합니다. 일반 래스터화를 사용하도록 설정하지 않으면 InnerCoverage
정의되지 않은 값을 생성합니다.
도우미 픽셀이 필요하기 때문에 픽셀 셰이더 호출이 발생하지만 기본 형식에서 다루지 않는 경우 InnerCoverage
레지스터가 0으로 설정되어 있어야 합니다.
특성 보간 상호 작용
특성 보간 모드는 변경되지 않으며, 뷰포트 크기 조정 및 고정 소수점 변환 꼭짓점이 사용되는 일반 래스터화를 사용하도록 설정되지 않은 경우와 동일한 방식으로 진행합니다. 보수적으로 래스터화된 픽셀의 모든 샘플이 적용된 것으로 간주되므로 샘플 수가 1보다 큰 RenderTarget 픽셀 빈도 보간 모드가 사용되는 경우와 마찬가지로 값을 추정하는 것이 유효합니다. 중심 보간 모드는 해당 비 중심 보간 모드와 동일한 결과를 생성합니다. 샘플 검사만 가득 차거나 0인 이 시나리오에서는 centroid의 개념이 의미가 없습니다.
보수적인 래스터화를 사용하면 삼각형을 퇴화하여 픽셀 셰이더 호출을 생성할 수 있으므로 퇴행성 삼각형은 보간된 모든 값에 대해 꼭짓점 0에 할당된 값을 사용해야 합니다.
클리핑 상호 작용
일반 래스터화 모드를 사용하도록 설정하고 깊이 클립을 사용하지 않도록 설정하면(DepthClipEnable 래스터라이저 상태가 FALSE로 설정된 경우) 구현에 따라 0 <= z <= w 범위를 벗어나는 기본 형식의 세그먼트에 대한 특성 보간에 차이가 있을 수 있습니다. 기본 값은 관련 평면을 교차하는 지점에서 사용됩니다(멀리 또는 멀리). 또는 특성 보간은 일반 래스터화 모드를 사용하지 않도록 설정된 경우처럼 동작합니다. 그러나 깊이 값 동작은 보수적 래스터화 모드에 관계없이 동일합니다. 즉, 깊이 범위를 벗어나는 기본 형식은 뷰포트 깊이 범위의 가장 가까운 제한 값을 계속 부여해야 합니다. 0 <= z <= w 범위 내의 특성 보간 동작은 변경되지 않은 상태로 유지되어야 합니다.
클립 거리 상호 작용
클립 거리는 일반 래스터화 모드를 사용할 때 유효하며, 일반 래스터화가 적용된 모든 샘플에서 활성화되지 않은 경우처럼 보수적으로 래스터화된 픽셀에 대해 동작합니다.
보수적인 래스터화는 W 꼭짓점 좌표를 추정하여 W <= 0을 발생시킬 수 있습니다. 이로 인해 픽셀당 클립 거리 구현이 원근을 잘못된 W 값으로 나눈 클립 거리에서 작동할 수 있습니다. 클립 거리 구현은 꼭짓점 좌표 W <= 0(예: 일반 래스터화 모드의 경우 외삽으로 인해)인 픽셀에 대한 래스터화를 호출하지 않도록 보호해야 합니다.
대상 독립 래스터화 상호 작용
일반 래스터화 모드는 TIR(대상 독립 래스터화)과 호환됩니다. TIR 규칙 및 제한이 적용되며, 모든 샘플이 적용되는 것처럼 보수적으로 래스터화된 픽셀에 대해 동작합니다.
IA 기본 토폴로지 상호 작용
일반 래스터화는 선 또는 점 기본 형식에 대해 정의되지 않습니다. 따라서 점 또는 선을 지정하는 기본 토폴로지는 일반 래스터화를 사용할 때 래스터라이저 단위에 공급되는 경우 정의되지 않은 동작을 생성합니다.
디버그 계층 유효성 검사는 애플리케이션이 이러한 기본 토폴로지 사용을 확인하지 않는지 확인합니다.
쿼리 상호 작용
보수적으로 래스터화된 픽셀의 경우 쿼리는 모든 샘플을 다룰 때 일반 래스터화를 사용하도록 설정하지 않을 때와 마찬가지로 작동합니다. 예를 들어 보수적으로 래스터화된 픽셀의 경우 D3D12_QUERY_TYPE_OCCLUSION 및 D3D12_QUERY_TYPE_PIPELINE_STATISTICS(D3D12_QUERY_TYPE)은 모든 샘플을 다룰 때 보수적 래스터화를 사용하도록 설정하지 않을 때와 마찬가지로 동작해야 합니다.
픽셀 셰이더 호출은 보수적 래스터화 모드에서 보수적으로 래스터화된 모든 픽셀에 대해 증가해야 합니다.
컬 상태 상호 작용
모든 컬 상태는 보수적 래스터화 모드에서 유효하며, 일반 래스터화를 사용하도록 설정하지 않은 경우와 동일한 규칙을 따릅니다.
해상도 간에 보수적 래스터화를 자체적으로 비교하거나 보수적 래스터화를 사용하도록 설정하지 않은 경우 일부 기본 형식이 일치하지 않는 얼굴(즉, 한 쪽 후면, 다른 앞면)을 가질 가능성이 있습니다. 애플리케이션은 D3D12_CULL_MODED3D12_CULL_MODE_NONE 사용하고 IsFrontFace
시스템 생성 값을 사용하지 않음으로써 이러한 불확실성을 방지할 수 있습니다.
IsFrontFace 상호 작용
IsFrontFace
시스템 생성 값은 보수적 래스터화 모드에서 사용할 수 있으며, 일반 래스터화를 사용하도록 설정하지 않은 경우 정의된 동작을 따릅니다.
채우기 모드 상호 작용
일반 래스터화에 사용할 수 있는 유일한 D3D12_FILL_MODE D3D12_FILL_SOLID 다른 채우기 모드는 래스터라이저 상태에 대한 잘못된 매개 변수입니다.
이는 D3D12 기능 사양이 와이어프레임 채우기 모드가 삼각형 가장자리를 선으로 변환하고 선 래스터화 규칙을 따라야 하며 보수적인 선 래스터화 동작이 정의되지 않았기 때문입니다.
구현 세부 정보
Direct3D 12에서 지원되는 래스터화 유형을 "과대 평가된 보수적 래스터화"라고도 합니다. "과소 평가된 보수적 래스터화"라는 개념도 있습니다. 즉, 렌더링된 기본 형식으로 완전히 덮인 픽셀만 래스터화됩니다. 과소 평가된 보수적 래스터화 정보는 입력 검사 데이터를 사용하여 픽셀 셰이더를 통해 사용할 수 있으며, 과대 평가된 보수적 래스터화만 래스터화 모드로 사용할 수 있습니다.
기본 형식의 일부가 픽셀과 겹치면 해당 픽셀이 적용된 것으로 간주되어 래스터화됩니다. 기본 형식의 가장자리 또는 모서리가 픽셀의 가장자리 또는 모서리를 따라 떨어지는 경우 "왼쪽 위 규칙"의 적용은 구현에 따라 다릅니다. 그러나 퇴행성 삼각형을 지원하는 구현의 경우 가장자리 또는 모서리를 따라 퇴행성 삼각형이 하나 이상의 픽셀을 포함해야 합니다.
보수적인 래스터화 구현은 하드웨어마다 다를 수 있으며 가양성이 생성되므로 픽셀이 적용되도록 잘못 결정할 수 있습니다. 이는 래스터화에 사용되는 고정 소수점 꼭짓점 좌표에 내재된 기본 증가 또는 맞춤 오류와 같은 구현별 세부 정보 때문에 발생할 수 있습니다. 가양성(고정점 꼭짓점 좌표와 관련하여)이 유효한 이유는 구현이 부동 소수점에서 래스터라이저에 사용된 16.8 고정 지점으로 변환된 꼭짓점 좌표(즉, 부동 소수점에서 래스터라이저에 사용된 16.8 고정점으로 변환된 꼭짓점 좌표)에 대해 검사 평가를 수행할 수 있도록 하기 위해 어느 정도의 가양성을 사용해야 하지만 원래 부동 소수점 꼭짓점 좌표에 의해 생성된 적용 범위를 적용하기 때문입니다.
일반 래스터화 구현은 비제일 포스트 스냅 기본 형식의 부동 소수점 꼭짓점 좌표와 관련하여 가음성이 생성되지 않습니다. 기본 형식의 일부가 픽셀의 일부와 겹치면 해당 픽셀이 래스터화됩니다.
퇴화되거나(인덱스 버퍼 또는 3D의 collinear에서 중복 인덱스) 고정 소수점 변환 후 퇴화되는 삼각형(래스터라이저의 선형 꼭짓점)은 컬링될 수도 있고 그렇지 않을 수도 있습니다. 둘 다 유효한 동작입니다. 퇴화 삼각형은 후면 연결로 간주되어야 하므로 애플리케이션에서 특정 동작이 필요한 경우 앞면에 대해 백페이스 컬링 또는 테스트를 사용할 수 있습니다. 퇴화 삼각형은 보간된 모든 값에 대해 꼭짓점 0에 할당된 값을 사용합니다.
하드웨어에서 이 기능을 지원하지 않을 가능성 외에도 세 가지 하드웨어 지원 계층이 있습니다.
- 계층 1은 최대 1/2픽셀의 불확실성 영역을 적용하며 스냅 후 퇴행을 지원하지 않습니다. 타일 렌더링, 텍스처 아틀라스, 라이트 맵 생성 및 하위 픽셀 섀도 맵에 적합합니다.
- 계층 2는 최대 불확실성 영역을 1/256으로 줄이고 스냅 후 퇴화가 제거되지 않도록 요구합니다. 이 계층은 CPU 기반 알고리즘 가속(예: 복셀화)에 유용합니다.
- 계층 3은 최대 1/256의 불확실성 영역을 유지하고 내부 입력 범위에 대한 지원을 추가합니다. 내부 입력 범위는 HLSL(High Level Shading Language)에
SV_InnerCoverage
새 값을 추가합니다. 픽셀 셰이더에 대한 입력에 지정할 수 있는 32비트 스칼라 정수이며, 과소 평가된 보수적 래스터화 정보(즉, 픽셀이 보장되는지 여부-to-be-완전히 덮인 정보)를 나타냅니다. 이 계층은 폐색 컬링에 유용합니다.
API 요약
다음 메서드, 구조체, 열거형 및 도우미 클래스는 일반 래스터화를 참조합니다.
- D3D12_RASTERIZER_DESC: 래스터라이저 설명을 포함하는 구조체입니다.
- D3D12_CONSERVATIVE_RASTERIZATION_MODE: 모드에 대한 열거형 값(켜기 또는 끄기)입니다.
- D3D12_FEATURE_DATA_D3D12_OPTIONS: 지원 계층을 보유하는 구조체입니다.
- D3D12_CONSERVATIVE_RASTERIZATION_TIER: 하드웨어에서 지원하는 각 계층의 값을 열거합니다.
- CheckFeatureSupport: 지원되는 기능에 액세스하는 방법입니다.
- CD3DX12_RASTERIZER_DESC: 래스터라이저 설명을 만들기 위한 도우미 클래스입니다.
관련 항목