Unity Xcode 프레임 디버거 사용 가이드
Unity의 Xcode 프레임 디버거를 사용하여 애플리케이션의 프레임을 분석하고 GPU 성능을 최적화하는 방법에 대해 설명합니다.
개요
Xcode 프레임 디버거는 GPU에서 수행하는 커맨드를 보고, GPU 메모리의 데이터를 검사하고, 셰이더의 병목 현상을 찾아내는 도구입니다. 이는 macOS, iOS 및 tvOS에서 사용 가능합니다. 이 가이드는 Xcode와 Unity의 통합을 통해 프레임 캡처 및 분석을 수행하는 방법을 설명합니다.
프레임 캡처 방법
애플리케이션에서 프레임 캡처
- Xcode에서 애플리케이션 실행
Xcode UI 또는 FrameCapture API를 사용하여 프레임 캡처를 요청할 수 있습니다. - 커맨드 라인 실행
Xcode 프로젝트 없이 커맨드 라인에서 직접 애플리케이션을 실행하고 프레임 캡처를 디스크에 저장할 수 있습니다.
Xcode에서 프레임 캡처 수행
- Xcode 프로젝트 만들기
- Unity 에디터에서 Xcode 프로젝트를 생성합니다.
- 다른 Xcode 프로젝트를 사용할 수도 있습니다.
- 프레임 캡처 설정
- Xcode GUI를 사용하여 프로젝트 체계의 GPU Frame Capture 설정을 Metal로 변경합니다.
- 프레임 캡처 실행
- Xcode의 Frame Capture 버튼을 클릭하여 원하는 프레임을 캡처합니다.
- FrameCapture API를 사용하여 스크립트에서 프레임 캡처를 수행할 수도 있습니다.
Unity 에디터에서 프레임 캡처
- Unity 에디터 종료
Unity 에디터가 열려 있을 경우 닫습니다. - 새 macOS 프로젝트 생성
Xcode에서 비어 있는 새 macOS 프로젝트를 생성하거나 기존 프로젝트를 엽니다. - Executable 설정하기
- Product > Scheme > Edit Scheme으로 이동하여 Executable을 Unity 에디터로 설정합니다.
- 프레임 캡처 실행
- Unity 에디터 UI에서 Xcode Capture 버튼을 클릭합니다.
- 또는 Xcode의 Frame Capture 버튼을 사용합니다.
커맨드 라인으로 프레임 캡처
- FrameCapture API 사용
FrameCapture.BeginCaptureToFile 및 EndCapture를 코드에 추가하여 필요할 때 프레임 캡처를 수행합니다. - 플래그 설정
-enable-metal-capture 플래그를 사용하여 커맨드 라인에서 애플리케이션을 실행합니다.
추가적인 참고 자료
자료 | 설명 |
---|---|
XcScheme API 문서 | Xcode 프로젝트 체계를 자동화하는 방법 |
FrameCapture API | 프레임 캡처를 위한 API 문서 |
Xcode 프레임 디버거 문서 | 프레임 캡처 데이터를 분석하는 방법 |
결론
이 가이드를 통해 Unity와 Xcode를 통합하여 GPU 성능을 분석하고 최적화하는 방법을 배웠습니다. 다양한 방법으로 프레임 캡처를 수행할 수 있으며, 데이터를 분석하여 성능을 개선할 수 있습니다.