mixamoとは
皆さん、mixamoご存知でしょうか。めっちゃ端折ると「高クオリティのキャラクターアニメーションをゲットできる素敵なオンラインサービス」です。
Mixamoデータアップして関節ざっくり指定するだけでウェイトもリグも自動でやってくれてイイネ。アニメーションも使いやすく豊富でゲームエンジンで何か作るにはかなり良さそう。 pic.twitter.com/zw17hk79tx
— タクマ (@humid) May 16, 2017
特筆すべき点としては
- 自らがアップロードしたキャラクターメッシュに自動でリグを適用し、アニメーションを適用することが可能
- 商用利用可能(アニメーションデータの再配布は不可)
- シチュエーションが豊富で、統制がとれた短いアクションが沢山ある。ゲームに最適。
の三点があるかなあと思います。Adobe Fuse CC でキャラクターを手軽に作って適用できる点もいいですね。
BlenderからMixamoへキャラクターを持っていき、UE4で再生するまでをやってみた所いくつか注意点が出たのでまとめておきます。
BlenderからキャラクターをMixamoへ
個人プロジェクト用に作ったこのモデルをmixamoに持っていきたいと思います。当然ワンメッシュでもパーツが別れたデータでも問題ないようです。このモデルは7つのパーツから構成されています。このモデルはfbxだとうまくアップロードできなかったので、File – Export – Wavefront(.obj) で書き出しました。
データの準備ができたらmixamoのサイトにログインします。2015年にアドビさんに買収されているのでAdobeIDが使えます。
無事アップロードが完了すると自動リギング画面に。
リギングの設定は首、手首、肘、腰、膝を指定するだけ。一瞬です。しばらく待つと適用されたキャラクターの待機モーションが現れます。
なーんの細かい設定もせずにこの精度です。すごーい!3Dキャラクターを作ったことがある人なら、このキャラの肩や袖、ひざの距離、揺れ物やゆったりとした服の形状がエラーを起こしやすいメッシュだと気づいた方もいるかもしれません。それでもこの精度です。
豊富なアニメーションアセットが全てアップロードしたキャラで表示できるようになります。やったね。
mixamoからUE4……の前に
さて、いざmixamoからUE4へ持っていこうとした時、FormatにFBX for UE4が無い事に気づきます。実は何年か前に実装されていたUE4の機能は無くなっているようです。Unityの陰謀だ!とネタめかして言う人もいますが(笑)とりあえずmixamo側がこの機能を復活させる気は全く無いようです。
幸いUE4にはアニメーションリターゲティングという、異なるリグ間でアニメーションを共有させる機能があります。ただしmixamoが書き出すfbxとUE4の標準リグの間には大きな差があるため、対応させてやるためにはリターゲティングする前に一手間かける必要があります。
- 一番簡単かつ確実な方法はリターゲティングプラグインを買うこと。現在34.99ドル。ちょっと高い?けど時間短縮に見合う値段だと思います。
- 二つ目の方法はBlenderでUE4の標準リグに対応できる形にmixamoのデータを加工してやることです。こちらは手間こそかかりますが、他の様々なデータに対しての応用も効きますしBlender上でいろいろと追加の加工が容易になります。
という事で、後編ではBlenderを使ったmixamoアニメーションの加工。UE4上でのリターゲティングを解説していきます。
後編はこちら
https://hum-id.jp/blog/app/459