Microsoft DirectX 8.0 (Visual Basic)

texm3x3tex

最後の 3 × 3 行列乗算の結果を返す。

texm3x3tex   tDest, tSrc0
tDest
処理の結果を保持するデスティネーション レジスタ。
tSrc0
入力引数を指定するテンポラリ ソース レジスタ。

注意

texm3x3tex 命令は、ピクセル シェーダのテクスチャ宣言において実行される 3 × 3 行列乗算処理を表す 3 つの命令の最後のものとして使われる。この命令の結果には、命令を実行した結果生じるトランスフォームされたベクトルが含まれる。この宣言に対する入力引数には、行列の乗算に対する入力を指定しなければならない。このステージに割り当てられたテクスチャ座標は、行列の行として使用される。

3 × 3 行列は、このステージおよび前の 2 つのステージのテクスチャ座標で構成されている。結果として得られる 3 要素ベクトルを使い、このステージで割り当てられているテクスチャ (キューブ テクスチャまたはボリューム テクスチャ) にインデックスを設定して、最終的な色を生成する。前の 2 つのステージからはテクスチャ カラーはサンプリングされず、これらのステージに割り当てられていた演算子はすべて無効になる。

tex t0             ; 標準的な 3 ベクトルとして t0 を定義
texm3x3pad t1, t0  ; 行列の第 1 行の乗算を実行
texm3x3pad t2, t0  ; 行列の第 2 行の乗算を実行
texm3x3tex t3, t0  ; 行列の第 3 行の乗算を実行

dp3 r0, t0, v0     ; v0 を使ってディフューズ ライティング強度を計算

バンプ (通常の) マップはステージ 0 で設定される必要があり、キューブ テクスチャはステージ 3 で設定される必要がある。ステージ 1 または 2 で設定されるテクスチャはいずれも無視される。

設定 0 のテクスチャ座標はバンプ マップに位置する。1、2、および 3 を設定するテクスチャ座標は 3 × 3 行列の行である。

この命令は、このテクスチャ ステージに対応する割り当て済みのテクスチャである無名の入力を取ることに注意すること。