Unreal Engine 5.3.2
こんにちは
[目的]
Advanced Locomotion Systemのアニメーションをリターゲティングして使用したいです。
[詳細な説明]
Vroid Studioで作成したVRMファイルをVRM4Uプラグインを使用してプロジェクトにインポートしました。
IKリターゲッタでは、UE4MannyQuinnのIKリグアセットをソースに登録して、ターゲットにはVRMモデルから手動で作成したIKリグアセットを登録しています。
また、Advanced Locomotion Systemを使用してプロジェクトを作成したため、プレビューメッシュはAnimMan(青い人)になっています。
・IKリターゲッタの画面
IKリターゲッタのプレビュー画面や、 Retarget Pose From Mesh ノードを利用したランタイムIKリターゲティングにおいては、正常にアニメーションが動いています。
・ランタイムIKリターゲティング
・IKリターゲッタのプレビュー画面
しかし、このアニメーションをエクスポートすると、おかしなアニメーションになってしまいます。
・エクスポートしたしゃがみ状態のアニメーションシーケンスを開いた画面(キャラクターが地面から浮いてしまっている)
VRM4Uを用いてVRMモデルをインポートする際に、"Generate renamed humanoid mesh"と、"Generate IK Bone"をTrueにしています。そのため、ボーンの構造がUE4マネキンに近い状態になっています。
また、Bone Snapperというプラグインを以下のブログを参考に入れています。
UE5 で 取り込んだ VRM のIKボーンが動いてくれない問題の対応 - Unreal Engine - | 真夜中の歌声 (mayonakanouta.com)
・VRMモデルのIKリグ画面
・Bone Snapperプラグインの設定画面
フォーラムやReddit、Xなどで類似のトピックをいくつか発見しましたが、どれも解決に至っていなかったため、質問させていただきました。
かなり時間をかけて調べたり、試行錯誤を行ったつもりですが、これ以上は皆目検討がつきません。
なにか少しでも良いので分かる方がいらっしゃいましたら、どうかご教示のほどよろしくお願いいたします。
1 Like
kiruru002
(kiruru002)
2
確認なのですが、
VRM→UEにインポート→UE上でリターゲット→UEからエクスポート→使用する
ということをしたいのでしょうか?
それでしたら、ブログによるところリターゲティング時にIKボーンがリターゲティングされないため、無理だと思います
また、以下の現象はあなたの環境でも起きていますか?
貴重なお時間を割いていただきありがとうございます。
ご指摘いただいたことを踏まえて、改めて確認いたしました。
・IKリターゲッタのプレビュー画面
・エクスポート後のアニメーションシーケンス
2つの動画を確認すると、どうやらIKボーンは動いているように見えます。
一方で、キャラクターの足元から腰にかけて真上に伸びているRootボーンは、エクスポート後のアニメーションシーケンスにおいて全く動いていないようです。
ここで、ブログの以下の記述が思い当たります。
Bone Snapperの設定を以下のようにしていたため、Rootボーンが固定されてしまっているのではないかと考えました。
InPlaceをfalseにしたり、RootSnapBoneNameに他の様々なボーン名を書いてみたり、Bone Snapperプラグイン自体を消してみたりと試行錯誤を重ねましたが、エクスポート後のアニメーションでは依然Rootボーンが固定されたままでした。
Rootボーンが動かない原因について考えるために、Third Personテンプレートに付属しているUE4マネキン→UE5マネキンへのリターゲッタと、UE5マネキンのIKリグを利用してアニメーションのエクスポートを行ってみました。
・UE5マネキンへリターゲティングし、エクスポートしたアニメーションシーケンス
Rootボーンが動いていることを確認できたため、以下のようにメッシュだけをVRMモデル(霊夢)に置き換えてみました。
・プレビュー画面(Rootボーンの伸縮が確認できます)
・エクスポートしたアニメーションシーケンス
例によって、エクスポートするとRootボーンが動かなくなってしまいました。
UE5マネキンはエクスポート後も正常にアニメーションしていたため、VRMモデルに原因があると考えられます。
Rootボーンの動かし方について何か分かる方がいらっしゃいましたら、ご教示いただければ幸いです。
kiruru002
(kiruru002)
4
Root Snap Bone Name に 「Root」を指定すると、Rootが求められると思うのですが、霊夢にRootってありますかね?
マネキンはRoot直下にPelvisがあります
解決しました。
原因はUnreal Engineではなく、DCCツールであるVroid Studioにありました。
そのため、もしこのフォーラムにおいて記載することが不適切であれば消します。
まずご指摘の件ですが、スクリーンショットだと見切れていましたが、Pelvisボーンの親にRootボーンがありました。
ボーン構造については特に問題は無かったようです。
結論から述べれば、Vroid Studioでキャラクターのモデルを作成する際に、"新規作成"ではなく、"サンプルモデル"を開き、それを上書きする形でキャラクターを作る必要があります。
・経緯
霊夢に対するリターゲティングについてはこれ以上打つ手が無かったため一旦諦めて、他のVRMモデルで試してみることにしました。
インターネット上で配布されているVroid Studio製VRMモデルをインポートしてリターゲティングを試したところ、うまくいきました。
よって原因は自作のVRMモデルにあると判断し、Vroid Studioの"新規作成"で適当なキャラクターモデルを作成し、エクスポートしたものをUnreal Engineにインポートしました。
そのモデルにリターゲティングを試すと、以前と同様にRootボーンだけが動かない現象が発生しました。
一方で、Vroid Studioのサンプルモデルをそのままエクスポートし、そのリターゲティングを試すとうまくいきました。
私はVroid Studioにも詳しくないため、もしかするとキャラクターの作成時に、Unreal Engineで動かすための設定等があるのかもしれません。
対処療法的ではありますが、サンプルモデルから上書きする形で作成したキャラクターモデルであれば、正常にリターゲティングされることを確認しました。
・エクスポート後のアニメーションシーケンスでRootボーンが動いている様子
いくら検索しても分からず、諦めかけていたところでしたが、kiruru002さんのお陰で解決することができました。
本当に感謝しております。
ありがとうございました。
3 Likes
system
(system)
Closed
6
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.