목록 보기
라이브 게임 에셋 관리 개선기 - 2.메모리 사용 절감
백엔드

라이브 게임 에셋 관리 개선기 - 2.메모리 사용 절감

플라네타리움
플라네타리움
2024년 9월 30일

두줄요약

라이브 게임의 메모리 증가 원인을 프로파일링으로 분석하고, 불필요 리소스 정리와 압축 설정 통일로 사용량을 줄였습니다. 결과적으로 클라이언트 메모리는 약 30%, 앱 용량은 약 26% 감소했습니다.

문제 상황

  • 라이브 서비스 게임에서 콘텐츠와 에셋이 누적되며 메모리 사용량이 지속 증가하는 문제
  • 오브젝트 풀에 모든 오브젝트를 영구 보관하는 구조로 인해 iOS에서 종료 이슈까지 발생
  • 큰 텍스처와 오디오 클립, 비일관적인 압축 설정으로 앱 용량과 메모리 점유가 함께 커지는 상황

원인 분석

  • 단일 씬 구조와 리소스 해제 타이밍 문제로 사용하지 않는 에셋이 메모리에서 늦게 정리되는 점
  • 압축되지 않은 Texture2D와 AudioClip, 중복 포함된 아틀라스, POT가 아닌 스파인 리소스
  • 에디터 프로파일링 노이즈로 실제 모바일 메모리 문제를 정확히 파악하기 어려운 점

해결 방법

  • 로비 진입 시 Resources.UnloadUnusedAssets()와 GC.Collect()로 불필요 리소스 정리
  • 오디오와 아틀라스 설정을 통일하고 텍스처 압축 및 패킹 정리 적용
  • 로그인 씬 분리 등으로 장기적으로 씬·에셋 구조 개선 기반 마련

다음 읽기

#Unity 주제를 이어서 읽기

라이브 게임 에셋 관리 개선기 - 번외1.리소스 최적화 기법

라이브 게임 에셋 최적화에서 텍스처와 오디오, 스파인 데이터 설정을 어떻게 손봤는지 정리했습니다. 플랫폼별 압축 포맷과 메모리 절감 포인트를 함께 살펴보았습니다.

플라네타리움
플라네타리움
데브옵스

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...