【VRChat】ワールドのアップデートとQuest対応を少し楽にする話
ワールドをアップデートしていく中で工夫している点やアップデート時のQuest対応などのポイントをまとめてあります。
1.変える部分・変えない部分をわける
私のワールドでは庭の部分で四季を変化させています。
変える部分をほぼ固定にすることでチェックする箇所を減らして簡略化しています。
2.変える部分はHierarchyで一括切り替え
季節やイベントで変化する部分はまとめておいて必要な時に切り替え、他の項目は非表示にして手間を省きます。
3.Quest対応
3-1. オブジェクトの距離
Questは薄いオブジェクトが別のオブジェクトと近すぎると描画がちらつく不具合があります。あまりこだわりがなければ最初からQuestでも問題ない距離をあけて配置する方が切り替えの手間がなく楽です。
3-2. Texture
解像度はPCの半分もしくは512x512が目安です。グラデーションがおかしい場合はASTCにしましょう。アセットをインポートした時にまとめてやってしまいます。
3-3. Udon
動作しない部分は無効にするか置き換えになります。致命的に不具合があった場合は全部無効にして1つずつ有効にしていくことをおすすめします。
3-4. Shader
不具合がある箇所はStandardShaderや対応しているシェーダーに置き換えます。透過処理をするガラス系のシェーダーや水面系のシェーダーがよく不具合を起こします。
Shaderで表現できなくなったものは別の方法で再現したりもします。例えば私のワールドPC版の月はShaderですが、Quest版は遠くに物理で月が置いてあります。このように特定機能を使用しない事でQuestでも使用できるShaderもあります。
こちらに対応シェーダーがよくまとめられているのでお世話になってます。
3-5. Mirror
基本はアンチエイリアスをx1かnoneまで落としてそれでもだめなら解像度を落とすか軽量ミラーに置き換えます。表現によっては最初から軽量ミラーの方がいいかもしれません。オブジェクトが大量にある方向に鏡を向けないのもポイントです。
3-6. 同期関連
QuestとPCの同期ズレを防止するためにQuestでは使えないオブジェクトもEditorOnlyにはせず無効にして上げてしまう事をおすすめします。※現在はネットワークIDが保持されるようになりましたのでEditorOnlyでも良いかもしれません。
4.Quest対応も一括切り替え
特定の箇所がいつも不具合を起こすならHierarchyにまとめて切り替えしてしまった方が楽です。
こちらのツールを使うとマテリアルとSkyBoxを一括で変更できます。動画プレイヤーのURLもQuestで再生可能にしてくれるので便利です。
PCとQuestでオブジェクトの配置が変わった場合はテクスチャに影が焼き付いたままになっているので気になる場合はライトベイクをやり直しましょう。
5.終わりに
ここまですると次回からは数ステップで変更&クエスト化できます。何かインポートしたら設定を作ってしまうと次回から手間が省けて楽です。
使い勝手にこだわった四季を切り替えできるワールドです。
ホームワールドにいかがでしょう?