[Unity]3D 최적화 개선팁

윤수지·2025년 5월 14일

Unity

목록 보기
2/3
post-thumbnail

Unity3D 프로젝트 진행 중 최적화 및 프레임 개선을 위해 적용한 방식을 기록해두기 위해 작성하게 되었다.

1. Texture Max Size 1024

2. 프로파일러(Profiler) 성능 확인 후 문제가 되는 spline 에셋 관련 오브젝트 변경

기존에 움직이는 호스 구현을 spline을 활용해 제작한 것이 존재했는데, spline 으로 인해 무거워진 것을 확인 할 수 있었다.

=> 모델링에 본을 박아서 구현하는 것으로 수정

3. foreach -> for

for 문이 더 빠르기 때문에, foreach로 작성된 것을 for로 수정해 주었다. index로 접근 가능한 것은 for문을 사용하면 속도도 빠르고, 데이터 제어도 편리하다.
foreach 문은 Dictionary 에 사용

4. Project Settings 수정

Edit > ProejectSettings > Quality > VsyncCount > Don't Sync
VSync는 게임 프레임 속도를 모니터의 새로 고침 빈도(60hz) 동기화한다. 해당 fps로 제한되기 때문에 Don't Sync로 설정

5. Application.targetFrameRate 수정

Start() 나 Awake() 에 Aplication.targetFrameRate = 40; 이런 식으로 원하는 프레임을 설정.
참고로, -1은 최대 성능

6. Raycast 횟수 줄이기

프로파일러로 레이캐스트로 인한 성능 저하가 발견되어, 어떤 오브젝트 풀러로 들어가는 오브젝의 레이캐스트 횟수를 정확도를 위해 6개 정도 넣어두었는데, 절반 이하로 갯수를 줄이니 프레임이 비교적 꽤 많이 올라갔다.

profile
개발공부를 하고 있는 학생입니다.

0개의 댓글