Visual Studio를 사용하여 PC 프로젝트 디버깅
2022년 6월 버전의 Microsoft GDK(게임 개발 키트)부터 Visual Studio의 일부로 제공되는 기본 코드 디버거를 사용하여 PC 게임 프로젝트를 디버그합니다. 로컬 PC에서 디버그하려면 다음 그림과 같이 Visual Studio 도구 모음의 디버거 드롭다운에서 로컬 Windows 디버거를 선택합니다.
원격 PC에서 디버그하려면 원격 Windows 디버거를 선택하고 원격 PC에서 게임 디버그에 설명된 단계를 따르세요.
참고 항목
2022년 6월 이전의 Microsoft GDK(게임 개발 키트) 버전을 사용하는 프로젝트에 사용할 디버거의 이름은 Local Machine입니다. 2022년 6월 이전의 Microsoft GDK(게임 개발 키트) 버전에서는 원격 디버깅이 지원되지 않습니다.
프로젝트를 2022년 6월 버전의 Microsoft 게임 개발 키트(GDK)로 업그레이드할 때 다음 그림과 같이 디버거 속성이 지원되지 않는 디버그 옵션으로 설정되는 경우가 있을 수 있습니다. 이 경우 디버깅 도구 모음, 프로젝트 속성 페이지를 사용하거나 DebuggerFlavor msbuild 속성을 WindowsLocalDebugger로 설정하여 디버거 속성을 로컬 Windows 디버거로 재설정해야 합니다.(DebuggerFlavor 속성을 완전히 제거하면 로컬 Windows Debugger도 사용됩니다).
PC 프로젝트는 2022년 6월 버전의 Microsoft GDK(게임 개발 키트)부터 더 이상 배포 단계가 필요하지 않습니다. Visual Studio의 구성 관리자 대화 상자에서 배포 확인란을 사용할 수 없습니다.
타이틀이 소매로 출시될 때 중간 런처 프로세스가 사용됩니다. 이 부트스트래퍼 프로세스는 타이틀 렌더링 전에 시작 화면을 표시하고, 게임 업데이트를 확인하고, 클라우드 저장을 사전 동기화하고, 사용자를 사전 로그인하는 등의 작업을 수행합니다. 이러한 동작은 느슨한 파일 디버깅 시나리오에서는 실행되지 않습니다. 패키지 빌드를 사용하여 소매점에서 출시될 게임을 테스트하거나 디버그합니다.
패키지된 빌드 디버깅
패키지 빌드를 디버깅하기 전에 wdapp install을 사용하여 패키지를 설치해야 합니다. 일단 설치되면 Visual Studio의 설치된 앱 패키지 디버그 기능을 사용하여 타이틀을 디버깅할 수 있습니다. 디버그 메뉴를 사용하여 다음 그림과 같이 디버깅 대화 상자를 불러옵니다.
제목을 디버그하려면 대화상자에서 제목을 검색하고 이 코드 유형 디버그를 네이티브 전용으로 설정하고 시작 버튼을 클릭합니다.
소매 환경에서 실행되는 것처럼 타이틀을 디버그하려면 wdapp install 명령줄에 /bootstrapper 플래그를 추가하세요. 이러한 방식으로 설치된 타이틀은 부트스트래퍼 프로세스에 의해 시작됩니다. 이 시나리오에서 디버깅하려면 Visual Studio의 하위 프로세스 디버깅 확장이 필요합니다. 확장 프로그램 관리 대화 상자를 사용하여 확장 프로그램을 설치합니다.
설치가 완료되면 디버그 메뉴를 사용하여 하위 프로세스 디버깅 설정을 봅니다.
설정 페이지에서 하위 프로세스 디버깅 사용 확인란을 클릭합니다.
하위 프로세스 디버깅이 활성화되면 이제 설치된 앱 패키지 디버그 대화상자에서 부트스트래퍼 프로세스가 아닌 제목에 디버거를 연결합니다.
원격 PC에서 게임 디버깅
원격 PC에서 타이틀을 디버깅하려면 Visual Studio 원격 도구가 필요합니다. 도구를 설치하고 Visual Studio에서 C++ 프로젝트 원격 디버깅에 설명된 대로 원격 디버거를 구성합니다.
프로젝트 속성 페이지의 실행할 디버거 드롭다운에서 원격 Windows 디버거를 선택합니다. 타이틀의 실행 파일 이름, 원하는 작업 디렉토리 등을 입력하세요. 기본적으로 Visual Studio는 타이틀의 실행 파일 및 바이너리 종속성을 배포합니다. 원격 Microsoft GDK(게임 개발 키트) 게임을 디버그하려면 MicrosoftGame.config 파일과 로고 파일을 포함한 추가 파일도 배포해야 합니다. 다음 그림과 같이 원격 Windows 디버거 속성 페이지에서 배포할 추가 파일 속성을 사용하여 배포할 추가 파일을 지정합니다.