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-* プロジェクトが含まれています
  • 確認したい場所にブレークポイントを配置して、シンプルにアプリケーションをデバッガーで開始します

Exceptions (例外)

アプリケーションの実行中、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