BakinにVRMアニメーション(VRMA)を適用することは出来るのか?
これまでの記事でRPG Developer BakinにVRoidを取り込む方法や、Mixamoからアニメーションを持ってくる方法について解説してきました。
ただ、VRoidの操作に慣れてきた人ほど「VRMアニメーション(VRMA)をBakinに持ってこれないのだろうか?」と悩んでいる人が多いと思います。
結論から言うと、少し面倒な手順が必要ですが、VRMAをBakinに持ってくることは可能です。
今回の記事では具体的にどういった手順を行えばVRMAをBakinに持ってこれるのかについて解説していきます。
正直この方法が正解なのかは未だに私自身分かっていませんので、もっと簡単な方法などがあれば逆に教えて欲しいです。。。
VRMアニメーション(VRMA)とは
最初に「VRMアニメーション(VRMA)」とは何かについて軽く説明しておきます。
簡単に言うと、VRoidで作成した3Dキャラクターに様々な動き(アニメーション)を付けるための専用ファイル(.vrma)のことを指します。
もう少し詳しく言うと、VRoidで作成した3Dキャラクターを外部で使用する際には、VRMという独自のファイル形式となっているので、そのVRM形式のキャラクターを動かすのに必要なのがVRMAというところでしょうか?
そのため、VRoid以外で作成した3Dキャラクター(FBX等の別のファイル形式)に対しては、VRMAでアニメーションを付けることは出来ません。
具体的な動きが見たいという方は、VRoidの公式が出している以下のページで実際に動いているところを見てもらえれば分かると思います。
とりあえずは、VRoidを色々動かしているのがVRMAだと理解してもらえれば、それで十分です。

【前準備】Blenderにアドオンを導入する(最初の一度だけ)
ここからの解説は少し難易度が上がります。その理由はBlenderという3D用制作ソフトの使用が必要となってくるためです。
Blenderは無料で有りながら、非常に多機能なツールであり、基本的に3D関連で何かしたい場合は、真っ先にBlenderの使用を検討するレベルで重要なツールです。

今回のVRMAをBakinに導入する手順でも基本的な作業はこのBlenderを使用することになります。
そのため、未だ導入していない方についてはBlenderのダウンロード手順を確認して、自分のPC上で動かせる状態にしておいてください。
VRM formatのアドオンを導入
Blenderを自分のPC環境で動かせるようになったら、アドオン(Blenderへの追加機能)を導入していきます。
ちなみにアドオンの導入作業は初回のみであり、次回以降はこの手順は不要となります。
今回導入するアドオンは2つ有り、1つ目は「VRM format」というアドオンとなります。
この「VRM format」を導入することで、Blender上でVRMとVRMAのファイルを扱えるようになるため、VRoidをBlender上で操作するために必須のアドオンとなります。
アドオンのインストール方法については、VRM formatの公式ページにありますので、そちらをご確認ください。

Bakin Motion Exportのアドオンを導入
続いて、もう一つ必要となるアドオン「Bakin Motion Export」の導入についても解説します。
このアドオンはBakinが公式Wiki上で公開しているもので、VRoidの3Dキャラクター(VRM)をBakin用にFBX形式で出力する際に細かい調整をしてくれるためのものです。

BakinはVRoidを直接インポートすることが出来る様になっていますが、これは厳密にはFBX形式に変換してBakin上に取り込んでいるのだと考えられます。
そして、BakinがVRoidをどのようなFBX形式に変換したうえで取り込んでいるかユーザーが調べるのは難しいため、このアドオンを使用することで同じような構造体のFBX形式で出力できるようになるというものだと思われます。
曖昧な言い方ばかりになって申し訳ないのですが、公式Wikiのアドオンの箇所にも詳細な解説文は載っていないので、どういった理由で用意されているものなのかは推察することしか出来ないのです…。
ただ、現状はVRoidも直接インポートできますし、モーションもMixamoからダウンロードしたFBXをそのまま取り込めるため、あまり利用する機会は無いアドオンだと思います。
機会があるとしたら、VRMをベースにしてBlender上で独自に作成したアニメーションをBakinに取り込み済みのVRoidのモーションとして追加したいという場合か、今回のようにVRMAを取り込みたいといった場合の2択になる気がします。
まぁ、難しい話は置いておいて、とりあえず「Bakin Motion Export」をBakinの公式Wiki上からダウンロードしてください。
そうすると、「bakin_motion_export.py」というファイルが落とせたと思うので、自分のPCの好きな場所に置いてください。
次にBlenderの画面上部にある「編集」の中の「プリファレンス」を選択してください。

開いたプリファレンス画面の左側にあるメニューから「アドオン」を選択し、その後に右上にある下矢印のところを押して、「ディスクからインストール」を選択してください。

