次の方法で共有


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

頂点シェーダーの手順

else - vs

endif - vs