cmp - ps
如果 src0 = 0 >,请选择 src1。 否则,请选择 src2。 比较按通道完成。
语法
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 还有其他一些限制:
- 每个着色器最多可以使用三个 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
相关主题