chakokuのブログ(rev4)

テック・コミック・ごくまれにチャリ

Blenderで動きを作って、UE5に持っていく(予定)

Unityを使うとアバターに踊らせるのはサクッといけるものの、FBXファイルでUE5に持っていくと、どうも何かがおかしい。データの内容が分かっていないので何が悪いのか分からない。一方、UE5でチキチキダンスを踊らせている人がいて、Youtubeのコメントには、BlenderからUE5にデータを移したと書かれていた。だから、、自分もそれに倣って、Blenderでアニメーションデータを使ってVRMモデルを動かして、FBXで出力してUE5に持って行って、Metahumanなりにマップしなおしてみる。
チキチキのアニメーションデータはBlenderに取り込むことができた。動かしてみるとそれらしくダンスしている。

このままだと骨だけなので、、リターゲットだったかで*1、モデルと組み合わせる必要がある*2

動きを別のモデルにマッピングさせるのはリターゲットと呼ばれる作業らしい。本来はボーン単位で対応づけをするようだが、有償だと自動でもやってくれるらしい。フリー版でやりたいので、手作業でもいいからやってみる。
Blender リターゲット
ReNimというプラグインを使ってみる。ReNimプラグインをインストール、ソースとターゲットのボーンを一対一で対応づけしてゆく。わからないのは、背骨とかソースとターゲットで構成が異なっている場合どうしたいいのか。
動かしてみると大体いい感じだけど、腰の高さというか、腰の捻りなどが伝えられていない。これはどうやってマッピングさせたらいいのやら。

リターゲットする前に、そもそもボーンを使ったアニメーションを理解していないので、どうやったら腰の高さや動きをコピーできるのかがわからない。基礎から勉強した方がいいのかも。

これは、、Root bone pivot collectionという問題ではなかろうか
GitHub - Mwni/blender-animation-retargeting: Add-on for Blender that allows the transfer of animations and poses from one armature to another

根本原因が分かっていないのだが、0から勉強するにはちょっと時間がなく、別のretarget pluginを試してみる。
GitHub - Mwni/blender-animation-retargeting: Add-on for Blender that allows the transfer of animations and poses from one armature to another

解説記事
[無料]アニメーションとポーズを別のリグに転送できるBlenderアドオン「Blender Animation Retargeting」
https://cginterest.com/2020/04/08/%E7%84%A1%E6%96%99%E3%82%A2%E3%83%8B%E3%83%A1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%A8%E3%83%9D%E3%83%BC%E3%82%BA%E3%82%92%E5%88%A5%E3%81%AE%E3%83%AA%E3%82%B0%E3%81%AB%E8%BB%A2%E9%80%81%E3%81%A7/

blender animation retargeting というPlugInを使ってもやはり腰の動きがコピーできない。これはroot boneの扱いが、アニメーションデータとモデルの間で違っているのと、それを理解できずにツールを正しく扱えていない自分のせいだと思う。分かっていたらボーンの配置を変えたりツールを使いこなして正しくリターゲットできるのだろうけど、そのあたりの理解が足りていない。というわけで、、理解の不足を補ってくれると期待してRokoko社が出しているPluginを試してみる。

https://support.rokoko.com/hc/en-us/articles/4410463481489-Retargeting-an-animation-in-Blender-Plugin-1-1-and-above
GitHub - Rokoko/rokoko-studio-live-blender: Rokoko Studio Live plugin for Blender

Rokoko社のPlugin自体は無料で使えるけど、アカウントで0円契約が必要のようであった。契約したものの解約の方法がわからずサポートに問い合わせ中。Rokokoのretargetツールを使った結果、回転や上下動はコピーされるようになった。一方、モデル側のroot bone をどうマッピングしていいのかわからず、置いてけぼりになってしまっている。
調べていて分かったのは、チキチキのアニメーションデータのBoneはRootBoneで回転や上下動が表現されておらず、重心?の移動で表現されているようだ。自分はBoneのマッピングしかわからず、Bone以外で表現された回転・上下動をどうモデルに適用したらいいのかがわからない。どこで表現されているのかが分からない。



■参考URL
BVHファイル(モーションキャプチャデータ)をインポート!:Blender - モーリーのメモ
モーションキャプチャデータをBlenderでリターゲットするメモ - Qiita
Blenderの標準アドオンでモーションデータのリターゲティング【Blender 2.8 2.9対応】|KurokiNadir|pixivFANBOX
Blender Rigifyの使い方(バージョン 2.79)

*1:モデルとアーマチュアのリギングと呼ぶらしい

*2:ひょっとしてこのままFBXで書きだすとUE5では読めるのだろうか??->いつものエラーが出るだけであった