Unity コンソールのメッセージとログファイルには、詳細なスタックトレース情報を加えることができます。また、コンソールは、メッセージを生成したコードの行にリンクしています。これは、ログエントリーの原因となった行、メソッド、または一連の関数呼び出しを特定したい場合に便利です。
ヒント:コードを検査するもう一つの方法は、エディターまたはビルドしたプレイヤーにデバッガーを設定することです。
Unity は、マネージコードとアンマネージコード両方のスタックトレース情報を提供します。
マネージコード: Unity で動作するマネージド DLL または C# スクリプトです。Unity に同梱されているスクリプト、独自に書いたカスタムスクリプト、アセットストアプラグインに含まれるサードパーティのスクリプト、その他エンジン内で実行される C# スクリプトが該当します。
アンマネージコード: ネイティブの Unity エンジンコード、またはマシン上やターゲットビルドプラットフォーム上で直接実行されるネイティブプラグインのコードを意味します。アンマネージコードは通常、C または C++ コードからコンパイルされます。ネイティブバイナリのオリジナルのソースコードを持っている場合のみ、アクセスすることができます。通常、アンマネージコードのスタックトレースは、エラーの原因が自分のコードかエンジンコードか、またエンジンコードのどの部分にあるかを判断する必要がある場合にのみ使用します。
Unity には 3 つのスタックトレースオプションがあります。
スタックトレース、特に、完全なスタックトレースを解決することは、リソースの消費が多い操作です。スタックトレースを効率よく行うには、以下の方法があります。
注意スタックトレースオプションはビルド設定であり、ビルドされたプレイヤーに影響します。これはエディターでの表示設定ではありません。
スタックトレースに含む詳細な情報を指定するには、スクリプトAPIまたはエディタを使用します。
スクリプティング API でスタックトレースのログを制御するには、Application.SetStackTraceLogType を使用します。この API を使用して、ビルド前または実行中のプレイヤーのスタックトレース設定を変更することができます。
Player 設定ウィンドウを使用するには、Edit > Project Settings > Player > Other Settings を選択します。新しい設定でプレイヤーを再構築します。
メッセージの全文には、コードファイル内の特定の行へのリンクが含まれています。任意のリンクをクリックすると、統合開発環境 (IDE) で参照されているファイルが開きます。
ビルドされたアプリケーションは、コンソールに出力されません。スタックトレースを見るには、アプリケーションのログファイルを使用します。