반응형
📖 캔버스 분할 전략
문제점
- 단일 캔버스에서 하나의 요소가 변경되면 전체 캔버스가 더티(dirty) 상태가 됨
- 수천 개의 요소가 있는 경우 성능 저하가 심각해질 수 있음
해결 방법
- 캔버스를 여러 개로 분할
- 업데이트 빈도에 따라 분리 (정적/동적 요소 구분)
- 중첩 캔버스 활용으로 계층적 구조 만들기
- 동일한 Z값, 재질, 텍스처를 가진 요소들을 같은 캔버스에 배치
🖥️ 그래픽 레이캐스터 최적화
주의점
- 모든 입력 지점을 반복 검사하므로 오버헤드 발생
- 불필요한 레이캐스트 체크는 성능 저하의 원인
최적화 방법
- 비대화형 UI 캔버스에서 그래픽 레이캐스터 제거
- 정적/비대화형 요소의 레이캐스트 타겟 비활성화
- 월드스페이스/스크린스페이스 카메라 모드에서 차단 마스크 신중히 사용
🎮 UI 요소 최적화
피해야 할 상황
- 큰 목록이나 그리드 뷰의 무분별한 사용
- 다수의 UI 요소 중첩
- 불필요한 레이아웃 그룹 사용
최적화 전략
- 오브젝트 풀링을 활용한 UI 요소 재사용
- 비례 레이아웃은 앵커 시스템 활용
- 동적 요소가 많은 경우 직접 레이아웃 계산 로직 구현
📷 캔버스 숨기기와 비활성화
효율적인 방법
Apply to UI_StartPopu...
장점
- GPU 드로우 콜 감소
- 메시와 버텍스 데이터 유지
- 불필요한 OnDisable/OnEnable 콜백 방지
🐎 UI 애니메이션 최적화
권장 사항
- 애니메이터 대신 코드 기반 애니메이션 사용
- 트위닝 시스템 활용
- 동적 요소에만 애니메이터 적용
🕹️ 전체 화면 UI 최적화
성능 향상 팁
Apply to UI_StartPopu...
추가 최적화
- 숨겨진 UI 요소 비활성화
- 불필요한 캔버스 렌더링 방지
- 백그라운드 처리 최소화
마무리
UI 최적화는 게임 성능 향상에 매우 중요한 부분입니다. 위의 팁들을 적절히 활용하면 더 나은 사용자 경험을 제공할 수 있습니다. 특히 모바일 게임 개발에서는 이러한 최적화가 더욱 중요합니다.추가적인 최적화 팁이나 자세한 내용은 Unity 공식 문서를 참고하시기 바랍니다.
반응형
LIST
'Unity' 카테고리의 다른 글
Unity Custom Editor - 윈도우 만들기 (0) | 2025.04.06 |
---|---|
프로토타입 패턴 (0) | 2025.04.06 |
Unity 캐릭터가 아닌 오브젝트의 Animation Retargeting (0) | 2025.03.30 |
Unity 트러블 슈팅 - NavMeshAgent가 NavMesh에 배치되지 않았다는 오류 (0) | 2025.03.26 |
Unity Package Manager - Git URL Error (No git executable was found) (0) | 2025.03.21 |