- 프레임 드랍, 렌더링 지연, 배터리 소모 증가
GPU로 데이터를 전달하는 작업 단위
쉽게 Draw Call + SetPass Call이라고 보면 됨
종류:
최적화 방법
1. Batching 활용
Static Batching과 Dynamic Batching을 잘 구분해서 사용
2. 머티리얼 최적화
동일한 머티리얼 사용, 아틀라스 사용
3. GPU Instancing 사용
material의 Enable Instancing 옵션 활성화
커스텀 쉐이더 확인 필요
4. 오브젝트 병합 및 분리
병합: 작은 메쉬를 병합하여 Batch 줄이기
분리: 너무 큰 메쉬나 동일 머티리얼을 공유하지 않는 객체를 분리
5. Occlusion Culling 사용
카메라에 보이지 않는 객체를 렌더링하지 않도록 하는 것
설정: Window > Rendering > Occlusion Culling
6. LOD(Level of Detail) 적용
멀리 있는 객체는 저해상도 메쉬와 텍스처 사용
LOD Group 컴포넌트 사용
7. 쉐이더와 렌더링 설정
비용 적은 쉐이더 사용: Mobile/Unlit 등
Forward Rendering 사용: 필요 시 사용
8. 조명 최적화
정적 조명 사용: Baked Lighting
조명 종류와 개수 줄이기: 쉐도우 품질 낮추기
9. 스크립트 및 물리 엔진 최적화
성능 병목 최적화: 스크립트나 물리 연산 최적화
Window > Analysis
게임 뷰 > Stats에서 FPS, Batches, SetPass Call 확인