This document is about: QUANTUM 3
SWITCH TO

WebGL

Quantumは複数のプラットフォームをサポートし、そこにはWebGLも含まれますが、WebGLで動作させるために開発者が注意すべき固有の課題が存在します。このページは、それら考慮事項の一覧になります。

WebGLパフォーマンス

WebGLは一定の制限がある特殊な環境です。一般的に、パフォーマンスは他のプラットフォームに比べて低いことが予想されます。そのため、最適なパフォーマンスを確保するには、エディター上だけではなくWebGLビルドでアプリケーションのパフォーマンスをテストすることが重要です。

runInBackgroundオプションがPlayer Settingsで無効になっている場合、プレイヤーが別のタブに切り替えた際にアプリケーションが停止します。タブが長時間非アクティブになっているとクライアントは切断されるため、タブにフォーカスが戻ったら接続を再確立する必要があります。

WebGLのパフォーマンスは低いため、Quantumコードプロジェクトはリリースモードでビルドし、UnityはIL2CPPに設定することをお勧めします。Quantumコードプロジェクトのデバッグビルドは、WebGLでは非常に遅くなります。

Unityの古いバージョンのWebGLはシングルスレッドのみをサポートしていて、シミュレーションはメインスレッドに制限され、SimulationConfigThreadCount設定は無視されます。Unity 6からは、実験的機能としてマルチスレッドが導入され、PlayerSettingsから有効にすることができます。

Stack Trace Setting in Unity

スタックトレース

リリースビルドのWebGLパフォーマンスを向上するために、Unityのログのスタックトレースを無効にすることができます。edit > project settings > Player > Other Settingsに移動し、Stack Trace*までスクロールして、Warning/LogのスタックトレースをNoneに設定してください。

Stack Trace Setting in Unity

WebSockets

ブラウザは直接UDP接続を確立できず、かわりにTCP上のWebSocketが使用されます。しかし、TCPには信頼性があり、シーケンスの順序制御は、ネットワーク接続状況が悪いプレイヤーのゲームプレイに悪影響を及ぼす可能性があります。最高のプレイ体験を提供するには、ゲームをダウンロードさせることも推奨されます。

アプリケーションがWebSocketに切り替わる際に、ブラウザに警告が表示されることもありますが、これは安全に無視できます。

インタラクティブなデモ

ウェブブラウザで今すぐ試すことができるQuantum WebGLビルドのデモになります。

PhotonのItch.ioページには、さらに多くのWebGLデモがあります。

Back to top