if bool - vs
if... を開始します。else...endif - vs block。
構文
bool の場合 |
---|
ここで、bool はブールレジスタ番号です。 「 定数ブール型レジスタ」を参照してください。
解説
頂点シェーダーのバージョン | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|
bool の場合 | x | x | x | x | x |
if ステートメント内のソースブール型レジスタが true の場合、if ステートメントと一致する else で囲まれたコードが実行されます。 それ以外の場合は、 else..で囲まれたコード。endif - vs ステートメントが実行されます。 この命令は、1 つの命令スロットを消費します。
ブロックを入れ子にできる場合は 。
if ブロックはループ ブロックをまたがることができません。
例
この命令は、条件付き静的フロー制御を提供します。
defb b2, TRUE
...
if b2
// Instructions to run if b2 is nonzero
else
// Instructions to run otherwise
endif
関連トピック