VRCにて初めてのアバターアップ時につまずきやすいところ
これを見て原因を一つ一つ潰していきましょう!
やり方が分かってくればあなたも立派なVRChatユーザー。
AvatarDescriptor
ドが付くほど定番のつまずきポイント。
アップロードしたいアバター(3Dモデル)にAvatarDescriptor(その3DモデルをVRChatのものとして定義するための設定)が未設定の状態でアップロードしようとすると出てくるエラーメッセージ。
Unity内に入れたアバターの拡張子はFBXだったりしませんか?
.prefabという拡張子(そのファイルがどういうものかを表す文字列)のデータを使ってあげてください!
別の理由として当該のアバターとプロジェクト内にインポートしたSDKのバージョンがズレている状態で .prefab を読み込ませた場合もこのエラーが出ます。
「とりあえず数字が大きいからこれ使っとこう!」ではなく、きちんとアバターの配布ページやReadmeに書かれている内容に従ってインポートしておきましょう。
※もしAvatars(アバター)3.0対応!と書かれていないアバターならば大体はSDK2でセットアップされています
いずれにせよ、自分で設定が出来るならこの限りではありません。
なんかモデルがピンク色に
大体のアバターにはマテリアルという『この3Dモデルのこの部分はこちらの定義に従って表示してね』という設定が行われているのですが、その設定で使われているシェーダーがインポートされていないと紫色になってしまいます。
(ちなみに、正常に表示されていてもVRChatにアップロードした際に稀に起こることがあるそう)
こちらも、アバターの配布ページやReadmeに書かれている内容に従ってシェーダーをインポートしておけば遭遇はしないはずなので、こうなった場合はまずはきちんとReadmeを読んで作業を進めていきましょう。
VRCSDKのメニューがちゃんと出ない
検索するとよく「Unityの再起動」「プロジェクトの作り直し」という解消法が出ていますが、そもそもメニューが表示されなくなったのは高確率で直前に導入したツールが原因だったりします。
そのため、エラーを起こしているツールを取り除くことで事象は解消されます。その場合、事象が起こしているツールは当然使えないことが多いのでそれ用の環境を用意したりする必要があります。
一例
VRCSDK3(Avatar)を導入している環境に、EmoteSwitchのツールを入れるとこの事象が発生します。
この場合、EmoteSwitchのアセットを削除したうえでUnityの再起動で大体復活します。
なんかエラーが出てアップロードが失敗する
VRCSDKのSettingタブから「Future Proof」のチェックを外すと成功するようになるかも…?
それでも解消されないこともあります…が、その場合はVRChatのサーバー側が原因による謎エラーということもあるので時間をおいて再チャレンジしてみると案外うまくいくかもしれません。
PC版でDynamic Boneを設定したのに髪が揺れない
実はDynamic Boneの揺れはVRChatの初期設定では一定以上のボーン数による揺れは発生しないようにリミットが掛かっているため、自分で『Safety→Performance Setting→Dynamic Bone Limit』からチェックを解除してあげる必要があります。
なお、外しても揺れない場合はそもそも設定がおかしい可能性もあるのでUnity上で本当に揺れているか確認してみてください。
PC版とQuest版でアバターってどうなってるの?
VRChatにアップロードしたアバターには必ず「ブループリントID」というURLのようなものが割り振られており、このIDと一致するデータをPC版とQuest版の両方で見に行っています。
そのため、
PC版「アバターAをID=Aにアップロード」
Quest版「アバターA(Quest)をID=Aにアップロード」
とやることでPC版とQuest版それぞれでアバターが表示されるようになっています。
※これが[Switch Platform]したうえでアップロードを行うという作業が生まれるカラクリ
IDさえ一致していればOKですので、例えばPC版ではハイクオリティなアバターを使用し、Quest版では似ても似つかぬ適当なアバターを見せるということも可能です。
※やりすぎるとなんとも言えない気分になるのでほどほどに。