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