레벨디자인을 하던 도중 심상치 않은 배치의 수를 발견했다.
카메라를 움직여 확인해보니 풀이 리소스를 굉장히 많이 잡아먹고 있던 것이였다.
하나 심었을 뿐인데 20개나 올라가는 배치..
피씨환경에서는 당장 큰 문제가 아니겠지만 모바일에서 돌아갈 예정이라 문제를 해결하기 급급했다.
원하는 오브젝트를 선택 후 인스펙터 상단의 static 체크박스를 선택해주면 전환시킬 수 있다.
게임상에서 움직이지 않는 오브젝트라면 활성화 시켜 드로우콜을 감소시킬 수 있다.
무려 약 2배나 줄어들었다.
정적배칭이란 정적인 오브젝트를 큰 메시로 결합해서 렌더링하는 방법을 말한다.
이로인해 렌더링의 부담을 덜 수 있지만, 결합된 데이터를 추가로 저장해야하기 때문에 메모리가 더 필요하다.
https://docs.unity3d.com/kr/2019.3/Manual/DrawCallBatching.html
게임에서 그림자의 유무가 크게 중요치 않다면 과감하게 꺼버리는 것이 성능에 큰 도움이 된다.
조명 오브젝트의 인스펙터에서 그림자를 오프시킬 수 있다.
또한 사진은 없지만
카메라의 인스펙터 항목에서 Far의 수치를(기본수치 1000) 낮추면 성능에 좀 더 도움이 된다.
카메라로부터 월드상의 공간을 어디까지 지켜볼지 정하는 옵션이다.
자신의 게임에 맞게 조절하면 된다.
쉽게 생각하면 배틀그라운드의 옵션 항목중 거리보기 옵션을 낮춘 것과 같다.
적당히 조절하여 10~20%정도 추가성능을 얻었다.
이와 관련해서 오클루전 컬링을 활용하는 방법도 있겠다.
https://docs.unity3d.com/kr/2019.3/Manual/class-OcclusionArea.html
이 외에 리소스 자체를 줄여버리는 방법도 있다.
근원을 없애버리면 편하다.
디테일이 크게 중요치 않다면 게임 플레이하는데 방해되지 않는 선까지 과감하게 줄여버려라.
옛날 게임들이 고심을 많이 했을 것이다. 기기의 성능이 충분치 않았으니까.
그나마 타협본다고 2.5D나무라던가.. 멀리서봤을땐 3D같아보였는데 가까이서보니까 2D인 그런 것들
아무튼 눈물을 머금고 벌초를 해버렸다.
내 풀..
'유니티' 카테고리의 다른 글
유니티 랜덤 길 생성 (0) | 2020.06.11 |
---|---|
유니티 조이스틱 구현하다가 황당한 경험 (0) | 2020.05.16 |
유니티에서 블렌더의 애니메이션이 Scene파일로만 나타날 때 해결법 (0) | 2020.05.10 |
유니티 회전 시 중심축 문제 해결방법(피봇 설정) + 프로빌더 (0) | 2020.04.29 |
유니티 프로빌더와 폴리브러숴 + 프로그리드 (0) | 2020.04.26 |