Created on | Updated on

Kinefx : モーションをループにする

読み込んだアニメーションが1サイクルしかない場合、そのアニメーションをループモーションにすることが可能です。

 

FBX Animation Importを使用してFBXアニメーションをロードします。

mceclip0.png

Motion clipを作成し接続します。

mceclip1.png

これはスケルトンのアニメーションをキャッシュし、各ジョイントの位置を表現したポイントのリストとして保存されます。

ビューポートで確認すると、Frame RangeとSample rateを元にキャッシュされたデータが表示されます。時間とともに変化することはなくなりすべてのポイントの情報がキャッシュして表示されます。

mceclip2.png

Motion Clipでキャッシュしたデータを再度アニメーションとして再生するには、Motion Clip Evaluate を使用します。

mceclip3.png

 

ここまでだと単純に読み込んだアニメーションをクリップ化し、再度アニメーションに戻しただけです。これをループアニメーションにします。


MotionClipとMotionClipEvaluateの間にMotionClipCycleを追加します。

mceclip0.png

これはその名前の通り、クリップを必要な回数ループします。

Cycle BeforeとCycle Afterが設定できるので、現在のアニメーションの前後にどれだけアニメーションを繰り返すかを指定します。

mceclip1.png

例えば上記の王にCycles Afterを3に設定した場合、実際のアニメーションを再生後、全く同じアニメーションを3回繰り返します。

これだとあまり意味がありません。アニメーションの終了と、サイクルアニメーションの最初の位置がつながっている必要があります。

まずはアニメーションのループに使用するフレームを抜き出します。

Frame Rangeを有効にします。

mceclip2.png

エクスプレッションでタイムレンジの最初と最後のフレームが入力されています。

最終フレームが表示されている部分で右クリックし、Delete Channelsを選択します。

mceclip3.png

次にアニメーションをループしたいフレームを指定します。

mceclip4.png

ただ、これでもこのフレームをただ繰り返しているだけです。

1フレーム
mceclip5.png

35フレーム

mceclip6.png

36フレームで元に戻ってアニメーションが繰り返されます。

mceclip7.png

アニメーションにオフセットをかけるにはLocomotionを使用します。
Locomotionは日本語で移動という意味があるので、ループ時のTransformを調整してくれます。

mceclip8.png

Compute Locomotionを選択します。

Locomotion Jointを選択する必要があります。
ここでは全体の移動や回転の起点となるジョイントを選択します。おそらく重心となっているジョイントを選択することになると思います。

mceclip9.png

次にループ時に移動、回転の起点となるジョイントを選択します。
Match TranslationをCustom Jointに設定します。

ここでLocomotion Jointを選択すると、上で設定したジョイントがそのまましようされます。

今回は歩いているジョイントなので地面についている足を起点にします。

35フレームでRightFootを着地し、ループ後はLeftFootを持ち上げて移動するアニメーションです。

mceclip10.png

そのため、Transform JointではRightFootを使用しました。

mceclip11.png

次にジョイントの向きを一致させるか設定します。

mceclip12.png

ジョイントのUp軸を合わせる設定しました。

最後にループ間のアニメーションブレンドを行います。

MethodはPreserve Lengthを使用します。
これは各ループの長さが入力アニメーションと同じになるように計算します。

mceclip13.png

切り取ったタイムレンジのループを前のループに重ねたい場合は、Overlapを使用します。

Blend Typeでブレンド時の補間を設定します。

 

設定後、MotionClipEvaluateで確認するとアニメーションが適切にループされます。

 

問題が解決しない場合は、Born Digital サポートまでお問い合わせ下さい。

※ 問い合わせ対応はBorn Digitalより製品をご購入頂きましたお客様のみのサービスとなります。ご了承下さい。
サポート問い合わせ