새소식

유니티

[Unity] GPU 병목 해결 버텍스 줄이기

  • -

 

*테스트 기기 Galaxy S8

 

 

 

 텍스쳐 대역폭을 줄이기 위한 크기 변경

 

GPU가 메모리에 저장되어 있는 텍스쳐를 읽어오는데, 모바일에서는 메모리의 대역폭이 문제가 될 수 있기 때문에 사이즈를 줄이고, 압축포맷을 변경하여 전체적인 크기를 줄인다.

 

-별로 효과가 없었다.

 

 

버텍스 수 줄이기

 

버텍스 수가 2M 정도 되는데 이것 때문에 GPU 병목이 발생한다는 것으로 어느정도 결론이 났음.

 

 

 

* 아래 버텍스 Simpifier API를 활용해 병합된 메시들을 Vertex를 줄여서 생성할 것임

https://thegamedev.guru/unity-gpu-performance/unity-mesh-simplifier/

 

Simplify Your Life With Unity Mesh Simplifier

Lose those extra vertices you don't need from your meshes and make the life of your GPU a bit easier.

thegamedev.guru

 

 

 

 


* 버텍스 수 줄이기 전에 보는 메모리 프로파일러에서의 Mesh 수

 

 

*버텍스 Qauility 0.5 세팅한 결과값

 

 

결과
메모리 사용량 49.6MB => 25.8MB
Vertex 수 390339 => 163770

 

Contents

아핫

땡큐하다