共用方式為


cmp - ps

如果 src0 = 0 > ,請選擇 src1。 否則,請選擇 src2。 每個通道會進行比較。

Syntax

cmp dst、src0、src1、src2

 

where

  • 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 版有一些額外的限制:

  • 每個著色器最多可以使用三個 cmp 指令。
  • 目的地暫存器不能與任何來源暫存器相同。

此範例會進行四通道比較。

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

圖元著色器指示