D3DXSHEvalDirection 関数 (D3dx9math.h)
Note
D3DX (D3DX 9、D3DX 10、D3DX 11) ユーティリティ ライブラリは非推奨であり、Windows ストア アプリではサポートされていません。
Note
この関数を使用する代わりに、 球面調和演算 ライブラリ関数 XMSHEvalDirection を使用することをお勧めします。
入力方向ベクトルから球面調和(SH)基底関数を評価します。
構文
FLOAT* D3DXSHEvalDirection(
_Out_ FLOAT *pOut,
_In_ UINT Order,
_In_ const D3DXVECTOR3 *pDir
);
パラメーター
-
pOut [out]
-
型: FLOAT*
球面調和 (SH) 出力係数へのポインター。 この評価では、Order² 係数が生成されます。 「解説」を参照してください。
-
順序 [入力]
-
型: UINT
SH評価の順序。 D3DXSH_MAXORDERまでのD3DXSH_MINORDERの範囲内である必要があります(両端を含む)。 この評価では、Order² 係数が生成されます。 評価の次数は Order - 1 です。
-
pDir [in]
-
型: const D3DXVECTOR3*
(x、y、z)SH基底関数を評価する方向ベクトル。 正規化する必要があります。 「解説」を参照してください。
戻り値
型: FLOAT*
SH 出力係数へのポインター。 「解説」を参照してください。
Remarks
基底関数 Ylm の各係数は、メモリ位置 l² + m + l に格納されます。ここで、
- l は基底関数の次数です。
- m は、指定された l 値の基底関数インデックスであり、-l から l までの範囲 (両端を含む) です。
次の図に示すように、単位半径を持つ球体では、方向は ta、 右利き方向の z 軸を中心とした角度、φ は z からの角度で指定できます。
次の式は、単位球上のデカルト (x, y, z) と球形 (θ, phi) 座標の関係を示しています。 角度θは 0 ~ 2 pi の範囲で変化し、phi は 0 から pi の範囲で変化します。
要件
要件 | 値 |
---|---|
ヘッダー |
|
ライブラリ |
|
関連項目