D3DXMatrixShadow 関数
D3DXMatrixShadow 関数
ジオメトリを平面に射影する行列を作成する。
構文
D3DXMATRIX *D3DXMatrixShadow(
D3DXMATRIX *pOut,
CONST D3DXVECTOR4 *pLight,
CONST D3DXPLANE *pPlane
);
パラメータ
- pOut
[in, out] 演算結果である D3DXMATRIX 構造体へのポインタ。 - pLight
[in] ライトの位置を記述した D3DXVECTOR4 構造体へのポインタ。 - pPlane
[in] 処理の基になる D3DXPLANE 構造体へのポインタ。
戻り値
ジオメトリを平面に射影する D3DXMATRIX 構造体へのポインタ。
注意
D3DXMatrixShadow 関数は、ライトから影を射影するように、ジオメトリを平面に射影する。
この関数の戻り値は、pOut パラメータの戻り値と同じである。したがって、D3DXMatrixShadow 関数を別の関数の引数として使える。
この関数が返す行列は、次の公式を使って計算する。
P = normalize(Plane);
L = Light;
d = dot(P, L)
P.a * L.x + d P.a * L.y P.a * L.z P.a * L.w
P.b * L.x P.b * L.y + d P.b * L.z P.b * L.w
P.c * L.x P.c * L.y P.c * L.z + d P.c * L.w
P.d * L.x P.d * L.y P.d * L.z P.d * L.w + d
ライトの w 成分が 0 の場合、原点からのディレクショナル ライトを表す。1 の場合、ライトはポイント ライトである。
関数の情報
ヘッダー | d3dx9math.h |
インポート ライブラリ | d3dx9.lib |
最低限のオペレーティング システム | Windows 98 |