イネ科

すっぺらぴっちょん

VRChat向けモデルをVRM化する方法(簡易版)

使用するモデル(幽狐族のお姉様)

booth.pm booth.pm まず買いましょう。

ShaderをMToonに変換しただけのセットアップデータを使用したものです。

VRChat向けのデフォルトセットアップ。ユニティちゃんトゥーンシェーダー2.0(以降UTSと表記)で最適化されており、素晴らしいクオリティです。 VRChat用のモデルはUTSやArktoon-Shadersを用いられている場合が多いので、今回はUTSからMToonへの置換を目指していきます。出来る範囲内でVRChat向けのセットアップに近づけていく形です。幽狐族のお姉様を使用しての説明になりますが、基本的な流れは他のモデルでも同じです。購入したモデルの利用規約を遵守しましょう。

無料配布してくださっているモデルをお借りして練習するのもアリだと思います。 【CC0】オリジナルアバター「シャペル」【VRChat想定】 - てくのろじあ -teQnologia- - BOOTH
【無料配布】オリジナル3Dモデル『リズリン|Lizlin』 - 寺井カントリー|Terai Country - BOOTH

はじめに

1.VRMへの変換 Unityで新規プロジェクトを作成し、UniVRMをインポートします。
Directional Lightの色を#FFFFFFに変更しておきます。
Releases · vrm-c/UniVRM · GitHub

2.モデルをインポート モデル名.unitypackageを実行、インポートします。

3.モデルのVRM モデルのPrefabをシーンに読み込みます。読み込まれたモデルを選択し、上部に表示されているVRMのメニューからExport humanoidを実行します。VRChat用のスクリプトが残っているとエラーが表示されるので消しておきましょう。

4.VRMの読み込み プロジェクトに適当なフォルダを作成し、そこにVRMファイルをインポートします。生成されたVRMのPrefabをシーンに読み込みます。

5.VR向けのセットアップ メタ情報を修正していきます。解釈が少し難しいのですが、作者と連絡先についてはモデルを作成した方の名前。アバターに人格を与えることの許諾範囲については、明確に許可された人限定(Explictly Licensed Person)とします。元モデルの利用規約内でアバターとしての使用が、購入者のみに許可されている前提です。設定していて思ったのですが、作者以外がVRMに変換するケースを想定していない仕様な気がしてきました。


f:id:sesleria:20190806210129p:plain
メタ情報の例

その他設定は公式を参照して設定していきましょう。VRMFirstPersonのFirstPersonOffsetについてはY軸以外いじらない方が良いです。
視線制御 | VRM
ブレンドシェイプの設定 | VRM
一人称表示 | VRM
VRMSpringBone | VRM

6.Shaderの変更 ここからが一番重要なところです。各マテリアルのShaderをStandardからVRM/MToonに変更します。以降、こちらのチュートリアルに沿って変更を加えていきます。
GitHub - Santarh/MToon: Toon Shader with Unity Global Illumination

例として肌(Body)のMaterialに手を加えます。
NormalMapやRimやOutlineなど、テクスチャが用意されている場合があるので、そちらを適用していきます。 Outlineのパラメータなんかは完全に好みだと思います。他Materialについても同様に手を加えていきます。

f:id:sesleria:20190806210154p:plain
設定例

各設定が完了したら、再度VRMとして出力します。
SpringBoneの設定は完全に沼です。頑張りましょう。

最初の動画だと少しボヤけた印象でしたが、輪郭線等の表現などが良くなったと思います。今回はここまでにしておきます。追記とかしていくかもしれません。

前髪や頬染めを良い感じにする方法(幽狐族のお姉様)

【Photoshop CC】画像を半透明にする - rn.log
上記のサイトを参考に、アルファテクスチャを該当するテクスチャに対して適用。頬染めについては濃い目に表示されてしまうので、アルファテクスチャの色を調整して良い感じにしましょう。MToonをTransparent系に変更するのを忘れずに。

まとめ

現場からは以上です。