phase - ps
フェーズ命令は、フェーズ 1 とフェーズ 2 の間の遷移を示します。 フェーズ命令が存在しない場合、シェーダー全体がフェーズ 2 シェーダーであるかのように実行されます。
この命令はバージョン 1_4 にのみ適用されます。
構文
phase
解説
ピクセル シェーダーのバージョン | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
phase | x |
フェーズ命令の前に発生するシェーダー命令は、フェーズ 1 の命令です。 その他の手順はすべてフェーズ 2 の手順です。 命令のフェーズが 2 つあると、シェーダーあたりの命令の最大数が増えます。
相遷移の残念な副作用は、 一時的なレジスタ のアルファ 成分が遷移全体にわたって保持されないことです。 つまり、アルファ コンポーネントはフェーズ命令の後に再初期化する必要があります。
例
この例では、シェーダー内でフェーズ 1 またはフェーズ 2 命令として命令をグループ化する方法を示します。
フェーズ命令は、フェーズ 1 と 2 命令の間の遷移をマークするため、一般にフェーズ マーカーとも呼ばれます。 バージョン 1_4 ピクセル シェーダーでは、フェーズ マーカーが存在しない場合、シェーダーはフェーズ 2 で実行されているかのように実行されます。 フェーズ 1 と 2 の命令とレジスタの可用性には違いがあるため、これは重要です。 相違点については、リファレンス セクション全体で説明します。
ps_1_4
// Add phase 1 instructions here
phase
// Add phase 2 instructions here
関連トピック