GPU 사용 프로파일러 모듈은 애플리케이션이 GPU에서 시간을 소비하는 위치를 표시합니다. GPU 프로파일러는 플레이 모드에서 또는 애플리케이션 빌드에만 사용할 수 있습니다. 에디터를 프로파일링하는 데는 사용할 수 없습니다.
참고: Player Settings 에서 Graphics Jobs 를 활성화한 경우 GPU 프로파일링이 지원되지 않습니다. 자세한 내용은 스탠드얼론 플레이어 설정 문서를 참조하십시오. 추가적으로 macOS의 경우 Mavericks 10.9 이상에서만 GPU를 프로파일링할 수 있습니다.
다음 표에는 GPU 사용 프로파일러 모듈이 지원하는 플랫폼이 나열되어 있습니다.
플랫폼 | 그래픽스 API | Status |
---|---|---|
Windows | DirectX 11, DirectX 12, OpenGL | 지원됨 |
Vulkan | 미지원 | |
macOS | OpenGL | 지원됨. 참고: Apple은 OpenGL 지원을 중단했습니다. |
Metal | 미지원. XCode의 GPU Frame Debugger UI를 대신 사용해야 합니다. | |
Linux | OpenGL core | 지원됨 |
Vulkan | 미지원 | |
PlayStation 4 | libgnm | 지원됨 |
Xbox One | DirectX 11, DirectX 12 | 지원됨 |
스위치 | Switch API | 지원됨 |
WebGL | 모든 WebGL | 미지원 |
Android | OpenGL | NVIDIA 또는 Intel GPU를 구동하는 기기에서 지원됨. |
Vulkan | 미지원 | |
iOS, tvOS | OpenGL | 지원됨. 참고: Apple은 OpenGL 지원을 중단했습니다. |
Metal | 미지원. XCode의 GPU Frame Debugger UI를 대신 사용해야 합니다. | |
Tizen | OpenGL | 지원되지 않음. |
Windows에서 Unity는 Direct3D 9 및 Direct3D 11 API를 통해 에디터에서 플레이 모드 프로파일링을 지원합니다. 플레이어를 빌드하지 않아도 되므로 빠른 프로파일링에 편리하지만, 프로파일러는 Unity 에디터를 실행하는 오버헤드의 영향을 받으므로 프로파일링 결과의 정확도가 낮을 수 있습니다.
GPU 사용 프로파일러 모듈의 차트는 GPU 타이밍을 조사하는 데 사용할 수 있는 여러 카테고리로 나뉩니다. 차트의 카테고리 순서를 변경하려면 차트 범례에 카테고리를 끌어다 놓으십시오. 카테고리의 컬러 범례를 클릭하여 표시 여부를 토글할 수도 있습니다.
차트 카테고리 | 설명 |
---|---|
Opaque | 빌트인 렌더링 파이프라인이 불투명 오브젝트를 렌더링하는 시간 |
Transparent | 빌트인 렌더링 파이프라인이 투명 오브젝트를 렌더링하는 시간 |
Shadows/Depth | 빌트인 렌더링 파이프라인이 섀도우 맵을 렌더링하는 시간 |
Deferred PrePass | 빌트인 디퍼드 렌더링 파이프라인이 뎁스 버퍼 프리패스를 렌더링하는 시간 |
Deferred Lighting | 빌트인 디퍼드 렌더링 파이프라인이 조명을 렌더링하는 시간 |
PostProcess | 빌트인 렌더링 파이프라인이 포스트 프로세싱 효과를 처리하는 시간 |
기타 | 스크립터블 렌더링 파이프라인과 같은 다른 요소를 처리하기 위한 렌더링 시간 |
GPU 사용 모듈을 선택하면 그 아래에 있는 세부 정보 창에 선택된 프레임에서 애플리케이션이 시간을 소비한 위치에 대한 분석이 표시됩니다. 타이밍 데이터는 계층 표로 표시할 수 있습니다. 테이블 뷰를 변경하려면 세부 정보 창의 왼쪽 상단 드롭다운을 사용하십시오(Hierarchy로 기본 설정됨). 다음의 뷰를 이용할 수 있습니다.
뷰 | 기능 |
---|---|
Hierarchy | 내부 계층 구조를 기준으로 타이밍 데이터를 그룹화합니다. 이 옵션은 기본적으로 사용된 시간을 기준으로 애플리케이션이 호출한 요소를 내림차순 리스트 포맷으로 표시합니다. 총 GPU 시간 또는 호출 횟수를 기준으로 정보를 정렬할 수도 있습니다. 표의 순서를 지정하는 열을 변경하려면 표의 열 헤더를 클릭하십시오. |
Raw Hierarchy | 타이밍 데이터를 타이밍이 발생한 호출 스택과 유사한 계층 구조로 표시합니다. Unity는 계층 뷰에서와 같이 각 호출 스택을 병합하지 않고 이 모드에서 개별적으로 나열합니다. |
GPU 사용 프로파일러 모듈을 선택하면 하단 창에 선택된 프레임에 대한 계층적 시간 데이터가 표시됩니다. 계층 구조에서 항목을 선택하면 기여도 분석 정보가 오른쪽 패널에 표시됩니다. 프로파일러 창의 기능에 대한 자세한 내용은 프로파일러 창 문서를 참조하십시오.
테이블 뷰는 다음의 열로 구성됩니다.
열 | 기능 |
---|---|
Total | Unity가 특정 함수에 소비한 총 시간(백분율)입니다. |
DrawCalls | 이 프레임에 이 함수를 호출한 횟수입니다. |
GPU ms | Unity가 특정 함수에 소비한 총 시간(밀리초)입니다. |