D3DXQuaternionSquad
球状平方補間を使用して、クオータニオン間を補間します。
D3DXQUATERNION *
D3DXQuaternionSquad(
D3DXQUATERNION * pOut,
CONST D3DXQUATERNION * pQ1,
CONST D3DXQUATERNION * pA,
CONST D3DXQUATERNION * pB,
CONST D3DXQUATERNION * pC,
FLOAT t
);
パラメータ
- pOut
処理の結果を表す D3DXQUATERNION 構造体へのポインターです。 - pQ1
演算対象の D3DXQUATERNION 構造体へのポインターです。 - pA
演算対象の D3DXQUATERNION 構造体へのポインターです。 - pB
演算対象の D3DXQUATERNION 構造体へのポインターです。 - pC
演算対象の D3DXQUATERNION 構造体へのポインターです。 - t
クオータニオン間で補間する範囲を指定するパラメーターです。
戻り値
球状平方補間の結果を表す D3DXQUATERNION 構造体へのポインターです。
解説
この関数は、次の球状線形補間演算を使用します。
Slerp(Slerp(pQ1, pC, t), Slerp(pA, pB, t), 2t(1 - t))
この関数の戻り値は、pOut パラメーターに返される値と同じです。このため、D3DXQuaternionSquad 関数は他の関数のパラメーターとして使用できます。
クオータニオン間の球状平方補間の例については、「SkinnedMesh サンプル」を参照してください。
まだ正規化されていない入力クオータニオンに対しては、すべて D3DXQuaternionNormalize 関数を使用します。
要件
ヘッダー: D3dx9math.h 宣言
ライブラリ: D3dx9.lib 内容
関連項目
D3DXQuaternionExp, D3DXQuaternionLn, D3DXQuaternionSquadSetup