vector4 slerp(vector4 q1, vector4 q2, float bias)
biasに基づいてq1とq2のクォータニオンをブレンドします。
vector4 slerp(vector4 qs[], float weights[], int normalize=0)
指定したウェイトを使って、いくつものクォータニオンをブレンドします。
slerp(q1,q2,bias)
は、slerp(array(q1,q2), array(1.0-bias,bias))
と等価です。
デフォルトでは、ウェイトは正規化されていることを前提にしています。 ウェイトが正規化されていない場合、normalizeパラメータに1を渡すことで、補間の前にウェイトを正規化することができます。 1を渡さなかった場合は予期しない結果が返されます。
matrix3 slerp(matrix3 m1, matrix3 m2, float bias)
matrix slerp(matrix m1, matrix m2, float bias)
matrixのm1とm2の間でbiasに基づいてブレンドします。
matrix3 slerp(matrix3 ms[], float weights[], int normalize=1)
matrix slerp(matrix ms[], float weights[], int normalize=1)
複数のマトリックス間をそれらに呼応したウェイトを使って、Polar Decomposition(極分解)によるコンポーネントのブレンド処理を介してブレンドします。
デフォルトでは、ウェイトはブレンド前に正規化されます。 ウェイトが既に正規化されているのであれば、normalizeパラメータに0を渡しても良いでしょう。
See also | |
interp | |
quaternion |