サンプラー (Direct3D 9 asm-ps)
サンプラーは、サンプリング ステージを識別するために使用されるピクセル シェーダーの入力擬似レジスタです。 16 ピクセル シェーダー サンプリング ステージ レジスタがあります:s0 から s15。 そのため、1 つのシェーダー パスで最大 16 個のテクスチャ サーフェスを読み取ることができます。 サンプラー レジスタを使用する手順は、texld と texldp です。
サンプラーは、 dcl_samplerType (sm2, sm3 - ps asm) 命令で使用する前に宣言する必要があります。
ピクセル シェーダーのバージョン | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_sw | 2_x | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
サンプラー | x | x | x | x | x |
サンプラーは、直接読み取りまたは書き込みができないため、擬似レジスタです。
サンプリング ユニットはテクスチャ サンプリング ステージに対応し、 SetSamplerState によって提供されるサンプリング固有の状態をカプセル化します。 各サンプラーは、 SetTexture を使用して対応するサンプラーに設定される単一のテクスチャ サーフェスを一意に識別します。 ただし、同じテクスチャ サーフェスを複数のサンプラーで設定できます。
描画時に、テクスチャをレンダー ターゲットとテクスチャとしてステージで同時に設定することはできません。
テクスチャ読み込み命令の唯一の引数としてサンプラーが表示される場合があります: texldl - ps。
ps_3_0では、サンプラーを使用する場合は、 dcl_samplerType (sm2,sm3 - ps asm) 命令を使用してシェーダー プログラムの開始時に宣言する必要があります。
テクスチャ座標に存在するよりも大きい次元のテクスチャのサンプリングは無効です。 テクスチャ座標に存在するよりも小さい寸法のテクスチャをサンプリングすると、追加のテクスチャ座標は無視されます。
関連トピック