はじめに
BlenderとUnreal Engine 4の勉強を再開しています。今回の目標は3Dで動かせるキレイなモバイル向けゲームを作ることです。
前回まで
前回まででキャラクターがほぼ完成しました。
今回の作業
今回はBlender 2.83で作ったモデルをUnreal Engine 4にインポートして動かしてみたいと思います。この作業は昨年もやりましたが、大変ややこしくてうまくいかないことが多かったのを覚えています。昨年やった方法はBlenderがアップデートされているためかうまくいかず、半日以上かけて色々な方法を試してみました。数千円で買ったアドオンがうまく動かなかったり、Unreal Engineを触っている途中で頭がこんがらがったりしました。しかし、最終的になんとか動かすことができました。その方法をメモ書き程度に書きます。
まずこちらのサイト(↑)を参考にさせてもらって、MixamoにBlenderで作ったモデルをFBX形式でアップロードしました。
うまくアップロードとリギングができると3Dモデルが動いている画面が表示されます。
自分で作ったモデルが動いているのを見るとちょっと嬉しくなります。
Mixamoには多数のアニメーションがあって、どれも持ってくることができます。
このアニメーションは面白いですね。
MixamoからFBX形式でダウンロードして再度Blenderに持ってくることもできます。
リグとアニメーションが付いたまま戻ってくるので、めちゃくちゃ便利です。
Blenderでムービーを作るときに使えそうです。
MixamoからFBX形式でダウンロードしたものをそのままUnreal Engineにインポートしました。アニメーションシーケンスも一緒に入っています。
アニメーションシーケンスだけでは自分で動かすことができません。
なので、このスケレタルメッシュをメインキャラクターに適用していきたいと思います。
Mixamo Animation Retargetingというプラグインを購入しました。
これを使って動画を見ながらMixamoからインポートしたスケレタルメッシュをUnreal Engine 4のマネキンにリターゲティングしました。
※リギングがUnreal Engineに適応したものになります。
※自力でrootボーンを追加するやり方もあるそうです(最初のサイト参照)。
さらに、この動画の7分~8分頃までを参考にして、
・アンリアルエンジンのマネキン(ThirdPersonCharacter)を複製(これをメインキャラに使う)。
・ThirdPerson_Anim_BPをリターゲットして複製、Mixamoのスケレタルメッシュを指定。
・すると、Mixamoのスケルトンにあわせてアニメーションが複製される(このアニメーションBPを使う)。
・最初に複製しておいたメインキャラにスケレタルメッシュとアニメーションBPを指定する。
これでグレーマンの動きをさせることができるようになりました。ややこしいです。
肩の位置がおかしかったので、
Skeletal MeshのSkeleton TreeのオプションでRetargeting Optionを表示してTranslation RetargetingをSkeleton→Animationに変更にすると少しだけマシになりました。
ここまで
これでBlenderで作ったモデルをUnreal Engineで動かすことができました。
今まで通りのやり方がうまくいかず、しかも検索してもほぼ出てこないので苦労しましたが、なんとか別の方法でUnreal Engineに持ち込むことができました。
手順が多くて、明日になったら忘れそうなのでメモ程度にここに書いておきます。
今日は疲れ切ったのでここまでにします。次回からどうするかまたちょっと考えます。
(今回の作業時間:780分)
>次の記事
<前の記事