VRChatにアバターをアップロードする
※ 20/05/11時点での情報です。
アップデートにより手順が変更になる可能性があります。
VRChat SDKをダウンロードする
https://vrchat.com/home/downloadからSDK2をダウンロードしてください。
SDK3はアバターアップロード未対応なのでダウンロードする必要はありません。
Unityをインストールする
SDK2の推奨バージョンは2018.4.20f1です。
(https://docs.vrchat.com/docs/current-unity-version)
Unity HubをダウンロードしてUnity Hubから対象バージョンをインストールしてください。
※ モジュールのインストールは必要ありません。
インストールリストに対象バージョンが存在しない場合
ダウンロードアーカイブより対象バージョンを選んでください。
プロジェクトを作成する
Unity Hubより新しく3Dプロジェクトを作成します。
Unity Hubに複数のUnityバージョンをインストールしている場合は新規作成の右にある「▼」から
Unity 2018.4.20f1を選択して新しいプロジェクトを作成してください。
VRChat SDKをインポートする
ダウンロードしておいたVRChat SDKをUnityにインポートしてください
Unityを開いた状態でVRChat SDKのファイルをダブルクリックすれば問題なくインポートできます。
(オプション)Dynamic Boneをインポートする
Dynamic Boneはボーンに対して物理的な挙動を追加するアセットです。
これをインポートしておくことで一部モデルで、すでにDynamic Boneが設定されている場合
その設定を引き継ぐことができますので、モデルのインポート前にDynamic Boneをインポートしておきましょう。
なお、このアセットは有料です
しかし、このアセットを使うと髪とか尻尾とかを揺らすことができ
より没入感の高いVRChatができるのでセールの時にでも買っておくことをオススメします。
特に尻尾が揺れないのは目玉焼きに醤油を掛けるぐらい犯罪的なので購入は必須と言えます。
モデルをインポートする
ここからはモデルの配布方法によってインポートの仕方が変わります。
unitypakeageの配布
だいたいはUnityを開いてインポートをするだけで終わりです。
(Dynamic Bone設定済みモデルの場合は事前にDynamic Boneをインポートする必要があります。時々、シェーダーの指定もあります、この場合も事前にシェーダーのインポートが必要です)
こちらはすでにいろいろ設定されている場合もされていない場合もありますので特に注意して配布元のインポート方法を確認してください。fbxの配布
こちらもUnityへfbxをインポートするだけです。Blenderファイルの配布
こちらは無いと思いますが、万が一Blenderファイルのみの配布だった場合
一度Blenderで開きfbxにエクスポートしてから使ったほうが良いかと思います。(問題ないか利用規約は確認してください)※ Blenderファイルでもfbxと同じような感じでできます。vrmの配布
こちらでの配布は見たこと無いのですがとりあえず。Unityで使う場合はvrmをインポートできるようにしないといけないので、下の「fbxをvrmに変換」の1、2を行ってください。その後は「vrmの設定」の1でインポートしてください。
fbxをvrmに変換
vrm変換は必須ではありませんが
よくわからない場合vrmの方が設定しやすいかと思うので変換します。
すでに最適化されているprefabが存在するならば
これらの作業は不要ですが、なにか理由があるならば行ってください。
【作業前に確認】 変換対象のfbxの利用規約を見て「変換しても問題ないか」など確認する VRChatはまだまだ整備が進んでいません、1人1人のモラルが大事です。 禁止されている事やわからない事はやらないように注意しましょう。
※ 以下の例では右近ちゃんを利用します。
VRM Converter for VRChatをダウンロード
最新バージョンで問題ないです。「VRM Converter for VRChat-xx.x.x + UniVRM-x.xx.x」をUnityにインポート
UniVRMも合わせてインポートしたいのでこちらを選択してください。fbxの正規化
Unity上でfbxを選択しインスペクターを確認し以下の事を行います。
「Rig」タブの「アニメーションタイプ」を「ヒューマノイド」にして「適用する」を押す。
上の画像の「アバターの定義」にある「設定」を押して「Head」の「Jaw」を「None」にする。
○のところを押すと修正ができる。修正後は「Done」を押す。vrmに変換する
ヒエラルキーにfbxをドラッグアンドドロップし、選択した状態で画像のところからエクスポート。
vrmの設定
vrmの変換が完了したらUnityにインポートします。
【注意】 以下の5、6を設定する前の注意。 VRChatではデフォルトだとDynamicBoneの制限があります 「揺れるボーンの数 * 当たり判定が8以上」だと制限されVRChatでは動きません。 これはVRChat内の設定で制限解除が可能です もし、こういった制限解除をしたくない場合は制限内に収めるようにしてください。 なお制限解除はVRChat内のSafetyタブのPerformance OperationからLimit dynamic Bone usageでできます。
参考:VRChat Performance — Dynamic Bone Limits System - VRChat - Medium
vrmのインポート
新しいフォルダを作成して、作成したフォルダにvrmファイルをドラッグアンドドロップしてください。マテリアル設定のコピーまたは設定
インポートされたファイルの中から「xxx.Materials」を開きシェーダーの設定をしてください。
fbxと同じ設定にするとトラブルが無いです。表情の設定 インポートされたファイルの中から「xxx.BlendShapes」の「BlendShape」を開き、表情の設定をしてください。
「A」「I」「U」「E」「O」「BLINK(まばたき)」「JOY」「ANGRY」「SORROW」「FUN」を設定すれば良いかと思います。視点の設定
FirstPersonOffsetを画像のように調整します。視点になるので目の間ぐらいにあると便利です。 その後は設定を適用してください。
揺れものの設定
あとの作業でVRMSpringBoneをDynamicBoneに変換してくれるので
この時点で揺れものの設定を行うことが可能です(Dynamic Boneのインポート必須)
ヒエラルキーのsecondaryのインスペクターにある「VRM Spring Bone」の
「Root Bones」に揺らしたい親ボーンを設定してください。
デフォルトだとかなり揺れるのでRoot Bonesの上にあるSettingsから調整できます。当たり判定の設定
揺れものに触ったり、揺れものの貫通を防ぐために当たり判定を追加できます。
当たり判定をつけたいボーンの「コンポーネントを追加」から
「VRM Spring Bone Collider Group」を追加してください。判定の調整もできます。 その後、揺れものの設定で行った「VRM Spring Bone」の「Collider Groups」に追加します。
設定による変化
設定前 設定後
vrmをvrchat用に書き出す
書き出したいモデルを選択した状態で画像のところを押します。
いろいろ設定項目が出ます。当たり判定を追加した場合は
「揺れ物」のセレクトボックスを「Convert Vrm Spring Bones And Vrm Spring Bone Collider Groups」にしてください。
VRChatにアップロード
アップロードの前にUnityを保存しておきましょう!
アップロード中にUnityが強制終了する事があります。
トラブルに巻き込まれないように、規約の確認をしっかり行いましょう。
VRChat SDKにログインします。
その後、BuillderからアバターをBuild&Publishしてください。
そうするとアップロード画面がUnityで開始されますので
必要な情報を入れてUploadします
Content Warnings - 性的な表現 - 暴力的な表現 - 血とかグロい的な表現 - その他の警告や公的な場では不適切な表現 しっかりチェックを入れて住み分けを大事にしましょう。 Sharing Private推奨です。 Publicは他の人もそのモデルを使えてしまう状態になります 大体のモデルでそれは禁止されています。
これで終わり
VRChatを楽しもう!