language:unity:9-최적화
목차
속도 향상에 기여했던 팁들인데, 필요한데 꺼버리는 것들은 다시 정리하기로 하고.
사양 분류
귀찮지만, 폰의 사양을 보고 설정을 변경해야 한다.
- 코어가 2개 이상인지. (스피드는 아직 몰라서)
- 그래픽 메모리가 충분한지
- 메모리가 충분한지.
NGUI
UITexture
- DrawCall을 1 증가 시킨다. 유사한 오브젝트가 많아서 +1 되는게 정상이라면 (써도 충분한 효과를 얻고 있다면) 쓰고 한 두개 정도 추가 때문에 써야 한다면 다른 방법을 찾는 쪽으로
- Sprite를 아틀라스에 추가해서 사용하는 방법도 있다.
Debug.Log()
- 이 함수 자체는 불릴 때마다 속도를 다운 시킨다.
- 릴리즈 때에는 무조건 삭제해야 한다. ( 또는 감춘다 )
PlayerSetting >> Dynamic Batching
- Dynamic Batching이 발생될 때마다 GPU사용량이 튄다.
- 빼는 것이 정답인가? 아직 모르겠다.
PlayerSetting >> iOS
- Hz를 60으로 설정해서 60fps에서 동작하게 한다. 프레임이 떨어지는건 마찬가지지만..
Physics
- 충돌체가 많은 경우 + 메쉬충돌체를 써야하는 경우,
- 충돌용 메쉬는 아주 최소한의 삼각형만 갖는 버젼을 따로 만들어서 쓰면 확실하게 효과 있다
- 충돌용 메쉬는 작으면서 복잡한 것에, 단순한 체크용 메쉬를 쓰면 효과가 좋다.
- 큰 메쉬에는 되려 효과가 없다.
TimeManager
Fixed Timestep
기본값 0.02 에서 조금 더 늘린다. 가장 문제가 없는 최대치를 찾아야 하는데,
- 0.25 정도에서 성능 개선이 있는지 확인. 더 늘릴 수 있는 확인한다.
- 0.03에서 이상한 현상이 발생되는지 확인. 이상하다면 숫자를 줄인다.
- 0.023 ~ 0.027 정도에서부터 시작해본다.
움직임이 어색한 경우 인터폴레이션을 추가하고, 움직임 개선이 있는지 또한 성능 다운 문제가 있는지 확인한다.
불확실
PhysicsManager
메뉴 : Edit » Project Settings »
- Layer Collision Matrix 에서 필요한 부분만 켠다. 최적화에 도움이 되는가?
- Solver Iteration Count : 숫자값을 살짝 줄인다. (-1) 정도.
이 부분은 건드리지 않는게 낫지 싶다.
language/unity/9-최적화.txt · 마지막으로 수정됨: 2024/04/23 22:44 저자 127.0.0.1