문제

Direct3D에서 픽셀 셰이더를 실행할 때 MaxTextUreePeat에 의해 부과 된 텍스처 좌표에 대한 제한은 Tex2d ()와 같은 텍스처 조회 기능을 호출하는 동안 만 문제가되거나 텍스처 좌표가 셰이더 내에서 액세스 할 때 언제든지 작동합니까?

텍스처 조회 기능에 전달하기 전에 텍스처 좌표에서 frac ()와 같은 것을 호출하여 MaxTextUreePeat 제한을 피할 수 있는지 알고 싶습니다.

도움이 되었습니까?

해결책

텍스처 좌표는 기본 보간기 정밀도에 있습니다. 픽셀 셰이더 2.0 능력 하드웨어에서는 24 비트 플로팅 포인트 (또는 아마도 32 비트, 확실하지 않음)입니다. 내부적으로 픽셀 셰이더의 계산은 24 비트 플로팅 포인트 여야합니다. 대부분의 최신 GPU는 32 비트 부동 소수점 정밀도로 실행됩니다.

MaxTextUreEpeat는 텍스처 샘플링 하드웨어의 기능입니다.

그렇습니다. 플로팅 포인트 정밀 제한에 빠지지 않으면 샘플링 전에 범위를 제한하는 것은 텍스처 반복 한계를 피하는 한 가지 방법입니다.

그러나 FRAC가 0에서 1으로 전환되는 경우 큰 구배가 발생하므로 GPU는 매우 낮은 해상도 MIP 레벨을 사용하려고합니다. 물론 상황에 따라 문제가되지 않을 수 있습니다. 그러나 그것은 잠재적 인 문제의 한 지점입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top