VRChat向けアバターをVRMに変換しよう! NDMF対応のツールとXAvatarの2つ紹介

VRChat向けアバターをVRMに変換したくなる場面に出会ったことはありませんか?

例えば、clusterに出向くとき。いつもVRChatで使っているアバターを持ち込む場合は、VRMの形式に変えなければなりません。

いままでもVRChat向けのアバターをVRM変換する方法は多くありましたが、Modular Avatarやシェーダー設定など手間がありました。

今回はVRM変換の方式を2つ紹介。それぞれの特徴を見てから適した方法を採用してください。今回紹介するNDMF VRM ExporterとXAvatarそれぞれの特徴は以下の通りです。

NDMF VRM Exporterの特徴

メリット
・Modular Avatarなどの使用を前提にしているため、VRChatのアバター改変に慣れている人にとって楽
・非破壊での処理のため、アバターに不可逆的な処理を行わない。
・UniVRM不要。(既存のVRM変換との差別化)
・VRMに必要なメタデータの記入がVRChatから自動で設定してくれる。
・表情の手動設定もしくはMMD対応のブレンドシェイプでの自動設定が可能。

デメリット
・ModularAvatarの使用が前提
・VRM1.0のみ出力

XAvatar変換の特徴

メリット
・VRoid Studioの着せ替え機能が使えるようになるため、着せ替えをする際にUnityをアップロード以外で開かなくても良くなる。
・表情がアニメーションから自動設定で行ってくれる。
・ツールのUIが日本語をベースにしているため分かりやすい。
・UniVRM不要。

デメリット
・VRoid Studioの使用が前提。
・Modular Avatarなどのアップロード時に処理をするツールは一回処理を行わないといけない。
・VRM1.0のみ出力。
・表情設定は自動設定のみ。

そもそもVRMとは?

VRMコンソーシアムが開発する「VRM」は、プラットフォームに依存しない人型の3D アバターファイルフォーマットです。アプリケーションごとに最適化をする手間を省き、VRM対応のアプリケーションやゲームを行き来することが可能になりました。

つまりVRMアバターを所有していれば、特別な設定をせずとも、VRMに対応しているプラットフォーム間を気軽に移動できるというメリットがあります。

国産メタバースプラットフォームのclusterや、アバターダンス動画作成用スマートフォンアプリのVEAT(ビート)VMagicMirrorなどのデスクトップマスコット・トラッキングソフトなどがその一例です。

Modular AvatarなどガッツリVRChat仕様ならこれ! NDMF VRM Exporter

NDMF VRM Exporterはshimapyonさんが公開したプラグインです。VRChat向けAvatarをVRM1.0方式で変換するものであり、特徴はModularAvatarやlilToon、Avatar Optimizerの使用を想定している点です。

そのため、他のVRM変換の方法では必要だったManual Avatar Bakeなどの操作は不必要であり、アバターそのものにも不可逆的な処理を行いません。

ただしNDMFを使用している必須となりますが、Modular AvatarやAvatar Optimizerを追加する際に合わせて導入されるため、基本的には気にする必要はありません。該当のツールを使用しない場合のみ、追加しましょう。

またAvatar Optimizerもブレンドシェイプの負荷などの最適化するために、ほぼ必須となります。

Avatar Optimizerなどについて知りたい人は下記の記事をチェック!

手順① NDMF VRM Exporterをインストール

NDMF VRM Exporterを使うためには、VCCを使ってインストールする必要があります。VCCについて分からない人は、下記の記事をご覧ください。

下記のボタンからレポジトリに追加。その後、プロジェクトの管理画面から「NDMF VRM Exporter」を追加しましょう。

手順② コンポーネントを追加

Unityを開き、変換したいアバターに「VRM Export Description」を追加してください。検索する場合は「VRM」で絞れるはずです。

アバターをすでにアップロード済みの場合は、「Retrieve Metadata via VRChat API」を押すと、VRChat側にアップロードしたときの設定に合わせて、VRMの設定に必要なメタデータ・ライセンスが設定されます。

手動での設定も可能ですが、アップロードできないものではない限り、基本的にはアップロードを行って「Retrieve Metadata via VRChat API」で設定するのを推奨します。

表情の設定もコンポーネントで行えます。VRMのプリセットとカスタムで追加できる表情が設定可能です。表情の指定はブレンドシェイプとアニメーションで設定できますが、MMD互換のブレンドシェイプを使って自動設定することも可能です。(ただしアバター側に設定されている場合のみ)

FaceEmoのような表情編集のツールを使っている場合は、アニメーションを作成しているはずのため、作成したアニメーションを各表情に設定しましょう。

「MToon Options」ではMToonとlilToonの互換設定を行います。主にリムライトやアウトラインなどの有効設定を選択します。見た目に関わる部分のため、気になった場合は確認してみてください。

その他にもVRC PhysBoneやConstraintの変換なども行いますが、変換方法の詳細はREADMEよりご確認ください。

手順③ 再生ボタンでVRMファイルを生成

コンポーネントでの設定が終わった後は、再生ボタンを押すとVRMファイルが生成されます。

現時点での仕様では、以下の点に気をつけてください。
・位置も記録されているため、アバターは原点に配置してください。
・再生ボタンを押すたびにVRMファイルが生成されるため、デバッグ時はコンポーネントのチェックマークを外してください。

VRMファイルは「Assets/NDMF VRM Exporter/${シーン名}」で生成されます。

シーンが未保存の場合はUntitled

生成したVRMファイルをエクスプローラー上で確認したい場合は、VRMファイルを右クリックし「Show in Explorer」を押すとできます。別のフォルダに移す場合などに使ってください。