Windows ストアアプリ: .NET Scripting Backend でのプラグイン設定
Windows ストア: IL2CPP Scripting Backend

Windows ストアアプリ: .NET Scripting Backend でのデバッギング

クラッシュしたり不可解な動作に遭遇した場合は、次の場所にある player ログを常にチェックしてください - <user>\AppData\Local\Packages<productname>\TempState\UnityPlayer.log バグの報告する際にはこの貴重な情報が含まれている player ログを是非含めてください。

現状では C# スクリプトのみデバッグが可能です。

備考 : Windows ストアアプリは Microsoft .NET で実行されるため、MonoDevelop ではスクリプトのデバッグが行えません。代わりに Visual Studio 2013 を使用します。

簡単な手順のやり方は次のとおりです:

  • Windows ストアアプリのビルドの際には Unity C# projects にチェックします
  • これで Windows ストアアプリと互換性のある Assembly-CSharp-* プロジェクトが生成されます
  • 備考 : もし直前の Unity C# projects がチェックされていなかった場合、フォルダーを空にするか * .sln と * .csproj を削除してビルドしてください。Unity はこれらのファイルに参照を追加する必要がありますが、すでに存在する場合は上書きされないからです
  • ソリューションを開くと、Assembly-CSharp-* プロジェクトが含まれています
  • 確認したい場所にブレークポイントを配置して、シンプルにアプリケーションをデバッガーで開始します

例外

アプリケーションの実行中、Visual Studio へ例外が発生した場合に停止するよう指示できます。Debug -> Exceptions を選択します:

  • マネージドの例外には Common Language Runtime Exceptions と Managed Debugging Assistants が有効にできます
  • 不明な場所で例外が発生した場合は、すべての例外を有効にできます

備考 : すべての例外を有効にした場合、Visual Studio は WinRT originate errorWinRT transform error のような無害な例外が発生した場合でも停止するため、それらは除外しそのまま継続します

UnityPlayer.dll からのコールスタックの解決

Unity エンジン自身がクラッシュしたした場合、コールスタックを解析することで役立つ情報を得られ、必要であればバグ報告とともに提供可能です。

備考 : Unity エンジンのコールスタックは .pdb ファイルが使えるのなら解析可能で、 .pdb ファイルは Debug 構成で提供されます。

Unity エンジンがクラッシュしブレークポイントで停止したとします ( 備考 : 次のメニューからすべての例外を有効にした場合は Visual Studio がクラッシュ時に停止可能となります Debug -> Exceptions )

Microsoft-Windows-TWinUI

これはデバッガなしで確認できるアプリケーションが起動できない原因に関するログで次の位置にあります:

コントロールパネル -> 管理ツール -> イベントビューアー -> アプリケーションとサービスログ -> Microsoft -> Windows -> Apps -> Microsoft-Windows-TWinUI/Operational

Windows ストアアプリ: .NET Scripting Backend でのプラグイン設定
Windows ストア: IL2CPP Scripting Backend