ドキュメント

Unity Engine

Unity Engine

ウェブビルドのデバッグとトラブルシューティング

Debug errors and common problems in Unity Web builds.
読み終わるまでの所要時間 8 分最終更新 1ヶ月前

Visual Studio は Unity Web コンテンツのデバッグをサポートしていません。ビルド情報の取得には以下のヒントを使用してください。

ブラウザーの JavaScript コンソールでビルドをデバッグする

Unity Web プラットフォームはファイルシステムにアクセスできないため、他のプラットフォームのようにログファイルを作成しません。ただし、すべてのログ情報 (
Debug.Log
、
Console.WriteLine
、Unity の内部ログなど) はブラウザーの JavaScript コンソールに書き込まれます。
JavaScript コンソールを開くには、以下の手順を行います。

OS

ブラウザー

説明

WindowsFirefoxCtrl + Shift + K を押します。
ChromeCtrl + Shift + J を押します。
Microsoft EdgeF12 を押します。
Internet ExplorerF12 を押します。
MacFirefoxCommand + Option + K を押します。
ChromeCommand + Option + J を押します。
Safari
  1. Preferences > Advanced > Develop の順に移動します。
  2. Command + Option + C を押します。

開発ビルドを作成してデバッグする

Unity で開発ビルドを作成してコードをデバッグできます。開発ビルドを作成するには以下を実行します。
  1. Development Build を有効にします。
開発ビルドでは、プロファイラーに接続できます。Unity はコードを 最小化 しないため、生成される JavaScript コードには人間が判読できる C++ の名前修飾 を持つ関数名が含まれます。
Debug.LogError
の使用中にブラウザーエラーが発生した場合、または例外サポートを無効にしているときに例外が発生した場合、ブラウザーはこれらを使用してスタックトレースを表示します。例外サポートを Full に設定した場合に発生するマネージスタックトレースとは異なり、これらのスタックトレースには修飾名が付いており、マネージコードと内部的な Unity エンジンコードが含まれています。

例外のサポート

ウェブにはさまざまなレベルの例外サポートがありますが、Unity Web は明示的にスローされた例外のみをデフォルトでサポートします。詳細については、Web Player 設定 を参照してください。例外サポートを Full に設定すると、IL2CPP によって生成されたコードで追加のチェックを行い、マネージコードの null 参照と範囲外の配列要素へのアクセスをキャッチできます。これらの追加のチェックはパフォーマンスに大きく影響し、コードサイズやロード時間を増加させるため、デバッグにのみ使用してください。
例外サポートを Full に設定すると、マネージコードのスタックトレースを生成するための関数名も出力されます。このため、キャッチできない例外と
Debug.Log
ステートメントのスタックトレースがコンソールに表示されます。スタックトレース文字列を取得するには、
System.Environment.StackTrace
を使用します。

トラブルシューティング

問題: ビルドにメモリ不足が発生する

これは一般的な問題で、特に 32 ビットブラウザーで発生します。ウェブのメモリ問題とその修正方法の詳細は、Unity Web のメモリ を参照してください。

エラーメッセージIncorrect header check

ブラウザーのコンソールログは、通常、不適切なサーバー設定が原因でこのエラーを出力します。リリースビルドを展開する方法の詳細は、圧縮ビルドの展開 に関するドキュメントを参照してください。

エラーメッセージDecompressing this format (1) isn't supported on this platform

コンテンツが LZMA (Unity Web はこれをサポートしていません) を使用して圧縮されたアセットバンドルを読み込もうとすると、ブラウザーコンソールログはこのエラーを出力します。この問題を解決するには、LZ4 圧縮を使用してアセットバンドルを再圧縮します。ウェブ用の圧縮の詳細は、Web ビルド に関するドキュメント、特に アセットバンドル のセクションを参照してください。

その他の参考資料