ユーザがオブジェクトの回転をキーフレーム化すると、Maya はあるキーから次のキーへの回転値を補間して、キー間のオブジェクトの方向を計算します。Maya では、オイラーとクォータニオンという 2 つの回転補間方法を使用できます。回転補間方法は、シーン内でアニメートされた回転ごとに指定できます。アニメートしたオブジェクト向けに回転補間方法を選択すると、Maya がどのように回転を計算するかが決まります。オイラー角とクォータニオンの詳細については、オイラー角、クォータニオン、アニメートされた回転に適した補間タイプを参照してください。
特に指定がないかぎり、既定の回転補間方法はオイラー回転となります。ウィンドウ > 設定/プリファレンス >プリファレンス(Window > Settings/Preferences > Preferences)を開くと、プリファレンス(Preferences)ウィンドウが開き、設定(Settings)カテゴリのアニメーション(Animation)セクションに新規カーブの既定の回転補間オプションがあります。既存の回転カーブの回転補間オプションはグラフ エディタ(Graph Editor)にあります。カーブの回転補間を設定するを参照してください。
ユーザがオイラー方法でオブジェクトのアニメートされた回転を補間すると、Maya はオイラー角によって、時間の経過に伴うオブジェクトの軸固有の方向を決定します。オイラー回転は、X、Y、Z 軸を中心とした回転を表す 3 つの角度と回転順序によって計算されます。
回転順序は、アニメートしたオブジェクトを X、Y、Z 軸を中心に回転させる順序を指定します。アニメートしたオブジェクトの回転順序を変更すると、最終的な方向が変更されます。オブジェクトの回転順序は、回転順序(Rotate Order)アトリビュートを設定することで指定できます。たとえば、アニメートしたオブジェクトの回転順序(Rotate Order)を YZX に設定すると、そのオブジェクトはまず Y 軸で回転された後、Z 軸で回転され、最後に X 軸で回転されます。回転順序(Rotate Order)アトリビュートを使用すると、読み込んだアニメート オブジェクトを読み込み元の 3D ソフトウェア パッケージの座標系に合わせることができます(たとえば、Maya の既定の XYZ を XZY に変更することができます)。読み込んだオブジェクトのアニメートされた回転を自分が意図したとおりに表現するためには、この機能が重要になります。
Maya の既定の回転補間方法はオイラーです。
Maya には、独立と同期化の 2 種類のオイラー回転補間が用意されています。カーブのオイラー回転補間の種類は、グラフ エディタ(Graph Editor)で設定できます。回転補間の変更(Change Rotation Interp)を参照してください。
独立オイラー(Independent Euler)カーブの場合、補間は隣の回転カーブからは独立して、個々のカーブのキー間で計算されます。単一の回転チャネルをキーフレーム化する場合や単一の回転カーブに追加のキーフレーム(つまりディテール)を追加する必要がある場合には、独立オイラー(Independent Euler)カーブを使用します。独立オイラー(Independent Euler) カーブは、アニメートされた単純な回転にとって理想的なカーブです。
同期化オイラー(Synchronized Euler)カーブのキーフレームはすべて一度にロックされます。つまり、オブジェクトに同期化オイラー(Synchronized Euler)回転カーブが含まれる場合、補間はそのすべての回転カーブのキー間で同時に計算されます。複数の回転チャネル(X、Y、Z)をキーフレーム化する場合やアニメートしたオブジェクトのすべての回転カーブに追加のキーフレーム(つまりディテール)を追加する必要がある場合は、同期化オイラー(Synchronized Euler)カーブを使用します。同期化オイラー(Synchronized Euler) カーブは、アニメートされたより複雑な回転にとって理想的なカーブです。
独立オイラー(Independent Euler)カーブと同期化オイラー(Synchronized Euler)カーブは主に、キーフレーム(Keyframes)が異なります。たとえば、独立オイラー(Independent Euler)回転 X (Rotate X)カーブ上のキーを適切なタイミングで移動しても、回転 X カーブ上のキーしか移動しませんが、同期化オイラー回転 X (Synchronized Euler)カーブ上のキーを適切なタイミングで移動すると、Y カーブと Z カーブ上の対応するキーも移動します。同様に、アニメートしたオブジェクトの回転 X (Rotate X)チャネルにのみキーを設定し、回転補間タイプを独立オイラー(Independent Euler)に設定すると、キー設定されるのは回転 X チャネルのみです。一方、回転補間タイプを同期化オイラー(Synchronized Euler)に設定している場合は、3 つの回転(Rotate)チャネル( X、Y、Z )すべてにキー設定が行われます。
オイラー角を使用してオブジェクトのアニメートされた回転を補間する場合、個々の軸でのオブジェクトの方向は 1 本ずつ一度にチェックされます。このため、オイラー角による回転ではジンバル ロックや反転などのアーティファクトが発生しやすくなります。ジンバル ロックは、単一の軸での回転により補足的な軸で意図しない回転が発生したり、軸が偶然一致した場合に発生します。反転は、キーフレーム間のオイラー角による回転補間で角度が正または負の方向に 180° 回り込んだ場合に発生します。
ジンバル ロックや反転が発生した場合は、オイラー フィルタ(Euler Filter)を使用して動作を修正できることもあります。たとえば、オイラー フィルタ(Euler Filter)を使用して、壊れたモーション キャプチャのアニメーション データから不連続な回転カーブを正規化することができます。オイラー フィルタ(Euler Filter)には、グラフ エディタ(Graph Editor)またはドープシート(Dope Sheet)のカーブ(Curves)メニューからアクセスすることができます。オイラー フィルタ(Euler filter)の詳細については、オイラー角度のフィルタ処理とfilterCurveを参照してください。
オイラー回転補間は、回転の数値を具体的に制御する場合や、回転カーブの接線をスムーズする場合に使用します。グラフ エディタ(Graph Editor)で広く回転アニメーション カーブを操作する場合は、大部分の場合、オイラー回転補間しか使用できません。オイラー カーブはクォータニオン カーブと違ってすべての接線タイプをサポートしており、オイラー カーブのキーには、カーブを簡単に微調整できる接線ハンドルが存在します。
クォータニオンはアニメートされた回転をスムーズに補間し、オイラー角と比べると常にキーフレーム間に最も効率的なパスを作成します。クォータニオンは、個々の回転のまとまりではなくオブジェクトの全体的な方向を格納します。つまり、単一のクォータニオンで 3 つのオイラー角と同じ量の回転データを格納できることになります。クォータニオンは方向を表す値だけを格納するため、ある方向から別の方向への最短の回転を計算するために使用できます。
同期化クォータニオン(Synchronized Quaternions)によってオブジェクトの回転をアニメートする場合、Maya はまずオブジェクトのキー設定された方向値をオイラー角として格納し、補間するためにクォータニオンに変換した後、チャネル ボックス(Channel Box)やグラフ エディタ(Graph Editor)で表示するために補間したクォータニオン回転値をオイラー角に再変換します。
Maya では、クォータニオンは同期化オイラー(Euler)カーブと値として表示されます。オブジェクトの回転カーブを同期化すると、回転(Rotate)X、Y、Z カーブのキーフレームが一度にロックされます。カーブ オブジェクトの回転カーブの 1 つのキーフレームを追加、削除、または移動すると、関連する回転カーブ上の対応するキーも更新されます。そのため、軸の 1 つからキーフレームを削除するときやキーを適切なタイミングで個別に移動したときに起こりうる、補間に関する予想外の問題の発生を抑えることができます。
クォータニオン カーブの接線設定は、オブジェクトのアニメートされた回転の補間方法に作用します。接線タイプの詳細については、グラフ エディタ(Graph Editor)の接線(Tangents)メニューを参照してください。Maya は、あるキーと次のキーの最短の回転を計算するために、次の種類の接線と補間を使用します。
クランプ接線を持つクォータニオン カーブの場合、Maya ではステップ補間が使用されます。リニア接線を持つクォータニオン カーブの場合は、Maya では球面リニア補間(SLERP とも呼ばれまる)を使用して、1 つのキーから次のキーまでの最短の回転を計算し、キー間に急激なトランジションを生成します。スプライン接線を持つクォータニオン カーブの場合は、Maya では三次補間を使用して 1 つのキーから次のキーまでの最短の回転を計算し、キー間にスムーズなトランジションを生成します。
Maya ®Trax™ エディタ(Editor)でアニメーション クリップをブレンドするときは、クォータニオン回転補間を最短クォータニオン(Quaternion Shortest)か最長クォータニオン(Quaternion Longest)のいずれかに設定します。最短クォータニオン(Quaternion Shortest)補間では、クォータニオン補間を使用して、あるクリップから次のクリップへの回転の最短パスを決定します。最長クォータニオン(Quaternion Longest)補間では、クォータニオン補間を使用して、あるクリップから次のクリップへの回転の最長パスを決定します。このパスは、最短クォータニオン(Quaternion Shortest)と反対方向になります。
アトリビュート エディタ(Attribute Editor)でクリップ ブレンドのクォータニオン回転補間タイプを指定するには、ブレンドの回転ブレンド(Rotation Blend)アトリビュートを設定します。
2 つのキー間の補間をスムーズするには、クォータニオンを使用します。クォータニオンは最も効率的な補間パスを作成し、ジンバル ロックや反転などのアーティファクトは生成しません。
回転補間の各方法には利点と欠点があります。アニメーションに最適な補間タイプの選択はユーザに任されています。オイラー回転補間を使用する必要がある場合とクォータニオンを使用する場合を参照してください。
オイラー角 | クォータニオン | |
---|---|---|
利点 |
|
|
欠点 |
|
|
オブジェクトの回転がクォータニオンの場合もオイラー角の場合も、チャネル ボックスには常にオイラー角の値が表示されます。