Edited at
UnityDay 13

BlenderでMecanimしようぜ(後編)

More than 5 years have passed since last update.

えー、続きです。

前編の最後に「これでもうUnityにインポート可能です」と書きましたが、訂正します。

現行のままだと腰のデフォームボーンおよびオリジナルボーンの設定が共にrootを親になっており、デフォームボーンはcopy_transformsコンストレイントにより、オリジナルボーンと常に同座標に配置されるような設定になってます。しかしこれはあくまでBlender上での設定ですのでUnityに取り込んだ時点でコンストレイントは無効になります。これを回避するためにDEF-hipsの親をrootからORG-hipsに変更します。

image

これで取り込めるようになりました。

が、せっかくなのでBlender側で2つほどアニメーションクリップを作っておきます。

アイドル状態とアクション状態ですね。

image

アニメーション制作における注意点は、1フレームから始めることです。

もしも0フレームからアニメーションを作ってしまうと、Unityに読み込んだときに-1フレームから開始されてしまい、手直しをするはめになります。blenderは1フレームを基準と捉えているみたいなので、他のソフトなどで0フレームから作ることに慣れちゃっている方は注意しましょう。

とりあえず適当にIdleとOta-geiという2つのアニメーションを作っておきました。

これをUnityに.blend形式のままインポートします。

読み込んだファイルをProjectパネルから選択し、インスペクタのAnimationをクリックすると、作成した2つのアニメーションのほか、Default Takeという謎のアニメーションがあります。これはタイムライン上に配置されたものです。つまりNLA Editorで配置した結果もアニメーションクリップとして持ち込むことができるようになっております。

Rigの設定でHumanoidを選択し、コンフィグ画面に切り替えると、Unity側で使うリグにあたりをつけてくれているので設定が非常に楽です。

今回のようにRigifyを使う場合は頭の設定のみおかしくなっているので、これを正しく訂正します。NeckをORG-neckに、HeadをDEF-headにすればオーケー。

image

これで数多くのHumanoidアニメーションを適用することが可能です。

Mecanimに関しては、50分にも及ぶUnity公式のチュートリアルが非常に役にたちます。

http://www.youtube.com/watch?v=Xx21y9eJq1U

せっかくなのでこの原稿を書くためにつくったものを置いておきます。

こちら

では、皆様よきUnityライフを。