말감로그

Unity UI 최적화 방법 본문

Unity

Unity UI 최적화 방법

habbn 2025. 8. 25. 22:57
728x90

Unity 최적화 방법 중 UI 최적화도 중요한 부분 중 하나이다.

특히 Canvas Rebuild, 드로우콜이 핵심 최적화 포인트이다.

 

1. Canvas Rebuild 최소화 (CPU 성능 최적화)

Unity UI 성능 저하의 주범은 Canvas Rebuild 이다.

UI의 위치, 크기, 텍스트, 색상 등이 바뀔 때마다 유니티는 UI를 다시 그리기 위해 Rebuild 과정을 실행한다.

이 과정은 부모-자식 구조를 따라 재귀적으로 연산되며, 자식 수가 많거나 Layout 요소가 복잡할수록 연산량이 급격히 증가한다.

 

 최적화 방법

- Canas 분리 : 자주 바뀌는 UI는 별도의 Nested Canvas로 분리

- Layout 요소 최소화 : ContentSizeFitter, VerticalLayoutGroup 등은 최소한으로 사용

- SetActive 최소화 : 끄고 켜는 대신 CanvasGroup Alpha 변경으로 표시 

 

2. 불필요한 Raycast Target 비활성화

UI가 많을수록 Graphic Raycaster는 모든 요소를 검사한다.

버튼이 아닌 이미지나 텍스트는 Raycast Target을 꺼서 검사 대상을 줄이면 CPU 연산량을 절감할 수 있다.

 

3. 드로우콜 감소 (GPU 성능 최적화)

드로우콜은 CPU가 GPU에게 "이거 그려줘" 라고 요청하는 단위이다.

드로우콜이 많을수록 성능이 떨어지므로, GPU 최적화의 핵심은 배치 줄이기이다.

 

*배칭 : 비슷한 조건의 오브젝트들을 묶어서 한 번에 그려주는 최적화 기법이다. 드로우콜을 줄이는 핵심 원리

최적화 방법

- 스프라이트 아틀라스 : 여러 스프라이트를 하나의 텍스쳐로 묶어 드로우콜 감소

- 정적 배칭 : 움직이지 않는 오브젝트는 미리 하나로 묶어 렌더링

- 동적 배칭 : 작은 움직이는 오브젝트들은 실시간으로 묶어서 렌더링

 

 

 

 

728x90