WebGL
QuantumはWebGLなどの複数のプラットフォームをサポートしています。WebGLで作業する際には、ディベロッパーは固有の課題に留意する必要があります。このページでは、考慮が必要な事項について全般的なリストを記載します。
Unityバージョン
WebGLで最適なパフォーマンスを得るには、Unityバージョン 2021.2.8f1
以降の使用を推奨します。それ以前のUnityバージョンでは、WebGLでの実行時にパフォーマンスが低下する可能性があります。WebGLでビルドする際の最低許容バージョンは 2018.4.30f1
です。
Quantum WebGLは、Quantumバージョン2.1 Build 967からサポートされています。
WebGLパフォーマンス
WebGLは独自の環境のため、一定の制約があります。一般的に、他のプラットフォームと比較して性能の低下が予想されます。したがって最適なパフォーマンスを確保するには、エディター内だけでなくWebGLビルドでアプリケーションのパフォーマンスをテストすることが極めて重要です。
プレイヤー設定でrunInBackground
オプションを無効にすると、プレイヤーが他のタブに切り替えたときにアプリケーションの実行が停止します。タブが長時間アクティブでない場合にクライアントは切断され、そのタブにフォーカスが戻ると接続を再確立する必要があります。
WebGLのパフォーマンスは低いため、QuantumコードプロジェクトをReleaseモードでビルドしUnityをIL2CPPに設定することを推奨します。量子コードプロジェクトのデバッグビルドは、WebGLでは極めて遅くなる可能性があります。
Unity WebGLビルドはマルチスレッドに対応していません。シミュレーションは自動的にWebGLのメインスレッドに制限され、SimulationConfig
のThreadCount
の設定は無視されます。
スタックのトレース
リリースビルドでのWebGLのパフォーマンスを向上するには、Unityでのスタックトレースを無効にします。edit > project settings > Player > Other Settings
へと進み、Stack Trace*
にスクロールダウンします。Warning
とLog
のスタックトレースをNone
に設定します。
WebSocket
ブラウザは直接UDP接続を確立できないため、代わりにTCP上のWebSocketが利用されます。しかし、TCPの信頼性の高い連続した転送プロトコルは、ネットワーク接続が不十分なプレイヤーにとってゲームプレイに悪影響を及ぼす可能性があります。最高のプレイヤー体験を提供するために、ゲームをダウンロードで提供することも推奨します。
アプリケーションがWebSocketに切り替わっているという警告がブラウザに出ることがありますが、これは無視して問題ありません。
ショーケース
その他のWebGLデモは以下のItch.ioページを参照ください!
Back to top