[UE5] Unreal Engine 디버깅 하는 법 with Visual Studio

2023. 2. 9. 12:53Game Development/Unreal Engine

 

 

1. 언리얼 엔진 에디터를 끄고, Visual Studio에서 확인하고자 하는 코드 라인에 중단점을 찍습니다.

 

 

저는 AMyActor::BeginPlay() 함수 부분에 중단점(Breakpoint)을 찍었습니다.

 

 

 

2. "F5" 키를 누르거나, "로컬 Windows 디버거" 버튼을 누릅니다.

 

 

솔루션 구성을 Development Editor로 하게 되면 스택 메모리에 할당된 변수들을 조사식에서 볼 수 없게 되는데, 이거는 Development Editor 대신 DebugGame Editor로 설정해주면 볼 수 있게 됩니다.

  • 만약 로컬 Windows 디버거 버튼이 "시작"이란 이름으로 설정되어 있거나, 디버깅을 시작할 수 없다는 다이얼로그가 뜬다면 🔗이 글을 참고하여 해결할 수 있습니다.
  • "UnrealEditor-CoreUObject.pdb 로드되지 않음" 이란 문구가 뜬다면, 🔗이 글을 참고하여 해결해주세요.

 

별 문제없이 잘 진행된다면, 언리얼 에디터가 실행되는 모습을 볼 수 있습니다.

 

 

언리얼 에디터가 잘 실행된 모습인데, 중단점에 걸리는지 확인하기 위해 AMyActor C++ 클래스를 맵(Level) 안에 배치하고 게임 실행 버튼을 눌러보겠습니다.

 

 

중단점에 잘 걸리는 걸 볼 수 있습니다. 이후부터는 알던대로 F10이나 F11 버튼을 눌러가며 차례차례 보면 됩니다.

 

 

이 방법 외에도 Visual Studio에서 디버그 -> 프로세스에 연결 -> UnrealEditor.exe 연결로 하는 방법도 있던데, 저는 그렇게 하니까 다음과 같이 중단점이 적용 안 되더라구요...

 

 

그래서, 이 글에 게시한 방법대로 저는 디버그를 활용해야겠습니다!

 

 

제가 했던 실수

 

온라인 강의를 보며 똑같이 따라했는데, 저는 언리얼 에디터가 75%까지만 열리고, 중단점에 걸려서 에디터가 완전히 열리지 않더라구요. 왜 그런지 한참 찾아보고 했는데, 너무 어이없는 이유였습니다.

 생성자에 중단점을 찍어서 그런 거였습니다... 언리얼 엔진 에디터는 유니티처럼 에디터와 IDE가 분리된 느낌이 아니라 하나로 통합된 개념이라 그랬던 것 같네요.

 

이것 때문에 하루를 꼬박 날려버려서, 이 글을 보시는 분들은 저 같은 실수 안 하셨으면 좋겠습니다...

 

728x90
반응형