집게사장의 꿈

[Unity] 게임 개발 현황 본문

유니티

[Unity] 게임 개발 현황

Krapboss 2024. 1. 30. 06:09
최적화에 대한 노력
1. 메모리 프로파일링

모바일 전환을 위한 게임 내 메모리 사용량을 판단하기 위해 프로파일링을 했다.

*9GB 라는 아주 큰 사이즈에 정말 많이 놀랐지만, Managed에서 대부분 소비하는 것으로 보아 이것은 유니티가 C++ 에서 사용하는 부분이기에 빌드를 해보기로 했다.

 

 

확인해 보니 메모리 프로파일러의 용량이었던 것 같다.

 

 

 


 

*정말 큰 문제는 메모리 텍스쳐 메모리 사용이었는데, 이를 줄이기 위해서는 아주 간단했다.

우선 기본적으로 내 게임의 특성이 있는데

1. 공포게임

2. 화질이 좋지 않은 것이 오히려 효과적임

3. UI 요소가 많지 않음

 

그렇기에, 위의 내용을 토대로 MipMap을 해제하고, UI의 크기를 반 사이즈 줄이고, PC 압축 포맷을 ETC5 Compressed로 변경해서 메모리 사용량을 줄였다. 

 

 

 

 

 

 

2. 프로파일링

 

예시 사진

 

* 여기서 발견된 문제는 TMPro의 로드율이 너무 커서 살펴보니

구매했던 에셋에서 지속적인 업데이트로 인해 강제 드로우가 일어난다고 추측하고, 스크립트를 정리했더니 약 0.7MS의 지연률을 줄일 수 있었다.

 

이외에는 물리와 그래픽 렌더링에 시간이 소모되는 것이라... 건들일 수 없었다.

 

결과

컴퓨터 사양

용량 약 500MB
CPU Razen 5600
GPU RTX 3060 laptop
해상도 QHD - 1440P

 

 


결과 프레임과 사용량

최고 렌더링 데이터가 많을 때 측정

약 242 FPS

CPU : 13%

memory : 450MB

GPU 사용량 : 0.6GB [평소 로드율이 1.5GB]

 

-위 측정 결과는 완벽하지는 않지만, 노트북의 옵션을 절약으로 설정하고 측정했다.