Version: 2017.1
에셋 번들 관리자(AssetBundle Manager)
문제 해결

에셋 번들로 패치

새 에셋 번들을 다운로드하고 기존 에셋 번들을 대체하여 에셋 번들을 간단하게 패치할 수 있습니다. WWW.LoadFromCacheOrDownload 또는 UnityWebRequest를 사용하여 애플리케이션의 캐시된 에셋 번들을 관리하는 경우, 버전이 다른 파라미터를 선택된 API에 전달하면 새 에셋 번들이 다운로드됩니다.

패치 시스템에서 더 해결하기 어려운 문제는 대체할 에셋 번들을 탐지하는 것입니다. 패치 시스템은 다음 두 가지 정보 리스트를 요구합니다.

  • 현재 다운로드된 에셋 번들과 각각의 버전 정보 리스트
  • 서버에 있는 에셋 번들과 각각의 버전 정보 리스트

패치를 하기 위해서는 서버 측 에셋 번들 리스트를 다운로드하고 에셋 번들 리스트를 비교해야 합니다. 누락된 에셋 번들이나 버전 정보가 변경된 에셋 번들은 다시 다운로드해야 합니다.

에셋 번들 변경을 감지하는 커스텀 시스템을 작성할 수도 있습니다. 자신만의 시스템을 직접 작성하는 개발자는 대부분 자신의 에셋 번들 파일 리스트에 JSON 같은 산업 표준 데이터 포맷을 사용하고, 체크섬 컴퓨팅에 MD5 같은 표준 C# 클래스를 사용합니다.

Unity는 순서가 분명하게 정해진 데이터가 있는 에셋 번들을 만듭니다. 따라서 커스텀 다운로더가 있는 애플리케이션에서는 차등적으로 패치를 적용할 수 있습니다.

Unity는 차등 패치에 대한 빌트인 메커니즘을 제공하지 않으며, WWW.LoadFromCacheOrDownloadUnityWebRequest는 빌트인 캐싱 시스템 사용 시에 차등 패치 적용을 수행하지 않습니다. 차등 패치가 요구되는 경우 커스컴 다운로더를 작성해야 합니다.


에셋 번들 관리자(AssetBundle Manager)
문제 해결