バーチャル3Dクリエイター神部まゆみです(*^_^*)
この記事はUmotion ProのSync同期機能で二人組のアニメーションを作成してみたので、それについての記事です。
動作確認した最新バージョンは Unity 6000.0.32 です。
やりたいこと:Umotion Proの同期(Sync)機能を使って、二人組のアニメーションを作りたい
Sync機能を使うと、他のモデルをアニメーションウィンドウでプレビューさせながらUmotion Proをいじれます。
Umotion Proのポーズエディタにはモデル一体しか指定できないけど、アニメーションウィンドウで別のモデルを動かして同期させることはできる。
↓のアニメーションウィンドウでプレビューして動かしながら、


↓のUmotion Proのクリップエディタが編集できて、フレームごとの動きを同期して編集できるってことね。


これでフレームごとに位置合わせとかできるようになるので、二人組のアニメーションを作りやすくなる。
例えば手を繋いでる二人組のモーションとかだと、手の位置をフレーム単位で合わせないといけないので、同期できないと厳しいです。
えろいモーションとか作る場合は必須ですねw
タイムラインでも同期できるのだけど、タイムラインについての知識がないのでアニメーションウィンドウのほうでやってみます。
実際にやってみる
実際に二人組のアニメーションを作ってみます。
最初にモデルのトランスフォーム位置を二人とも0,0,0に持ってくる
これをやらないと、アニメーションウィンドウでプレビューした時に位置がズレるようです。


ゲーム実行中はちゃんと元の場所にアニメーションするので問題ないのだけど、アニメーションウィンドウでプレビューした場合はズレるっぽい。
二人とも0,0,0にして重ねておく。


以前MMDの二人組の配布モーションを動かしてみた時も座標を合わせる必要があったから、たぶん他の人もこんな感じで作ってるのかな?わかんないけど。
アニメーションウィンドウでプレビューする一人目のアニメーションを作っておく
↓先にアニメーションウィンドウでプレビューするアニメーションを作った。
これUmotionでSyncしないと動きの同期ができないというだけで、Umotionのポーズはそのまま表示されていますね…。
後述するけどVeryAnimationとの同時起動もできたので、併用するのも良いと思います。
UmotionのClipエディタでSyncボタンを押すとアニメーションウィンドウと同期できるので、二人目のアニメーションを作る
Syncを押すと、UmotionのClipエディタのフレームとアニメーションウィンドウの動きが同期できるようになります。
これで相手のモーションに位置を合わせやすくなったので、二人組のモーションも作りやすいですね。
サクッと作るならVeryAnimationのほうが便利だけど、レイヤー追加していじっていくのはUmotion Proのほうがやりやすいかな…。
Genericの子にHumanoidを二人配置して作る方法もあるっぽいが…
フォーラムで作者さんがそんな感じのことを言っていたのでやってみた。
2つ以上のモデルを同時にアニメーション化 / UMotion – アニメーションエディタ / Soxware Interactive
まず、2体のキャラクターをシーンに配置します。それぞれのキャラクターから「Animator」コンポーネントを削除します。そして、それら2体を「空のゲームオブジェクト(空オブジェクト)」の子オブジェクトにします。この空オブジェクトには「Animator」コンポーネントが付いている必要があります。つまり、2体のキャラクターは同じ親(空オブジェクト)を持つ状態になります。
次に、UMotionで「Generic」タイプの新しいプロジェクトを作成し、その空オブジェクト(親)を「Pose Editor」に割り当てます。こうすることで、2体のキャラクターを同時にアニメーションさせることができます。この方法は、2つの別々のアニメーションを使った場合に起きる「位置ズレ(オフセット)」の問題も回避できます。
これだと親のGenericオブジェクトのアニメーターコントローラーで、子のHumanoidのボーンやシェイプキーも管理できるので、一つのアニメーターコントローラーで複数のモデルのアニメーションを制御できるっぽい。
しかしあくまでもGenericになってしまうため、HumanoidのIK設定や指を動かす動作などがキツイっぽい?
↓一応途中までやってみたけど、IK一人分の設定だけなら普通にできたので割り切るならいけるかな?
↓の記事でやってみたけどちょっと大変そうかな(^_^;)
二人目のIKも手動でやればいけるかもしれないけど、ちょっと面倒かもしれない。
Humanoidではないので指を動かす機能がなかったり、設定が大変そうです。
VeryAnimationでもSyncrhonise機能で割と簡単に作れる
サクッと二人組のモーションを作る場合、VeryAnimationのほうがやりやすくはあるかな…。
普通にモデルをダブルクリックすると切り替えられるし、えろいモーションとかはこれまでも作ってきましたねw


しかしVeryAnimationはレイヤー機能が最近実装されたばかりっぽい?アニメーターのレイヤーを使う感じっぽいのでそのあたりはUmotionのほうがやりやすいかなあ。
できればVeryAnimationである程度作ってUmotionに読み込み、細かい部分はUmotionでレイヤーいじりつつ調整するのが一番良いかな…。
VeryAnimationとUmotion Proを同時に起動できたので併用するのも良いかな?
VeryAnimationは直接アニメーションクリップを編集する方式なので、VeryAnimationを開いてアニメーションを編集、その後Umotion Proに戻ったりもできる。
割と普通に併用できましたね。
両方VeryAnimationでも良いけど、Umotionだとレイヤーが手軽に使えるのが強いっすね…。
これ案外いけそうだから両方使っていこうかなw
VeryAnimationである程度作る ⇒ Umotion Proで読み込んで作りこむ…とかもできます。
追記:作った二人組のアニメーションをランダム遷移させるスクリプト
スクリプトも作ってみたので一応ここで紹介しておきます。
アニメーションの差分をいくつか作りランダムで遷移させると自然な感じになると思います、多分。
おわりに
案外簡単にできて良かった。
とりあえず位置を合わせてプレビューが同期できればなんとかなりますね…。
もう少しいじってみます(*^_^*)