ps_2_x
프로그래밍 가능한 픽셀 셰이더는 픽셀 데이터에서 작동하는 일련의 명령으로 구성됩니다. 레지스터는 ALU 내/외부로 데이터를 전송합니다. 명령, 결과 또는 기록되는 데이터를 수정하기 위해 추가 컨트롤을 적용할 수 있습니다.
- ps_2_x 명령에는 사용 가능한 명령 목록이 포함되어 있습니다.
- ps_2_x 레지스터는 꼭짓점 셰이더 ALU에서 사용하는 다양한 형식의 레지스터를 나열합니다.
- 한정자는 명령이 작동하는 방식을 수정하는 데 사용됩니다.
- 대상 레지스터 쓰기 마스크는 대상 레지스터의 어떤 구성 요소가 기록되는지 결정합니다.
- 픽셀 셰이더 원본 레지스터 한정자는 명령이 실행되기 전에 원본 레지스터 데이터를 변경합니다.
- 원본 레지스터 혼합을 통해 어떤 레지스터 구성 요소를 읽고 복사하거나 쓸지 추가로 제어할 수 있습니다.
동적 흐름 제어
DynamicFlowControlDepth는 동적 흐름 제어 명령의 중첩 깊이를 나타냅니다. if, if_comp, if_pred, break - ps 및 break_comp - ps. 이 값은 if_comp 블록의 중첩 깊이와 같습니다. 이 제한이 0이면 디바이스가 동적 흐름 제어 명령을 지원하지 않습니다.
임시 레지스터 수
디바이스에서 지원하는 임시 레지스터의 수입니다. 범위는 12~32입니다.
정적 흐름 제어 중첩 깊이
StaticFlowControlDepth는 다음 두 가지 유형의 정적 흐름 제어 명령의 중첩 깊이를 나타냅니다. loop /rep 및 call /callnz. loop /rep 명령은 최대 StaticFlowControlDepth 깊이까지 중첩될 수 있습니다. 독립적으로 /callnz 명령 호출은 최대 StaticFlowControlDepth 깊이까지 중첩될 수 있습니다.
명령 슬롯 수
명령 슬롯 수는 96개에서 최대 512개까지 다양할 수 있으며 MaxPixelShaderInstructionSlots로 지정됩니다. 실행할 수 있는 총 명령 수는 MaxPixelShaderInstructionsExecuted로 정의됩니다. 이 수는 루핑 및 서브루틴 호출로 인한 명령 슬롯 수보다 클 수 있습니다.
임의 스위즐
D3DD3DPSHADERCAPS2_0_ARBITRARYSWIZZLE이 설정되면 임의 스위즐이 지원됩니다. 원본 레지스터 Swizzling을 참조하세요.
그라데이션 명령
D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS 이 설정되면 그라데이션 명령이 지원됩니다. dsx - ps, dsy - ps 및 texldd - ps를 참조하세요.
술어
D3DD3DPSHADERCAPS2_0_PREDICATION이 설정되면 명령 조건자가 지원됩니다. 조건자 레지스터를 참조하세요.
종속 읽기 제한
D3DD3DPSHADERCAPS2_0_NODEPENDENTREADLIMIT가 설정된 경우 종속 읽기 제한이 없습니다.
텍스처 명령 제한
D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMIT가 설정된 경우 텍스처 지침에는 제한이 없습니다.
샘플러 개수
사용 가능한 텍스처 샘플러의 수는 16개입니다.
관련 항목