렌더링 프로파일러는 씬 렌더링을 위해 CPU 및 GPU가 수행하는 작업에 대한 렌더링 통계 및 정보를 표시합니다. 이러한 통계를 사용하면 씬의 여러 영역에 대한 리소스 소모량을 측정할 수 있으므로, 최적화에 유용합니다.
차트에는 애플리케이션이 렌더링한 배치, SetPass 호출, 렌더링된 삼각형 및 버텍스의 숫자가 표시됩니다. 하단 창에는 GameView Rendering Statistics 창에 표시되는 통계와 일치하는 추가 렌더링 통계가 표시됩니다.
렌더링 프로파일러 모듈의 차트는 다음의 네 개 카테고리로 구성됩니다.
차트 | 설명 |
---|---|
Batches | 프레임 동안 Unity가 처리한 배치 수입니다. |
SetPass Calls | Unity가 프레임 동안 게임 오브젝트 렌더링에 사용된 셰이더 패스를 전환한 횟수입니다. 셰이더에는 여러 셰이더 패스가 포함될 수 있으며, 각 패스는 씬에서 게임 오브젝트를 다른 방식으로 렌더링합니다. |
Triangles | 프레임 동안 Unity가 처리한 삼각형 수입니다. |
Vertices | 프레임 동안 Unity가 처리한 버텍스 수입니다. |
렌더링 프로파일러 모듈을 클릭하면 창의 아래쪽 절반에 세부 정보 창이 나타나 상세한 렌더링 통계를 보여줍니다. 이러한 통계는 Rendering Statistics 창에 표시된 통계와 유사합니다.
세부 정보 창의 왼쪽 상단에서 Open Frame Debugger를 선택하여 프레임 디버거를 엽니다. 여기에는 프레임을 렌더링한 개별 드로우 콜의 정보가 나와 있습니다.
이러한 통계는 ProfilerRecorder API 및 프로파일러 모듈 에디터를 통해서도 제공되므로 커스텀 프로파일러 모듈에 추가할 수 있습니다.
통계 | 설명 |
---|---|
SetPass Calls | Unity가 프레임 동안 게임 오브젝트 렌더링에 사용된 셰이더 패스를 전환한 횟수입니다. 셰이더에는 여러 셰이더 패스가 포함될 수 있으며, 각 패스는 씬에서 게임 오브젝트를 다른 방식으로 렌더링합니다. |
Draw Calls | 프레임 동안 Unity가 실행한 총 드로우 콜 횟수입니다. Unity는 게임 오브젝트를 화면에 렌더링할 때 드로우 콜을 실행합니다. 이 횟수에는 배칭되지 않은 드로우 콜과 동적 및 정적 배칭된 드로우 콜이 포함됩니다. |
Total Batches | 프레임 동안 Unity가 처리한 총 배치 수입니다. 이 수에는 정적 배치와 동적 배치가 모두 포함됩니다. |
Tris | 프레임 동안 Unity가 처리한 삼각형 수입니다. |
Verts | 프레임 동안 Unity가 처리한 버텍스 수입니다. |
(동적 배칭) | 이 섹션에는 동적 배칭에 대한 통계가 나와 있습니다. |
Batched Draw Calls | Unity가 동적 배치로 결합한 드로우 콜 수입니다. |
Batches | 프레임 동안 Unity가 처리한 동적 배치 수입니다. |
Tris | 동적 배치에 포함된 게임 오브젝트의 삼각형 수입니다. |
Verts | 동적 배치에 포함된 게임 오브젝트의 버텍스 수입니다. |
(정적 배칭) | 이 섹션에는 정적 배칭에 대한 통계가 나와 있습니다. |
Batched Draw Calls | Unity가 정적 배치로 결합한 드로우 콜 수입니다. |
Batches | 프레임 동안 Unity가 처리한 정적 배치 수입니다. |
Tris | 정적 배치에 포함된 게임 오브젝트의 삼각형 수입니다. |
Verts | 정적 배치에 포함된 게임 오브젝트의 버텍스 수입니다. |
(인스턴싱) | 이 섹션에는 GPU 인스턴싱에 대한 통계가 나와 있습니다. |
Batched Draw Calls | Unity가 인스턴스 배치로 결합한 드로우 콜 수입니다. |
Batches | 프레임 동안 Unity가 인스턴스화된 게임 오브젝트의 렌더링을 위해 처리한 배치 수입니다. |
Tris | 인스턴스화된 게임 오브젝트의 삼각형 수입니다. |
Verts | 인스턴스화된 게임 오브젝트의 버텍스 수입니다. |
Used Textures | 프레임 동안 Unity가 사용한 텍스처 수와 해당 텍스처가 사용한 메모리 양입니다. |
RenderTextures RenderTextures Bytes |
프레임 동안 Unity가 사용한 렌더 텍스처 수와 해당 렌더 텍스처가 사용한 메모리 양입니다. |
RenderTextures Switches | 프레임 동안 Unity가 렌더링 타겟으로 하나 또는 여러 개의 렌더 텍스처를 설정한 횟수입니다. |
Screen | The resolution of the screen and the amount of memory it used. |
VRAM Usage | How much video memory Unity allocated to render the frame. |
VBO Total | The number of compute buffers on the GPU. |
VB Uploads | The amount of geometry that the CPU uploaded to the GPU in a frame. This represents the vertex/normal/texcoord data. There might already be some geometry on the GPU. This statistic only includes geometry that Unity transfers in a frame. |
IB Uploads | The amount of geometry that the CPU uploaded to the GPU in a frame. This represents the triangle indices data. There might already be some geometry on the GPU. This statistic only includes geometry that Unity transfers in a frame. |
Shadow Casters | 프레임에서 그림자를 드리우는 게임 오브젝트 수입니다. 여러 광원으로 인해 게임 오브젝트가 여러 개의 그림자를 드리우는 경우 드리우는 그림자당 하나의 항목으로 표시됩니다. |