みんなが一緒に楽しめる空間を作るために。
技術で実現する「誰も置いていかない」世界。
KemonoBarずんどこには、毎週いろんな人が来てくれます。
ハイエンドPCの人も、Questの人も、みんな一緒に笑いたい。
だから、「誰も置いていかない」ために、軽量化にこだわっています。
目の前のできることからひとつずつ。日々、おおさきくん、がんばってます!
「軽量化」という言葉でひとくくりにされがちですが、実は3つの異なる側面があります。
アップロードサイズ
ワールドに入る時の待ち時間に関わる部分です。
快適化
入った後、カクカクしないこと。FPSの安定性に関わります。
unitypackage容量
ワールドを作る人がBoothからダウンロードする際の快適さです。
大崎商会では、この3つ全てを意識しています。
それぞれがトレードオフの関係にあることも多く、日々、バランスを考えながら取り組んでいます。
最近のアセットでは、テクスチャにクランチ圧縮をかけています。品質は50程度に設定し、ワールドアップロード時の容量削減を図っています。
多くの画像は1024pxか512pxに設定しています。接近して見ても問題ない範囲で、適切な解像度を選んでいます。
最近力を入れている部分です。ステレオである必要がないものはモノラルに変換しています。
インポート設定でFBX圧縮を有効にしています。
VRWorld Toolkitというツールを使って、最適化状況を確認しています。
数値で見えると、改善すべき箇所がわかりやすくなります。
モデリング時点で、必要最小限のポリゴン数を心がけています。
皿の裏側など、通常見えない部分は削除しています。
プリミティブコライダー(Box、Sphere、Capsule)を中心に使用し、Mesh Colliderはなるべく避けています。
基本的には「Standard」と「Toon Standard」というVRC SDKに含まれる標準シェーダーを使用しています。
モバイル対応シェーダーを使用し、Quest環境でも動作するよう配慮しています。
パフォーマンスへの影響を考慮し、半透明表現が必要な場合もCutoutで代用できないか検討しています。
ここが大崎商会の特に力を入れている部分です。
毎フレーム実行されるUpdate()は、パフォーマンスへの影響を考慮して最小限にしています。
代わりに以下のような工夫をしています。
GetComponent()などの処理は、Start()で一度だけ実行して変数に保存しています。
さらに、Editorで設定できないかも常に検討しています。
大崎商会のアセットでは、SendCustomNetworkEventを中心に使用しています。これにより以下を実現しています。
VRChatのネットワーク環境は不安定なこともあるため、以下のような設計方針を採用しています。
例えば、「おつまみ20」というアセットには、1000個以上の食べ物オブジェクトが存在します。
通常であれば、1000個分のAudioSourceとParticleSystemが必要になります。
大崎商会では、AudioPoolとParticlePoolという仕組みを作り、少数のコンポーネントを使い回すことで、メモリとCPU負荷を軽減しています。
後から入ってきた人にも同じ世界を見てもらいたいという思いから、レイトジョイナー対応にも取り組んでいます。ただし、すべての情報を送るとネットワークに負荷がかかるため、以下のような工夫をしています。
LODは遠くにあるときに低ポリゴン版に切り替える技術ですが、大崎商会では現時点では採用していません。
ただし、将来的に大型オブジェクトを扱う場合は、検討する可能性もあります。
Boothからダウンロードして、Unityに入れる際の快適さにも配慮しています。
Unityのインポート設定に合わせて、事前に画像を圧縮しています。
開発中専用のデータや、他のプランのデータが混ざらないように、専用のPackerツールを作成・運用しています。
これによって、制作者の混乱を防ぎ、容量も最小限にしています。
規格化して、複数のオブジェクトで同じテクスチャを使うこともあります。
可能な限りフォントファイルを使わない工夫をしています。
といったことを常に検討しています。
Unity標準+VRC標準で実現できることを優先しています。
不要なデータは削減しています。
軽量化には、しばしば矛盾が生じます。
クランチ圧縮を強くすると、ワールド読み込み(1)は早くなりますが、画質への影響があります
LODを実装すると、動作(2)は軽くなる可能性がありますが、データ容量(3)は増えます
テクスチャを共有すると、データ容量(3)は減りますが、見た目のバリエーションには制約が生じます
大崎商会では、その都度、用途とバランスを考えて判断しています。
正直に言うと、まだできていないこと、勉強中のこともたくさんあります。
ただ、「KemonoBarずんどこ」で毎週20名以上の規模で実際に使っていただき、おおむね快適に動いているという実績があります。
それが、現時点での大崎商会の品質の目安です。
大崎商会のアセットは、この記事で紹介した工夫を実装しています。
※この記事は2026年1月1日時点の情報です。過去のアセットは現在の基準を満たしていない場合があります。また、今後情報が古くなる可能性もありますので、ご了承ください。