크래시나 이상 동작이 발생하면 항상 <user>\AppData\Local\Packages\<productname>\TempState\UnityPlayer.log에 위치한 플레이어 로그를 확인해야 합니다. 버그 제출을 하는 경우, 중요한 정보가 될 수 있으므로 플레이어 로그를 첨부해야 합니다.
현재로서는 C# 스크립트만 디버그할 수 있습니다.
참고: 유니버설 Windows 플랫폼은 Microsoft .NET에서 실행되므로, MonoDevelop 스크립트를 디버그할 수는 없습니다. Visual Studio 2013을 사용해야 합니다.
아래는 간단하게 디버그하는 방법입니다.
애플리케이션을 실행하는 동안 예외가 발생하면 Visual Studio가 중단되도록 할 수 있습니다. Debug -> Exceptions로 가야 합니다.
참고: 모든 예외를 활성화하는 경우 WinRT originate error, WinRT transform error와 같은 문제 없는 예외가 발생하더라도 Visual Studio가 중단됩니다. 이런 경우 단순히 무시하면 됩니다.
간혹 Unity 엔진이 크래시하는 경우가 있으며, 이 경우 콜스택을 해결할 수 있으면 중요한 정보를 얻을 수 있으며 필요한 경우 이 정보를 버그 리포트에 포함할 수도 있습니다.
참고: Unity 엔진 콜스택을 해결하려면 .pdb 파일이 필요합니다. Unity는 디버그 설정을 위해 .pdb 파일을 제공합니다.
Unity 엔진이 크래시되어 브레이크 포인트에 도달했다 가정해 봅시다. (참고: Debug -> Exceptions에서 모든 예외를 활성화하면 Visual Studio를 크래시가 발생하면 중단되도록 할 수 있습니다.) Debug -> Windows -> Call Stack으로 가면 Call Stack 창이 열릴 것입니다. UnityPlayer.dll에서 함수 이름이 나타나지 않는 경우 심볼이 로드되지 않은 것입니다. 이를 해결하려면 해당 함수를 마우스 오른쪽 버튼으로 클릭한 후 Load Symbols을 클릭해야 합니다. UnityPlayer.pdb 파일이 [프로젝트 경로]>\Players\[Windows80 또는 Windows81]\[X86, ARM 또는 X64]\debug에 위치하게 됩니다.
애플리케이션이 왜 디버거없이 실행되었는지에 대한 정보를 제공할 수 있는 로그입니다. 이 로그는 아래 경로에 있습니다.
Control Panel -> Administrative Tools -> Event Viewer -> Applications And Services Log -> Microsoft -> Windows -> Apps -> Microsoft-Windows-TWinUI/Operational
• 2017–05–16 편집 리뷰 없이 페이지 수정됨