texld - ps_1_4
ソース レジスタの内容をテクスチャ座標として使用してサンプリングされたカラー データ (RGBA) を含む宛先レジスタを読み込みます。 サンプリングされたテクスチャは、宛先レジスタ番号に関連付けられたテクスチャです。
texld dst, src |
---|
レジスタ
値 | 説明 | Vn | Cn | テネシー | Rn | ピクセル シェーダーのバージョン |
---|---|---|---|---|---|---|
dst | 宛先レジスタ | x | 1_4 | |||
src | ソース レジスタ | x | 1_4 フェーズ 1 | |||
x | x | 1_4 フェーズ |
ソース レジスタとして r(n) を使用する場合は、シェーダーの前のフェーズで最初の 3 つのコンポーネント (XYZ) が初期化されている必要があります。
レジスタの詳細については、「 ps_1_1__ps_1_2__ps_1_3__ps_1_4レジスタ」を参照してください。
注釈
この命令では、宛先レジスタ番号に関連付けられているテクスチャ ステージ内のテクスチャをサンプリングします。 テクスチャは、ソース レジスタのテクスチャ座標データを使用してサンプリングされます。
texld 命令と texcrd 命令の構文では、テクスチャ レジスタ修飾子を使用した射投影除算のサポートが公開されています。 ピクセル シェーダー バージョン 1.4 では、D3DTTFF_PROJECTED テクスチャ変換フラグは常に無視されます。
texld を使用するための規則:
- texcrd 命令または texld 命令の両方で、個々の t(n) レジスタのすべての読み取りに同じ .xyz または .xyw 修飾子を適用する必要があります。 t(n) レジスタの読み取りで .xyw が使用されている場合は、.xyw_dwを使用して、同じ t(n) レジスタの他の読み取りと混合できます。
- _dzソース修飾子は、r(n) ソース レジスタを持つ texld でのみ有効です (したがって、フェーズ 2 のみ)。
- _dzソース修飾子は、シェーダーごとに 2 回以下で使用できます。
ピクセル シェーダーのバージョン | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
texld | x |
例
texld 命令では、ソース テクスチャ座標データのどのコンポーネントを使用するかを制御できます。 texld に対して許可される構文の完全なセットに従い、有効なすべてのソース レジスタ修飾子、セレクター、および書き込みマスクの組み合わせが含まれます。
texld r(m), t(n).xyz
// Uses xyz from t(n) to sample 1D, 2D, or 3D texture
texld r(m), t(n)
// Same as previous
texld r(m), t(n).xyw
// Uses xyw (skipping z) from t(n) to sample 1D, 2D or 3D texture
texld r(m), t(n)_dw.xyw
// Samples 1D or 2D texture at x/w, y/w from t(n). The result
// is undefined for a cube-map lookup.
texld r(m), r(n).xyz
// Samples 1D, 2D, or 3D texture at xyz from r(m)
// This is possible in the second phase of the shader
texld r(m), r(n)
// Same as previous
texld r(m), r(n)_dz.xyz
// Samples 1D or 2D texture at x/z, y/z from r(m)
// Possible only in second phase
// The result is undefined for a cube-map lookup
texld r(n), r(n)_dz
// Same as previous
関連トピック