Virtual Texturing Profiler 모듈은 애플리케이션에서 가상 텍스처링 스트리밍에 대한 통계를 표시합니다. 가상 텍스처링은 애플리케이션이 사용하는 GPU 메모리 양을 줄이고, 씬에 고해상도 텍스처가 많은 경우 애플리케이션의 텍스처 로딩 시간을 줄입니다.
프로파일러 창을 열려면 Window > Analysis > Profiler 메뉴로 이동합니다.
참고: Virtual Texturing Profiler 모듈을 사용하려면 프로젝트의 Player Settings에서 Virtual Texturing(Edit > Project Settings > Player > Other Settings)을 활성화해야 합니다.
차트에는 애플리케이션이 실행되는 동안 화면에 표시되는 텍스처 타일과 해당 텍스처가 사용하는 메모리 양에 대한 정보가 표시됩니다. Virtual Texturing 모듈을 선택하면 프로파일러 창 하단에 가상 텍스처가 사용하는 캐시 크기와 같은 통계가 표시됩니다.
Virtual Texturing Profiler 모듈의 차트는 다음 카테고리로 구성됩니다.
| 차트 | 설명 |
|---|---|
| Required Tiles | 화면에 표시된 텍스처 타일 수입니다. 이는 선택한 프레임을 렌더링하기 위해 셰이더가 샘플링하려고 시도한 타일입니다. |
| Max Cache Mip Bias | 동일한 텍스처 포맷을 가진 모든 텍스처에 적용되는 자동 밉맵 바이어스입니다. 값이 0이 아닌 경우, 표시되는 해당 포맷의 타일을 모두 포함할 만큼 캐시가 충분히 크지 않은 것입니다. 밉맵 바이어스가 높을수록 텍스처 품질이 낮아집니다. |
| Max Cache Demand | 선택한 프레임에서 모든 GPU 캐시에 대해 가장 높은 캐시 요구량입니다. |
| Missing Streaming Tiles | 화면에 표시되었지만 동영상 메모리에 없는 타일 수입니다. 애플리케이션은 이러한 타일을 가능한 한 빨리 디스크에서 스트리밍하거나 메인 메모리에서 복사합니다. |
| Missing Disk Data | 선택한 프레임을 충족하기 위해 디스크에서 애플리케이션이 읽어야 했던 남은 데이터(바이트 단위)입니다. |
Virtual Texturing Profiler 모듈을 클릭하면 창 하단의 세부 정보 창에 더 자세한 통계가 표시됩니다. 이 통계는 ProfilerRecorder API 및 Profiler 모듈 에디터를 통해서도 제공되므로 커스텀 Profiler 모듈에 추가할 수 있습니다.
세부 정보 창에 표시되는 통계는 다음과 같습니다.
| 통계 | 설명 |
|---|---|
| System Statistics | 세부 정보 창의 이 섹션에서는 애플리케이션 텍스처 타일과 프로파일러 캡처 중에 사용된 리소스에 대한 정보가 표시됩니다. 이러한 통계는 플레이어 빌드와 Unity 에디터 내의 플레이 모드 프로파일링에 사용할 수 있습니다. |
| Tiles required this frame | 화면에 표시된 텍스처 타일 수입니다. 이는 선택한 프레임을 렌더링하기 위해 셰이더가 샘플링하려고 시도한 타일입니다. 이러한 타일이 모두 GPU 캐시에 있는 경우 Unity는 캐시 크기 내에서 가능한 가장 높은 텍스처 품질로 프레임을 렌더링합니다. 씬이 고정되지 않았다면 일부 타일이 아직 GPU 메모리에 없는 것입니다. 이 경우 가상 텍스처링 샘플은 메모리에 더 높은 품질의 샘플이 도착할 때까지 메모리에 있는 더 높은 품질의 밉맵에서 더 낮은 품질의 샘플을 사용합니다. 캐시 밉맵 바이어스는 필요한 타일 수에 영향을 줍니다. 모든 캐시에 대해 밉맵 맵 바이어스가 0이 아닌 경우 필요한 타일 수는 최적 텍스처 품질에 필요한 수보다 적습니다. |
| Max Cache Mip Bias | 밉맵 바이어스가 가장 높은 GPU 캐시의 밉맵 바이어스입니다. 이 값이 0이 아닌 경우, 선택한 프레임을 최적의 텍스처 품질로 렌더링하기 위해 모든 텍스처 타일을 포함할 만큼 캐시 중 하나 이상이 충분히 크지 않은 것입니다. |
| Max Cache Demand | 선택한 프레임은 모든 GPU 캐시 중 가장 높은 캐시 수요이며, GPU의 백분율로 표시됩니다. 이 캐시에 대한 밉맵 바이어스를 방지하려면 가장 많은 수요가 있는 GPU 캐시가 더 커야 할 수 있습니다. 최대 캐시 수요 통계가 낮은 비율인 경우 렌더 해상도와 콘텐츠에 비해 캐시가 너무 큰 것일 수 있습니다. 이 문제의 주요 단점은 애플리케이션이 필요한 것보다 더 많은 GPU 메모리를 사용하고 있다는 점입니다. 하지만 애플리케이션에 메모리 제약이 없는 경우에는 문제가 되지 않습니다. |
| Total CPU Cache Size | Unity가 디스크에서 저장된 텍스처 타일을 로드한 후 이 타일에 할당한 메모리 양입니다. |
| Total GPU Cache Size | 선택한 프레임에서 Virtual Texturing 모듈이 할당한 모든 GPU 캐시의 크기입니다. Unity는 해당 텍스처 포맷의 텍스처를 사용하는 머티리얼이 렌더링될 때 GPU 캐시를 생성합니다. |
| Atlases | 가상 텍스처 공간 또는 아틀라스의 수입니다(최대 64개). Unity는 가상 텍스처링을 통해 스트리밍되는 텍스처를 큰 가상 텍스처 공간으로 아틀라싱합니다. 이 작업은 자동으로 투명하게 적용됩니다. |
| Player Build Statistics | 세부 정보 창의 이 섹션에서는 애플리케이션 빌드를 프로파일링할 때만 사용할 수 있는 애플리케이션의 텍스처 타일에 대한 정보를 표시합니다. |
| Missing Disk Data | 선택한 프레임을 충족하기 위해 디스크에서 애플리케이션이 읽어야 했던 남은 데이터(바이트 단위)입니다. 더 이상 표시되지 않는 이전 프레임의 요청에서 대기 중인 디스크 읽기 요청이 더 있을 수 있습니다. 따라서 새 타일이 보이지 않는 경우 애플리케이션이 디스크에서 읽는 최소 데이터 양입니다. 애플리케이션이 읽는 실제 데이터 양이 커질 수 있습니다. |
| Missing Streaming Tiles | 화면에 표시되었지만 아직 메모리에 없는 타일 수입니다. 이러한 타일은 디스크에서 최대한 빨리 스트리밍된 것입니다. 예를 들어 카메라가 움직이면 이 수가 더 많을 수 있습니다. 씬과 카메라가 고정되고 새 타일이 보이지 않는 경우 이 통계는 0으로 감소합니다. |
| Read From Disk | Unity가 선택한 프레임에서 완료한 디스크 읽기 작업의 바이트 수입니다. |
| Per Cache Statistics | 캐시에 대한 통계를 표시합니다. 애플리케이션 빌드를 프로파일링하는 경우에만 사용할 수 있습니다. |
| Cache Format | 애플리케이션에서 텍스처가 사용한 그래픽스 포맷입니다. |
| Demand | 사용되는 각 그래픽스 포맷의 캐시 수요 양입니다. 참고: 이 통계는 커스텀 프로파일러에서 사용할 수 없습니다. |
| Bias | 사용된 각 그래픽스 포맷의 밉맵 바이어스 캐시 양입니다. 참고: 이 통계는 커스텀 프로파일러에서 사용할 수 없습니다. |