ps_2_x
プログラム可能なピクセル シェーダーは、ピクセル データに対して動作する一連の命令で構成されます。 ALU との間でデータの転送を登録します。 追加のコントロールを適用して、命令、結果、または書き込まれるデータを変更できます。
- ps_2_x命令 には、使用可能な手順の一覧が含まれています。
- ps_2_x レジスタには、 頂点シェーダー ALU で使用されるさまざまな種類のレジスタが一覧表示されます。
- 修飾子 命令の動作方法を変更するために使用されます。
- 宛先レジスタ書き込みマスク は、書き込まれる宛先レジスタのコンポーネントを決定します。
- ピクセル シェーダー ソース レジスタ修飾子は、 命令を実行する前にソース レジスタ データを変更します。
- ソース レジスタ Swizzling を使用すると、読み取り、コピー、または書き込みされるレジスタ コンポーネントを追加で制御できます。
動的フロー制御
DynamicFlowControlDepth は、動的フロー制御命令の入れ子の深さを表します。 if、 if_comp、 if_pred、 break - ps、 および break_comp - ps。 値は、if_comp ブロックの入れ子の深さと同じです。 この上限が 0 の場合、デバイスは動的フロー制御命令をサポートしません。
一時レジスタの数
デバイスでサポートされている一時レジスタの数。 範囲は 12 から 32 です。
静的フロー制御の入れ子の深さ
StaticFlowControlDepth は、 ループ /rep と call /callnz という 2 種類の静的フロー制御命令の入れ子の深さを表します。 ループ /rep 命令は、 StaticFlowControlDepth の深さまで入れ子にすることができます。 個別に、/callnz 命令を StaticFlowControlDepth まで入れ子にすることができます。
命令スロットの数
命令スロットの数は、96 から最大 512 の範囲で指定でき、 MaxPixelShaderInstructionSlots によって指定されます。 実行できる命令の合計数は、 MaxPixelShaderInstructionsExecuted によって定義されます。 これは、ループ呼び出しとサブルーチン呼び出しにより、命令スロットの数よりも大きくなる可能性があります。
任意のスウィズル
D3DD3DPSHADERCAPS2_0_ARBITRARYSWIZZLEが設定されている場合は、任意のスウィズルがサポートされます。 ソース レジスタのスウィズリングに関するページを参照してください。
グラデーション命令
D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONSが設定されている場合は、グラデーション命令がサポートされます。 「dsx - ps、dsy - ps、および texldd - ps」を参照してください。
プレディケーション
D3DD3DPSHADERCAPS2_0_PREDICATIONが設定されている場合は、命令の割り当てがサポートされます。 述語の登録に関するページを参照してください。
依存読み取り制限
D3DD3DPSHADERCAPS2_0_NODEPENDENTREADLIMITが設定されている場合、依存読み取り制限はありません。
テクスチャ命令の制限
D3DD3DPSHADERCAPS2_0_NOTEXINSTRUCTIONLIMITが設定されている場合、テクスチャの指示に制限はありません。
サンプラー数
使用可能なテクスチャ サンプラーの数は 16 です。
関連トピック