if pred - ps

조건자 레지스터의 내용에서 가져온 조건이 포함된 if bool - ps...else - ps...endif - ps 블록의 시작입니다.

Syntax

if [!]pred.replicateSwizzle

 

여기서

  • [!]는 선택적 NOT 한정자입니다. 이렇게 하면 조건자 레지스터의 값이 수정됩니다.
  • pred는 조건자 레지스터입니다.
  • replicateSwizzle은 네 가지 성분(swizzled) 모두에 복사(또는 복제)되는 단일 성분입니다. 유효한 성분은 [x, y, z, w] 또는 [r, g, b, a]입니다.

설명

픽셀 셰이더 버전 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
if_pred x x x x

 

이 명령은 조건자 레지스터의 채널을 기반으로 코드 블록을 건너뛰는 데 사용됩니다. 각 if_pred 블록은 else - ps 또는 endif - ps 명령으로 끝나야 합니다.

제한 사항은 다음과 같습니다.

if_pred 블록은 중첩될 수 있습니다. 이는 if_comp 블록과 함께 총 동적 중첩 깊이에 포함됩니다.

if_pred 블록은 루프 블록에 걸칠 수 없습니다. 완전히 내부에 있거나 둘러싸야 합니다.

픽셀 셰이더 명령