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