つくりたいワールドはいっぱい❗️
楽譜がおけてー演奏練習ができてーFriendも呼べたりー✨
そんなHomeワールド‼️
という願望がつよかったので、最初はそれを作りはじめました🌟
今回はそんな制作中のワールドの作業メモです。
ひとまずこんな感じにできました🌟
World Publishのためにやるべきこと
スタートライン
VRCWorld Prefabをヒエラルキーに置く
最低限これだけで大丈夫
ミラー、ピックアップの基礎
ミラー改良
- ローカル鏡の作り方
- ミラーでUIとかネームプレートを隠したい場合の説明もあり
環境設定
ライティング
屋内ワールドを作る上で、ライティングの知識/テクニックは必須
基礎
- 【Unity】入門ライティング設定!
- あまり重くならない範囲でライティングを調整し、見栄えを良くする【Unity】
- Unity小林様にライティングについてご教示頂きました
- Unity ライトのベイク方法簡易まとめ
Bake 高速化
LightmapperのデフォルトがEnlightenになってるので、Progressive GPU に変えましょう。
macはUnity2019以降でないと使えないとかいうオチ。Progressive CPU の方はいけるのでそちらは?
とおもったけど、めっちゃ不安定で、高確率でBake中にクラッシュする。うーん...
その他 参考URL
素材調整テクニック
Unity2019(HDRP)向けのAssetを使う方法
最近のAssetStoreでは、そもそもDLできないようにされているので、World作業用(Unity 2018)とは別に、Unity 2019のプロジェクトを作ってそちらでImportする。
その上で、シェーダーを適当にURPで扱えるものに書き換えて、Export Packageして、World作業用のプロジェクトに持ち込むと良い。
外部画像読み込み
VRCPanorama、、というキーワードはでてくるが、いまいち、じゃぁ最低限なにすればいいの?という話
Quadを適当に作って、縦横比率を調整
VRC_Data Storage, VRC_Panorama を Attach
Data Storageの方は、Size1でint領域を確保
Panoramaの方はSize1で読込先のUrlのみ記載。多分Httpsにしておいた方がよい(特にQuest対応考えた場合、Httpは蹴られる)
これでOK。
ページ切り替えをしたい場合は、PanoramaのSizeを2以上にして、複数指定しておく。
初期インデックスが、Data Storage側のデフォルト値なので、複数ページ管理するときは忘れずに。
読み込みサイズに関する話
100KBに抑えた方がよいとかよくないとか 海外向けも考慮するなら、CDNにおいた方がよさそう
uGUI
フォント周り
Textmesh Proが使える。
フォント埋め込みはMITライセンスの適当なものを引張ってきてSDF変換してやれば、普通にいける。
が、サイズが大きいとWorldのサイズ肥大化に直結する。
第一水準や、最低限の文字にとどめて、サイズも抑えて、2Kできれば1Kに抑えておきたいところ。
その他 参考URL
サウンド周り
基本
音の発生源に Audio Source、 VRC_Spatial Audio Source コンポーネントをつける
後述のバグにより制御する方法がないので、Play On Awake を On にして、GameObject の ON/OFF で再生を制御する以外に方法がなさそう
VRC_Spatial Audio Source コンポーネントの方は、音の発生源に合わせて3D的な反響/減衰表現したいのなら、Audio Source側も含めてそれなりに設定を。
そうでないなら、Enable Spatialization を OFFにする(現在の位置によらず一定の音を鳴らしたい場合はコレ)
VRC_AudioBankはバグっている(2020/4/20時点)
かなり試行錯誤して、うごかないー💢
と思ってたら、現在このコンポーネント壊れてる(SDK側のバグ) ようなので、諦めるしかなさそう
制作支援ツール
オブジェクト配置補助
手に馴染むものならなんでもいいけど、配置補助系のAssetは必須
私が使ってるのはこれ
めっちゃ簡単な使い方メモ
最適化補助
作ってゆくうちにワールドの容量がどんどん大きく💦
という場合、ビルド結果の解析ツールを使いましょう。
標準で用意されていて、Package Managerから導入すれば最終ビルド内容の解析レポートがみれるように❗️
簡単な使い方はこちらを参考にー
UnityHubのテンプレート機能
- 無駄な初期セットアップを省略するため、必要な一連のAssetを事前登録しておくシステム。
- https://unitytips.hatenablog.jp/entry/2019/05/18/230335
プレイヤー負荷対策
テクニック
- VRChat ワールド軽量化のための設定+オクルージョンカリングについて
- 【Unity】Occlusion Portalについて
- カリングが暴れて、意図せず消えたり見えたりする現象対策
ライティングは沼だけど、沼を超えたさきにすごい絵が待ってるから 頑張る価値はある‼️