バーチャル3Dクリエイター神部まゆみです(*^-^*)
VRoidモデルをVRChatに上げてMeta Quest2で動かしてみたから、それについての記事です。
検索すれば先輩たちがもっと詳しく書いてくれてるかな?
でも「この通りやったら動いた!」だと理解も深まらなそうだから、一から試行錯誤しつつやってみます。
詰まったらその都度調べてみる感じで。
使用したのはVRoid Studio v1.11.1、unity2019.4.31f1、VRChat SDK3.0です。
追記:2023/03/16現在で最新版の VRoid Studio v1.20.2 でも動きました。
VRoid Studio v1.20.2からVRM1.0エクスポートできるようになったけど、VRM1.0モデルも無事VRChatにアップできました(後述します)。
あとついでにワールドもアップしてみましたが↓、こちらはアバターと違って制限が緩いっぽいです。

結構簡単にアップできたのでワールドも作ってみると面白いかも。
- 事前準備
- VRChat SDK3.0でPC版のアバターをアップした手順
- 警告をどうするか?
- A material on this avatar has custom shader keywords. Please consider optimizing it using the Shader Keywords Utility.
- Lower arm is not first child of UpperArm or Hand is not first child of LowerArm: you may have problems with Forearm rotations.
- The angle between pelvis and thigh bones should be closed to 180 degrees(this avatar’s angle is 0.0) Your avatar may not work well with full-body IK and Tracking
- つづく?
事前準備
事前準備について一応おさらいしておきます。
VRoid Studioでモデルをエクスポートしておく
最初にVRoid Studioでモデルを作成してVRMエクスポートしておく必要があります。
ポリゴン・マテリアル・ボーンを削減しておいたほうがいいかも
VRChatのPC版はQuest版より制限が緩いけど、重いと読み込みに時間がかかるから、見た目が変にならない範囲で軽くしておいたほうが良いかも。
全部マックス削減したら三分の一くらいになった。
このあたりが限界かな?
やりすぎると髪の毛や靴がおかしくなったので、ちょっと余裕を持たせておいたほうがいいかも。
でもボーンがこれ以上減らないので、Quest版でパフォーマンス上げたりFallbackアバターにしたいなら、blenderで手動でボーン削除して減らさないといけないかも。
ポリゴン数もこれ以上減らしたいならblenderでデシメートするしかないかな。
ボーンは髪の毛と服のボーンをblenderで削除したら59まで減らせました。

VRChatのランクを上げておく
これは以前記事で書きました。


