VRMファイルの作り方
VRMとは、主にVRアプリ向けの人型のアバターデータを扱うためのデータ形式です。glTFという汎用的な3Dデータ形式をベースとして作られた形式です。
VRMを共通フォーマットとして用いれば、ひとつのVRMモデルを持って、様々なアプリの世界に同じ姿で入ることができます。
Vketでは、VketCloudへのモデル読み込みのために、このVRMとglbを用いています。
ここでは、HumanoidアバターをVketMallでWeb入稿することを前提に、VRMについて解説します。Humanoidアバター以外の場合は、glbファイルの作り方 をご参照ください。
何に使えるのか?
VRMに対応しているアプリ であれば、どのアプリでも基本的に読みこませて使う事ができます。
Vtuber向けの配信アプリやアバター撮影用アプリ、一部VRSNSなどでも対応しています。そのため販売アバターにVRMファイルを同封する方もいらっしゃいます。
VRM化したモデルは、VketMall-ProtoへのWEB入稿の他にもご活用いただけるかもしれません。
VRMファイルの作り方
VRMファイルは、元となるモデルをUnity上で「UniVRM」を使って変換することで作成できます。
ここでは、大まかな流れをご説明します。
※詳しくは VRMコンソーシアム様の公式リファレンスをご覧ください。
https://vrm.dev/how_to_make_vrm/
1. Unityに「UniVRM」をインポートする
まずはUniVRMを ダウンロード します。最新版はまだ不具合がある可能性があるため、バージョンは公式が安定版としているUniVRM-0.66をお勧めします。
2. Unityプロジェクトを開く。
開く前にUniVRMを使用できるバージョンかどうか確認しましょう。UniVRM-0.66であれば2018.4.LTS以降のバージョンであれば問題なく使用する事ができます。
3. Unityプロジェクトに先ほどダウンロードしたUniVRMをインポートします。
4. FBXやテクスチャなどモデルデータをインポートする
- 自分のモデルで必要となるファイルをUnityにimportします。
- モデルのfbxのマテリアルを設定します。
- VRMではMToon、Unlit と Standardの3種類のシェーダーしか使用できません。既にほかのシェーダーを使用している場合はMToon、Unlit と Standardのどれかに変更しましょう。
- 例えば下の例の場合、VRM化予定のモデルにまんまるシェーダーを使用していたためMToonシェーダーに変更しました。
5. モデルをHumanoidにします。
6. 「正規化」を行う
上記で調整したモデルを、一度仮でVRMモデル化、各種調整を行います。「正規化」では、VRM化まで行う作業までとなります。
- シーン上に読み込んだモデルを置きます。
- メニューから [VRM0] > ]Export UniVRM-x.xx.x(バージョン番号)] を開きます。
- VRM Exporter が開くので、[ExportRoot] にモデルをヒエラルキーからドロップします。
7. ライセンス情報を入力します。
8. Exportしましょう。Exportしたvrmファイルは任意の場所に保存します。
※そのほかにも何らかのエラーが起きている場合はExportが出来ない場合があります。エラー内容を確認、公式リファレンスを参考に再調整しましょう。
https://vrm.dev/how_to_make_vrm/convert_from_humanoid_model/
9. モデルを調整する
「正規化」したモデルを改めて再調整、完成までもっていく作業を行います。
- ExportしたVRMファイルをもう一度Unityにimportします
作業中のUnityプロジェクト>Asset下にvrmファイルをExportしたのであれば、再度importする必要ありません。
- シーン上に読み込んだVRMモデルを置きます。
- VRMモデルを選択、インスペクタから各種設定を行います。(タイトル、作者、ライセンス情報など)
※その他、表情や揺れものの設定もここで行う事ができます。詳しくは公式リファレンスをご参照
https://vrm.dev/how_to_make_vrm/setup_vrm/
10. VRMモデルを最終出力する
調整が終わったら、VRMモデルを選択し、再度メニューから[VRM0] > ]Export UniVRM-x.xx.x(バージョン番号)]を選択します。
VRM Exporter で Exportして任意の場所に保存しましょう。
これでVRMファイルは完成です!
お疲れ様でした!