そして、先程Bakinの公式Wikiからダウンロードした「bakin_motion_export.py」を選択して、「ディスクからインストール」のボタンを押してください。
そうすれば、アドオンの一覧の中に「BAKIN Motion Exporter」が表示されていれば、アドオンの導入は成功です。

VRMとVRMAを用意する
それでは、ここからRPG Developer BakinにVRMAを導入するための手順を解説していきたいと思います。
その前に、そもそもVRoidをBakinに導入する方法が良く分からないという方は、過去の以下記事を先に閲覧しておいてください。
VRMファイルを用意する
最初の手順として、好きなキャラクターで構いませんので、VRoidのVRMファイル用意してください。
VRMをエクスポートする手順は、上で紹介している過去の記事に書いてありますので、分からない場合はそちらをご確認ください。
ちなみに好きなキャラクターとは言いましたが、あまりにも一般的な形状から逸脱しているものは厳しいかもしれませんので、以下のように「AvatarSample_A」ちゃんを使うのが無難です。

VRMAファイルを用意する
続いて、VRoidを動かしたいアニメーション、すなわちVRMAファイルを用意してください。
VRMAファイルは自作することも出来ますが、今回は上でも紹介した公式のVRMAファイルをダウンロードしてみてください(無料ダウンロード出来ます)。
VRMAファイルの自作方法については、次回以降の記事で解説することにしたいと思います。

動かす対象の3DキャラクターであるVRMファイル、動きそのものであるVRMAファイル、この2つを一旦揃えてもらえれば、ファイルの前準備は完了です。
BlenderにVRMとVRMAを適用して、FBX出力する
Blenderに2つのアドオンを適用し、VRMとVRMAがそれぞれ用意できたのであれば、後は実際にBlenderを操作していく作業に入ります。
先ずはBlenderを開いたら出てくる、最初の四角形のモデル(Cube)をクリックして、削除してください。

続いて、用意したVRMファイルをBlender上にドラッグ&ドロップ(もしくは「ファイル」の「インポート」からでも可)してください。

少し待つと、Blender上にVRoidが表示されたと思いますので、その後にVRMAファイルを同じようにBlender上にドラッグ&ドロップしてください。
今回はダウンロードしたzipファイルの中にあった「VRMA_01.vrma」を使ってみましょう。

VRMとVRMAが無事Blenderに取り込めたら、Blender画面の下部にある以下のアニメーション再生関連ボタンの中で「再生(右三角)」を押してみましょう。

ここまでの操作が上手くいっていれば、取り込んだVRMAのアニメーションの通りに、3Dキャラクターが動くことを確認できると思います。
上手く動かない場合は、ここまでの手順のどこかに問題があったのだと思われますので、不具合が起きた箇所を中心に個々で調べてください(ChatGPT等に聞くと結構回答がもらえたりします)。

最後にVRMとVRMAの2つを取り込んだ現在のプロジェクトをFBXとして出力します。
しかし、このときに普通のFBX形式でエクスポートしてしまうと、BakinのVRoidとボーン構造が違うため、取り込むことは出来ません。
そのため、アドオンで追加した「Bakin Motion Export」を使った形式でFBX出力する必要があります。
方法としては、画面上部の「ファイル」から「エクスポート」を選択し、その中にある「Bakin Motion Export(.fbx)」というものを選択するだけです。

そうすると、FBX形式でファイルを出力(エクスポート)することが出来ますので、好きなフォルダに好きな名前で保存してください。
ただ、Bakin上では同名のFBXファイルは取り扱えないため、被らないようなネーミングにしておくほうが良いです(今回はテストなので簡単な名前にしています)。

FBXファイルが無事に出力されれば、Blenderでの操作は終了です。あとはBakin上でFBXを取り込む作業となります。
BakinにVRMAを導入する
それでは、Blenderで取り込んだVRMとVRMAを合わせた後に出力したFBXファイルをBakinに取り込むとどうなるのか確認してみましょう!
その前にBakinにVRMの方を3Dスタンプとして先に取り込んでおいてください。取り込み方法は過去の記事の方でも解説しています。

その次ですが、「モデル」として、Blenderで出力したFBXファイルを取り込んでください(3Dスタンプでも可ですが、モデルとしてしか使いません)。

設定は基本的にそのままで良いですが、スケールは「1」にしておきましょう。

取り込んだら謎のキューブがモデルとして登録されたと思います。
VRMのキャラクターはどこに行ったんだ?と思われるかもしれませんが、この方法ではアニメーションのみを持ってきているので、キャラクターは有りません(負荷を考えるとそれで正解)。

謎キューブはそのままでは何の役にも立ちませんが、実はこのキューブの中にアニメーションは入っています。
それを取り出すには、「モーション」の「追加」ボタンを押し、先程登録した謎キューブを選択して、「追加して終了」を押してください。

