如果 pred - ps

如果 bool - ps...else - ps...endif - ps 块,条件取自谓词寄存器的内容。

语法

如果 [!]pred.replicateSwizzle

 

其中:

  • [!]是可选的 NOT 修饰符。 这会修改谓词寄存器中的值。
  • pred 是 谓词寄存器
  • replicateSwizzle 是一个组件, (复制或复制到) (重排) 的所有四个组件。 有效组件为:[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 - psendif - ps 指令结束。

具体限制包括:

if_pred块可以嵌套。 这计入总动态嵌套深度以及 if_comp 块。

if_pred块不能跨循环块;它要么完全位于它内部,要么环绕它。

像素着色器说明