「パリピ孔明」の「チキチキバンバン」のダンスが面白くて、MMD?で踊らせている人も多く、自分もモーションキャプチャしてUE5のキャラクタ(METAHUMANとか)を踊らせてみたいと思った。
おおよそ、画像から関節を抜き出して、3Dモデリング(ボーン?)にマップして、キャラクタに動きを与えるという流れになるのだけど、サクッと動かせるツールが見つけられない。UE5のプラグインで動きそうなのは、PoseAI、MediaPipe Pose Tracker等があるけど、いずれも有料なのであった。できればフリー版で動かしたい*1。
Youtubeで紹介されている方法は、いくつかのソフトウエアを組み合わせて、FBX形式のデータまで作ってからUEに持って来るのが一般的なようだ。この場合、複数のソフトを使いこなす必要があるのと、最後に関節位置の再割り当てが必要で面倒だ。plaskはフリーで動画やカメラ画像をFBX形式まで変換してくれるのだけど、やっぱり最後は関節位置の再割り当てが必要。。面倒*2
こうなったら、GitHubで公開されている、CMUのOpenPoseを使って関節位置情報を抽出して、なんとか自力か先人の変換ツールでFBX形式に変換してみようかと思っている*3。また飽きるかもしれないが。
■追記
調べているうち、モーションデータとキャラクタデータは別と理解できて、ひょっとして、ダンスのモーションデータを誰かが公開しているのでは?と思ったら、踊ってみたのFBX形式が提供されていた。
【ダンスモーションデータ】TVアニメ「パリピ孔明」OPテーマ「チキチキバンバン」【踊ってみた】 - TVアニメ「パリピ孔明」 - BOOTH
Unityで使えるけどMMDでは使えないそうだ。データ形式が違うから? あまり理解できていませんが、UE5で読み込ませたらエラーになった。plaskで読んでみると、boneとmeshがないと怒られる。素直にunityで読んでみる。。Assetsにはエラーなく読み込めた。次はどうするのか??
データに対して以下の操作が必要
Inspectorを開く
「Rig」ー>Animation Typeを「Humanoid」に変更、適用
「Animation」ー>Motion、Root Motion Nodeを「<Root Transform>」に変更、適用
(https://note.com/vsrx/n/n22fa5355d8d6) ・・・Thanks
上記サイトに倣って作業をして、Unityでおじさんが踊るところまでは来た。あとは踊らせたいアバターというかキャラクターをこれに紐づければ良いのだろう。
■追記
UnityでVRMモデルを扱うには、UniVRMのプラグインが必要なので、GItから落としてきてUnityに入れる
次は動かすモデルとしてVRMをDLする必要があるが、VRoidHubを見ていても、DL禁止が多いようで、勝手には使えないのかと。
版権がよくわからないので、VRoidStudioで凝らないデフォルトのモデルを作ってみる。