ギャップの外挿の設定
ギャップの外挿とは、アニメーショントラックの前後にあるギャップのアニメーションデータをアニメーショントラックに近似させる方法です。
アニメーションクリップ間のギャップにアニメーションデータを外挿する主な目的は、アニメーションの異常を避けることです。ギャップがあると、アニメーショントラックにバインドされたゲームオブジェクトによって、ゲームオブジェクトの 2 つの変換の間で (遷移中に) 飛んでしまう、または、ヒューマノイドの異なるポーズの変換の間で飛んでしまう異常が発生します。
各アニメーションクリップには、2 つのギャップ外挿設定があります。 Pre-Extrapolate (前外挿) は、アニメーションクリップ前のギャップでどのようにアニメーションデータが近似されるかを制御します。Post-Extrapolate (後外挿) は、アニメーションクリップ後のギャップでどのようにアニメーションデータが近似されるかを制御します。
デフォルトでは、Pre-Extrapolate と Post-Extrapolate の両方とも Hold (維持) に設定されています。この設定では、アニメーションクリップ前のギャップをクリップの最初のフレームのアニメーションに設定し、アニメーションクリップ後のギャップをクリップの最後のフレームのアニメーションに設定します。アニメーションクリップの前後のアイコンは選択した外挿モードを示しています。
前外挿と後外挿のモードを示すアイコン
アニメーショントラックで 2 つのアニメーションクリップの間にギャップがある場合、左側のクリップの Post-Extrapolate 設定でギャップ外挿を設定します。ギャップの左側のクリップの Post-Extrapolate 設定が None に設定されている場合、右側のクリップの Pre-Extrapolate 設定でギャップ外挿を設定します。アニメーションクリップの前後のアイコンは、ギャップの外挿が、左側のクリップの Post-Extrapolate 設定によるものか、右側のクリップの Pre-Extrapolate 設定によるものかを示します。
1 番上のトラック (赤枠): 左側のクリップの Post-Extrapolate 設定によるギャップ外挿。3 番目のトラック (青枠): 右側のクリップの Pre-Extrapolate 設定によるギャップ外挿
Pre-Extrapolate と Post-Extrapolate のプロパティーを変更するにはアニメーションクリップを選択し、Inspector ウインドウの Animation Extrapolation プロパティーを使用します。
選択したアニメーションクリップの外挿モードの設定には Pre-Extrapolate と Post-Extrapolate を使います
以下のうちの 1 つが true である場合、Pre-Extrapolate プロパティーは非表示です。
- アニメーションクリップの前のギャップは、前のクリップの Post-Extrapolation モードで設定されています。
- アニメーションクリップの前にはギャップはありません。
選択したアニメーションクリップの前のギャップの外挿を以下のオプションのいずれかに設定するには、Pre-Extrapolation プロパティーを使用します。
- None: 前外挿を無効にします。選択したアニメーションクリップ前のギャップで、ゲームオブジェクトはそのシーンのトランスフォーム、ポーズ、状態を使用します。None を選択すると、例えば、シーンとアニメーションクリップのゲームオブジェクトのモーション間にイーズイン (ease-in) を作成する場合などに便利です。詳細は、クリップのイーズインとイーズアウトを参照してください。
- Hold (デフォルト): 選択したアニメーションクリップの前のギャップで、アニメーショントラックにバインドされたゲームオブジェクトは、アニメーションクリップの最初に割り当てられた値を使用します。
- Loop: 選択されたアニメーションクリップの前のギャップで、アニメーショントラックにバインドされたゲームオブジェクトはアニメーション全体を順ループとして、開始から終了までを繰り返します。ループの開始をオフセットするには、Clip In プロパティーを使用します。
- Ping Pong: 選択したアニメーションクリップの前のギャップで、アニメーショントラックにバインドされたゲームオブジェクトはアニメーション全体を順方向 (開始から終了) へ、それから、逆方向 (終了から開始) へと繰り返します。ループの開始をオフセットするには、Clip In プロパティーを使用します。Clip In プロパティーを変更すると、順方向のときはループの開始に、逆方向のときはループの終了に影響します。
- Continue: 選択したアニメーションクリップの前のギャップで、アニメーショントラックにバインドされたゲームオブジェクトは、ソースアセットの設定に基づいてアニメーションを維持、または、ループします。例えば、選択したアニメーションクリップがモーションファイル Recorded(2) をソースアセットとして使用していて Recorded(2) の設定が Loop の場合は、Continue を選択すると、Recorded(2) の Loop Time の設定に基づいてアニメーションをループします。
選択したアニメーションクリップの後のギャップの外挿を以下のオプションのいずれかに設定するには、Post-Extrapolation プロパティーを使用します。
- None: 後外挿を無効にします。選択したアニメーションクリップ後のギャップで、ゲームオブジェクトはそのシーンのトランスフォーム、ポーズ、状態を使用します。None を選択すると、例えば、シーンとアニメーションクリップのゲームオブジェクトのモーション間にイーズイン (ease-in) を作成する場合などに便利です。詳細は、クリップのイーズインとイーズアウト を参照してください。
- Hold (デフォルト): 選択したアニメーションクリップの後のギャップで、アニメーショントラックにバインドされたゲームオブジェクトは、アニメーションクリップの最後に割り当てられた値を使用します。
- Loop: 選択されたアニメーションクリップの後のギャップで、アニメーショントラックにバインドされたゲームオブジェクトはアニメーション全体を順ループとして、開始から終了までを繰り返します。ループの開始をオフセットするには、Clip In プロパティーを使用します。
- Ping Pong: 選択したアニメーションクリップの後のギャップで、アニメーショントラックにバインドされたゲームオブジェクトはアニメーション全体を順方向 (開始から終了) へ、それから、逆方向 (終了から開始) へと繰り返します。ループの開始をオフセットするには、Clip In プロパティーを使用します。Clip In プロパティーを変更すると、順方向のときはループの開始に、逆方向のときはループの終了に影響します。
- Continue: 選択したアニメーションクリップの後のギャップで、アニメーショントラックにバインドされたゲームオブジェクトは、ソースアセットの設定に基づいてアニメーションを維持、または、ループします。例えば、選択したアニメーションクリップがモーションファイル Recorded(2) をソースアセットとして使用していて Recorded(2) の設定が Loop の場合は、Continue を選択すると、Recorded(2) の Loop Time の設定に基づいてアニメーションをループします。