こんにちは!ジェイです!
12/31日から再開したTPSオンラインゲーム開発の進捗というか失敗談をまとめます。
再開前からの問題点
実は、以前からUE5で3Dモデルのアニメーションにはまっていて、ルートモーションが反映されなくてしゃがめなかったり、VRMのリターゲット後に出るエラーなどで悩まされてました。
これが原因でモチベが下がって、今作っているTPSオンラインゲームは何度か中断してるのでなんとかしたい…
compatible skeletonsを使った時の問題点
12/31の制作再開初日の話
UEのSkeltonはある程度、構造が似たSkeltalMeshを動かせるように、複数のモデルがまとまっています。
これのおかげでアニメーションブループリント(以下ABP)も1つにまとまってます。
FBIKを使って武器を持つ手の位置を調整するのですが、ABPごとにFBIKを設定したいけど、Compatible SkeltonでまとめるとABPは1つだけにまとまるので、個別に設定できないんですよね。
それの解決できそうな方法を今日、見つけました!
これに書いてあるUE5の新機能のAnimation Blueprint Templateという機能を使えば、もしかしたら問題が解決できるかもしれない?
ただ、この問題に関しては、最悪の場合は、リターゲットでキャラを追加するごとにアニメーションファイルを増加するのを気にしなければ、作れないことはないです。
厄介な物理演算の問題
今のところ一番の問題は、ネコメイドちゃんモデルのスカートが動かないこと。
Unityの時も髪の毛やスカートを揺らすのは大変でしたが、UE5でもそれなりに勉強が必要そうです。
リターゲットできたけど服を貫通しちゃう
— ジェイ@ゲーム制作Unity UnrealEngine (@JY20160816) 2024年1月3日
どうしましょうかね pic.twitter.com/MMSS5FXaWb
1/3現在、色々と試行錯誤はしたけど、すぐに解決できるかはまだわかりません。
物理演算問題の解決の糸口
調べていくと、どうやら物理アセットの設定で髪の毛やスカートも動かせそうな情報を見つけました。主にChaosRBANかKawaiiPhysicsを使う方法があるみたいです。
ChaosRBAN
KawaiiPhysics
今日試したこと
1/3に試したことは、ChaosRBANのABPの部分のRigidBodyノードを追加してみたけど、実行結果は変わらず上手くいかない。
ただし、何もしないでCompatibleSkeltonやリターゲットするだけで、髪が揺れるモデルがあってなぜだろうと思い調べるとあることに気づきました。
物理演算できるモデルとできないモデルの違い
同じマーケットプレイスで購入したモデルでも、ChaosRBANの設定が済んでいて初めから揺れるようになってるモデルとそうでないモデルがあるみたいです。
その差はPhysicsAssetを開いてみるとわかりました。
何も設定せずに髪が動くモデル
何も設定しなかったら髪もスカートも動かなかったモデル
これ見るとあきらかに髪とスカートとしっぽに物理演算が適用されてないですね。
素直に手作業でアニメーションしてるモデルもある
このモデルは物理演算で揺らしてるんでなくてボーンごとにアニメーション付けてるらしい
— ジェイ@ゲーム制作Unity UnrealEngine (@JY20160816) 2024年1月3日
こういう手作業苦手なんだよな… pic.twitter.com/ddyrzs31Dx
1/3の時点でここまで発見するところで終わりました。
次やる予定の作業
まず初期のサードパーソンのプロジェクトでKawaiiPhysicsで髪とスカートが動くか試してみて、動作を確認できたら本番のプロジェクトに移行しようと思います。
そして、余裕があったらABPTemplateを使って、リターゲットせずにCompatibleSkeltonでリソースの増加を抑えつつも、FBIKを利用できる状態にできるか検討します。
前みたいに深追いしてモチベが下がって中断しないように、なるべく簡単な方法を模索していこうと思います。