다음을 통해 공유


상수 부울 레지스터(HLSL PS 참조)

이 레지스터는 정적 흐름 제어 명령에 사용되는 비트의 컬렉션입니다(예: if bool - ps - else - ps - endif - ps). 그 중 16개는 셰이더에 16가지 독립적인 분기 조건이 있을 수 있습니다. defb - ps 또는 SetPixelShaderConstantB를 사용하여 설정할 수 있습니다.

셰이더 상수의 동작이 Direct3D 8과 Direct3D 9 간에 변경되었습니다.

  • Direct3D 9의 경우 defx로 설정된 상수는 셰이더 상수 공간에 값을 할당합니다. defx로 선언된 상수의 수명은 해당 셰이더의 실행으로만 제한됩니다. 반대로 SetXXXShaderConstantX API를 사용하여 설정한 상수는 전역 공간에서 상수를 초기화합니다. 전역 공간의 상수는 SetxxxShaderConstants가 호출될 때까지 로컬 공간(셰이더에 표시됨)에 복사되지 않습니다.
  • Direct3D 8의 경우 defx로 설정된 상수 또는 API 모두 셰이더 상수 공간에 값을 할당합니다. 셰이더가 실행될 때마다 상수를 설정하는 데 사용된 기술에 관계없이 현재 셰이더에서 상수를 사용합니다.
픽셀 셰이더 버전 1_1 1_2 1_3 1_4 2_0 2_sw 2_x 3_0 3_sw
상수 부울 레지스터 x x x

 

레지스터