そして、3DスタンプのVRoidに謎キューブのモーションを適用してみましょう。
そうすると、次のように2つめのモーションが今回Blenderに取り込んだVRMAのアニメーションと一致していることが分かると思います。
1つ目はアニメーションの最初部分が切り出されているのか良く分かりませんが、とりあえず2つ目に取り込んだVRMAが適用されていることが分かれば十分だと思います。
ちなみにモデルを経由せずに、最初から謎キューブのFBXファイルをモーションとして取り込もうとした場合はBakinの警告が出るので、可能ならモデルから取り込んだほうが良いと思います。

これでBakinのVRoidにVRMAを無事に適用することが出来ましたので、今回の目的は達成です。
ただ、このまま使用するにはいくつか検証しておくべき点があると思いますので、もう少し色々調べていきます。
VRMA導入時の検証
Mixamoのモーションと併用できるか
結論:Mixamoのモーションとも併用できる
以下の画像の通り、Mixamoのモーションを追加してみましたが、正常に動きます。
逆にMixamoモーションで構成されたモーションに今回のFBXファイルを追加する形でも、モーションが追加できます。

Blender上で複数のVRMAを適用すれば、一気に複数のVRMAを持っていけるか
結論:そのまま複数のVRMAを適用するだけでは出来ない。しかし、Blender上でアニメーションをそれぞれ個別の名前で保存しておけば、一度に複数のVRMAを持っていくことは可能。
恐らく感の良い人は複数のVRMAをBlender上で全部登録しておき、そのままBakinに持ってくれば、様々なVRMAのアニメーションで動かせるのではないかと考えたと思います。
ですが、その方法を行うのは基本的に不可能であり、Blender上で操作をしない限りは、最初に登録されたアニメーションだけが、Bakinに登録されることを確認しています。
逆に言えば、Blender上でそれぞれのアニメーションに固有の名前を付ける操作を行えば、次の画像のように複数のVRMAを持ってくることは可能です。

Blender上でアニメーションに名前を付ける操作はそこまで難しくはないのですが、Blenderに慣れていない人にとっては鬼門になると思います。
とりあえず、以下に参考画像を置いておきますが、「アニメーション」のタブで「アクションエディター」に変えた状態で、アニメーションを一つ入れるごとに固有の名前を付けていくといった感じになります。

他のBakin上のVRoidにもアニメーションを使い回せるか(互換性はあるか)
結論:他のVRoidにもBakinに取り込んだVRMAは使い回せる。
元々、VRMAというのはどんなVRoidも動かせるアニメーションなので予想はしていましたが、他の体型のVRoidでも問題なく動くことを確認しました。
そのため、最初の方の手順でVRMは好きなキャラクターで問題ないと表現していました。VRMはどのキャラクターでも特に関係無いということです。

まとめ
私はBakinがVRoidを取り込めるようになった際から、何でVRMAには対応してくれないのだろうとずっと思っていました。
そのため、なんとかVRMAをBakinに持ってこれないものだろうかと考えていたときに、実は公式が「Bakin Motion Export」というアドオンを出しているということに気づきました。
恐らくですが、VRMAはモデルの入っていないアニメーションだけのファイルとなるため、Bakinに単独で持ってくるのは技術的に難しかったのだろうと推測しています。
そのため、VRMと一緒に設定したアニメーションであれば、そのまま持ってこられるようにアドオンを用意したよ、という感じなんだと思います。
ただ、一つ言わせてもらうと、公式Wikiの記述を見ただけで今回の記事で紹介したような取り込み方法を誰が理解できるのかと問い詰めたくなります(笑)。
正直、この手順を見つけた私自身が「これ本当に公式の想定した用途なのだろうか?」とかなり疑問に思っています。
本当はVRMAをそのまま取り込めるようになるのが一番良いですし、いずれ運営様も対応してくださると信じてはいますが、とりあえずは今回紹介した方法でVRMAが導入できると分かっただけでも収穫でした。
ちなみに今回は紹介できませんでしたが、VRMAは「VRM Posing Desktop」というアプリを導入することで、独自のアニメーションを簡単に作成することが出来るようになります。
それが何を意味するかというと、今回の方法を使えば、Mixamo以外でBakin上のVRoidに様々なアニメーションを簡単に追加することが出来るようになるということです!
そう考えると、今回のVRMAをBakinに取り込めるという事実は非常に面白いものになってくると思いませんか?
まぁ、Blenderの操作が挟まる時点で試す人は少数になるとは思いますけどね…。
最後に、この記事は私が今後忘れないようにするための備忘録として各操作を残しておくものですので、どなたかの参考になれば幸いです。
今後もBakinでゲームを作成する方法は解説していきたいと思いますので、興味があれば閲覧ください。
Canvaで簡単にマンガを作る方法 AIイラストで誰でもマンガ家になれる時代! – センコの活動記録 (senkohome.com)
コメント