pred の場合 - ps
if bool - ps... の先頭else - ps...endif - ps ブロック。述語レジスタの内容から取得された条件が含まれます。
構文
if [!]pred.replicateSwizzle |
---|
この場合、
- [!]は省略可能な NOT 修飾子です。 これにより、述語レジスタの値が変更されます。
- pred は 述語レジスタです。
- replicateSwizzle は、4 つのコンポーネント (swizzled) すべてにコピー (またはレプリケート) される 1 つのコンポーネントです。 有効なコンポーネントは、[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 ブロックはループ ブロックをまたがることができません。それは完全に内部にあるか、それを囲む必要があります。
関連トピック