
👉 이 순서를 지키는 것만으로도 최적화 속도가 크게 빨라집니다.
유니티 최적화는 무엇부터 시작해야 할까요?
지금까지 시리즈를 통해 다음 내용을 정리했습니다.
하지만 실제 프로젝트에서는 이런 고민이 생깁니다.
“그래서 지금 내 프로젝트에서 뭘 확인해야 하지?”
“어디부터 손대야 하지?”
이 글에서는 바로 적용할 수 있는 유니티 최적화 체크리스트를 정리합니다.
👉 이 순서대로만 확인해도 FPS 문제의 대부분을 해결할 수 있습니다.
1단계: CPU Bound인지 GPU Bound인지 확인하기
최적화는 항상 여기서 시작합니다.
👉 병목을 모르면 최적화는 실패합니다.
- Profiler에서 CPU / GPU 시간 비교
- CPU 시간이 길면 → CPU Bound
- GPU 시간이 길면 → GPU Bound
이 단계 없이 Draw Call을 줄이거나 텍스처를 줄이는 것은 대부분 의미가 없습니다.
👉 CPU Bound / GPU Bound 정리 글 보기
2단계: CPU Bound라면 (Draw Call 확인)
CPU가 병목이라면 가장 먼저 확인할 것은 Draw Call입니다.
- Draw Call 수 확인
- SetPass Call 확인
- Batching 적용 여부 확인
특히 중요한 것은 다음입니다.
👉 Draw Call보다 SetPass Call이 더 중요할 수 있습니다.
머티리얼이나 쉐이더가 계속 바뀌면 CPU 부담이 크게 증가합니다.
3단계: GPU Bound라면 (Overdraw 확인)
GPU가 병목이라면 Overdraw를 먼저 확인해야 합니다.
- Scene View → Overdraw 모드 확인
- UI 겹침 여부 확인
- 파티클/투명 오브젝트 확인
👉 화면이 단순해 보여도 Overdraw가 심할 수 있습니다.
특히 UI와 파티클은 가장 흔한 원인입니다.
4단계: 해상도와 포스트 프로세싱 확인
GPU 성능 문제에서 자주 놓치는 부분입니다.
- 해상도 (Render Scale)
- Bloom / Motion Blur / DOF
- 전체 화면 효과
이 요소들은 화면 전체 픽셀에 영향을 주기 때문에 비용이 큽니다.
👉 특히 모바일에서는 영향이 매우 큽니다.
5단계: UI 최적화
UI는 생각보다 성능에 큰 영향을 줍니다.
- 불필요한 Raycast Target 제거
- 겹치는 UI 최소화
- Canvas 분리
UI Overdraw는 눈에 잘 안 보이지만 GPU 비용을 크게 증가시킬 수 있습니다.
6단계: 파티클과 이펙트
파티클은 가장 쉽게 성능을 무너뜨리는 요소입니다.
- 파티클 개수 줄이기
- 크기 최적화
- 투명도 최소화
👉 “적은 수로 더 좋은 효과”가 핵심입니다.
7단계: 실제 기기 테스트
가장 많이 하는 실수입니다.
👉 PC에서 잘 돌아간다고 끝이 아닙니다.
- 모바일에서 테스트
- 저사양 기기 테스트
- 발열 / 프레임 유지 확인
최적화는 항상 타겟 기기 기준으로 해야 합니다.
많이 하는 실수
최적화 과정에서 자주 발생하는 실수입니다.
- 병목 확인 없이 최적화 시도
- Draw Call만 줄이기
- GPU 문제를 CPU 방식으로 해결하려고 시도
👉 최적화는 “문제 해결”이지 “기술 적용”이 아닙니다.
정리
유니티 최적화의 핵심은 복잡하지 않습니다.
- CPU인지 GPU인지 먼저 확인
- 원인에 맞는 방법 적용
- 불필요한 연산 줄이기
👉 이 흐름만 유지하면 대부분의 성능 문제를 해결할 수 있습니다.
마무리
이 시리즈를 통해 렌더링 최적화의 핵심 개념을 모두 다뤘습니다.
이제는 단순히 기능을 사용하는 것이 아니라,
왜 성능이 떨어지는지 스스로 판단할 수 있는 상태가 되어야 합니다.
🎯 한 단계 더 나아가고 싶다면
렌더링 최적화는 단순히 옵션을 조절하는 작업이 아니라,
엔진 내부 동작을 이해하는 과정입니다.
이에 더해 게임 엔진 내부에서 동작하는 여러 시스템을 직접 구현해보면 상용 엔진의 동작 원리를 보다 분명하게 이해할 수 있습니다.
게임 엔진의 동작 원리를 분명하게 이해하고 싶은 분들에게 아래 강의를 추천합니다.
👉C++로 만드는 게임 엔진 프레임워크 (소코반과 슈팅 게임으로 배우는 엔진 구조)