Share via


while ステートメント

条件式が失敗するまでステートメント ブロックを実行します。

[Attribute] while ( Conditional ) { Statement Block; }

パラメーター

属性

ステートメントのコンパイル方法を制御する省略可能なパラメーター。

属性 説明
unroll(x) ループの実行が停止するまで、ループの登録を解除します。 必要に応じて、ループを実行できる最大回数を指定できます。
loop コンパイルされたシェーダーでフロー制御ステートメントを使用します。ループの登録を解除しないでください。
fastopt コンパイル時間を短縮しますが、よりアグレッシブな最適化が生成されます。 この属性を使用する場合、コンパイラはループの登録を解除しません。
この属性は、 中断 命令をサポートするシェーダー モデル ターゲットにのみ影響します。 この属性は、シェーダー モデル vs_2_x および シェーダー モデル 3 以降で使用できます。 これは、コンパイラがループをコンパイルするときに 、シェーダー モデル 4 以降で特に便利です。 コンパイラは既定でループをシミュレートして、ループの登録を解除できるかどうかを評価します。 コンパイラでループの登録を解除しない場合は、この属性を使用してコンパイル時間を短縮します。
allow_uav_condition UAV 読み取りの基になるコンピューティング シェーダー ループ終了条件を許可します。 ループに同期組み込みを含めてはなりません。

条件 付き

条件 。 式が true と評価された場合、ステートメント ブロックが実行されます。 式が false と評価されると、ループは終了します。

ステートメント ブロック

1 つ以上の ステートメント

こちらもご覧ください

フロー制御