同じスケルトンを持つキャラクター
UE4で無料で使えるキャラクターで有名なのはマーケットプレイスで提供されているParagonと、Mixamo
https://www.mixamo.com/#/
の2つだと思います。今回はMixamoのキャラクターを使います。
Mixamoにはたくさんのキャラクターが用意されていますが、
中にはMaria JJ Ong とMaria W/Prop JJのように、同じキャラクターが
武器を装備しただけというものもあります。
剣を装備したMaria W/Prop JJには剣のアニメーションが独自に用意されています。
これをUE4にインポートして、リターゲットして使う場合、別のスケルトンとなります。
当然アニメーションも別々に作られ、アニメーションBPもそれぞれ用意することになります。もちろん、それでもいいのですが、元が同じキャラクターであれば、同じ動きも多いかと思います。ですが、別のスケルトンであるために、アニメーションBPも別々に作るはいささか無駄な気もします。しかし、ほとんど同じ動きと言っても、剣を使う動きは剣がないとおかしなことになります。なので、アニメーションBPは別々にするのは仕方ない・・・というのを、実は共有でできるというのが、今回のお話です。
違いはソケットの有無だけ
まず、Maria JJ Ong とMaria W/Prop JJをインポートしてMixamo Animation Retargetingで
リターゲットしてしまいます。その後、スケルトンを確認してみると・・・
Maria W/Prop JJにsword_jointというソケットがある以外、残りはすべて同じです。こういうものは
スケルトン、アニメーションも共有できます。まず手順を書きます。
2つのキャラクターをインポートする
Maria JJ Ong とMaria W/Prop JJをMixamoからダウンロードしてインポートします。
特に何も変更せず、全てインポートでインポートします。
アニメーションのインポート
次に使うアニメーションをインポートします。
なお、インポートするときのスケルトンはすべてMaria W/Prop JJにします。
今回はIdle,Great sword Idle,Great sword slash1,Punching,Running,Walkingをインポートしました。Idleと攻撃のときは違う動きをさせ、歩く、走るは同じにします。
割り当てるスケルトンを変更する
Maria JJ Ongのスケルタルメッシュを選択して、スケルトンを変更します。
スケルタルメッシュを右クリックして、「スケルトン」「スケルトンを割り当てる」
Maria W/Prop JJをMixamoのスケルトンを割り当てます。
Maria JJ Ongのスケルトンを削除します。リファレンスもないので強制削除にはなりません。
このようになれば成功です。
ブループリントとアニメーションBPを作る
キャラクターのブループリントとアニメーションBPを作ります。ブループリントはサードパーソンBPを複製しても構いません。ブループリントはMaria JJ Ong とMaria W/Prop JJの2つ、アニメーションBPはMaria W/Prop JJのスケルトンで1つ作ります。
ブループリントのアニメーションは、今作ったアニメーションBPを割り当てます。
レベルにいるグレイマンを削除して、プロジェクト設定でdefault pawn をMaria JJ Ongのブループリントにします。
ゲームをプレイすると、動かないMaria JJ Ongが現れれば成功です。
長くなったので複数回に分けます。