unityをインストール
2023/01/05現在、VRChatのunityバージョンはまだunity2019.4.31f1ですね。
1年くらいバージョン上がってないみたいだけど、アバターやワールドを新しいバージョンに対応させるのは面倒だから頻繁にはやらないのかな(;^_^A
ここのアーカイブからダウンロードできます。

unityにuniVRMを入れておく
ここからuniVRMのunitypackageをダウンロードします。
v.0.100.0からは、もうunity2020.3以降のバージョンしかサポートしなくなったらしいですΣ(゚Д゚)
このバージョンから Unity の最低バージョンがUnity-2020.3
になりました。Unity-2021 も UPM の動作を確認しています。
2023/03/16現在、VRChatは2019.4.31f1なんだよね…。
まぁこれでも普通に動くんじゃないかって気もするけど、念のためバージョン0.9台の最新版にしておけばいいかな。
2023/03/16現在最新版のv0.109.0のVRM0のほうはVRChatアップまでできたけど、不具合があっても文句は言えないかも。
2023/03/16現在だと、v0.9台の最新版はv0.99.4っぽいです。
v0.9台のバージョンはしばらくv0.99.4で止まってるので、多分これ以上は何か不具合がなければ出ないかな?
ダウンロードしたらunityアセットフォルダにD&Dしてインポートしましょう。
2023/03/16追記:VRoidStudio 1.20.2からエクスポートできるようになったVRM1.0もアップできた
VRoidStudio 1.20.2からVRM1.0に対応したみたいだけど、uniVRM v0.99.4でもアップできました。
↓の二つを入れたらいけた。下のほうのやつがVRM1.0に対応したファイルっぽいです。
uniVRM v0.109ではVRM0のみアップできた
VRChat対応バージョンのunity2019.4.31f1でもuniVRM v0.100.0以降のやつ使えるかなと思ってv0.109.0を試してみたけど、VRM0のやつは普通にアップできた。
けど上のVRM 1.0のほうはunitypackageインポートの段階でエラーが出てダメだった。
両方入れてみたけどエラーでダメだった。
v0.100.0以降はunity2020以降しかサポートしないって言ってるし、VRChatのunityバージョンが上がるまではv0.99.4を使えばいいかな?
unityにVRC SDK3.0 Avatarを入れておく
VRChatアカウントでログインしてダウンロードページに行く。
ダウンロードしたunitypackageをunityアセットフォルダにD&DすればOK。
追記:この記事↓にも書いたけど、Creator CompanionとかいうのをダウンロードするとSDKのバージョン更新がしやすくてラクかもしれません。

VRChat SDK3.0でPC版のアバターをアップした手順
Quest版のも上げようかと思ったけど、とりあえず今回はPC版だけね。
手順1:VRoidモデルをインポートしてシーンに配置する
VRoidモデルをインポートするとファイルがたくさんできるので、フォルダ作ってインポートしたほうがいいかも。
シーンに配置します。
一応トランスフォーム位置をXYZ0にしておく。
VRC用に目線を合わせる時にこっちのほうがやりやすかったため。
手順2:VRC Avatar Descriptorコンポーネントを追加して設定
コンポーネントを追加 → vrc と入れれば出ます。
とりあえず今回は目線の位置だけ合わせておきます。
手順3:エラーを潰す
とりあえず一個だけなのでAuto Fixを押せばOK。
A Material on~の警告はとりあえず無視で。
手順4:アップロードする
警告は出てるけどパフォーマンスGoodで行けるっぽいのでこれでアップしてみます。
一応カメラの位置だけ調整してアップ。無事成功しました。
手順5:VRChatで動作確認する
ちゃんと動いた!やったぜ( *´艸`)
PCVRでも動いた!
せっかくだから
Meta Quest2 + VirtualDesktop + SteamVRで、VRモードでもやってみました。
しっかり受肉できたでござるぞ( *´艸`)
警告をどうするか?
とりあえずエラーではないからアップできたけど、警告が気になるかな。
A material on this avatar has custom shader keywords. Please consider optimizing it using the Shader Keywords Utility.
調べたけどあんまりいじらないほうがいいっぽい?
とりあえず動くから無視でいいかな。
Lower arm is not first child of UpperArm or Hand is not first child of LowerArm: you may have problems with Forearm rotations.
これ調べたら無視してもいいらしいけど、多分UpperArmの子の一番上にLowerArmが来るように設定できればいいのかな?
そもそもUpperArmの子にLowerArm以外あるのかと見てみたら、どうやらVRoidの服にボーンがあるっぽい。
Topsって書いてあるから多分そう。
LowerLeg is not first chiled~も、スカートのボーンが原因みたいです。
blenderに読み込んで服のボーンを削除したら直った
服にボーンがあってもVRChatでは多分使わないと思ったので、blenderで読み込んでボーン削除したら警告消えました。
その後普通にアップしてVRChatで動いたから多分大丈夫だと思う。
インポート設定とかプレハブ設定とかで、LowerArmの順番を一番上にできれば削除しなくても大丈夫かもしれない。
でも削除しないと後でやるFallbackアバターの制限にひっかかるので、思い切って削除しました。
詳細はこちらの記事で。

The angle between pelvis and thigh bones should be closed to 180 degrees(this avatar’s angle is 0.0) Your avatar may not work well with full-body IK and Tracking
フルボディトラッキングする場合に必要になるっぽい。
blenderでボーンの位置を変える感じかな?
とりあえずMeta Quest2しか持ってないからいいか…。
こちらの優秀な先輩によると、Hips~UpperLegの角度の問題みたい。

Hipsの位置を動かして180度以上にすればいいのかな?ウェイトがおかしくならないか不安だけど…。
後でやって記事にしてみるかもしれない。
つづく?
案外簡単にできて良かった!
今Quest用のやつもアップしようと思ってやってるけど、テクスチャ透過の問題でつまづいた(;^_^A
一応アップはできたけど、手動でテクスチャを合成してやらないといけないっぽい。
でもクオリティ落とせばFallbackアバターにもできるかも?
もうちょっといじってみます(*^-^*)
追記:続きを書きました

↓Fallbackアバターもアップしてみました
