다음을 통해 공유


cmp - ps

src0 >= 0인 경우 src1을 선택합니다. 그렇지 않으면 src2를 선택합니다. 비교는 채널별로 수행됩니다.

Syntax

cmp dst, src0, src1, src2

 

라는 설치 관리자 실행 파일에 포함됩니다. 여기서

  • dst는 대상 레지스터입니다.
  • src0은 원본 레지스터입니다.
  • src1은 원본 레지스터입니다.
  • src2는 원본 레지스터입니다.

설명

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

 

버전 1_2 및 1_3에는 몇 가지 추가 제한 사항이 있습니다.

  • 각 셰이더는 최대 3개의 cmp 명령을 사용할 수 있습니다.
  • 대상 레지스터는 원본 레지스터와 같을 수 없습니다.

이 예는 4채널 비교를 수행합니다.

ps_1_4
def c0, -0.6, 0.6, 0, 0.6
def c1  0,0,0,0
def c2  1,1,1,1

mov r1, c1
mov r2, c2

cmp r0, c0, r1, r2   // r0 is assigned 1,0,0,0 based on the following:

// r0.x = c2.x because c0.x < 0
// r0.y = c1.y because c0.y >= 0
// r0.z = c1.z because c0.z >= 0
// r0.w = c1.w because c0.w >= 0

픽셀 셰이더 명령