콘텐츠 업데이트 빌드 개요
콘텐츠를 원격으로 배포하는 경우 전체 애플리케이션을 다시 빌드하고 퍼블리시할 필요 없이 콘텐츠를 변경할 수 있습니다. 어드레서블 시스템은 런타임에 초기화할 때 업데이트된 콘텐츠 카탈로그를 확인합니다. 업데이트된 콘텐츠 카탈로그가 있는 경우 시스템은 새 카탈로그를 다운로드하고 에셋을 로드할 때 모든 에셋 번들의 최신 버전을 다운로드합니다.
하지만 모든 콘텐츠를 새 콘텐츠 카탈로그로 다시 빌드하면 설치된 플레이어도 에셋의 변경 여부와 관계없이 모든 원격 에셋 번들을 다시 다운로드해야 합니다. 콘텐츠의 양이 많은 경우 모든 콘텐츠를 다시 다운로드하는 데 상당한 시간이 소요될 수 있으며 플레이어 리텐션이 저조해질 수 있습니다. Addressables 패키지는 이 프로세스를 더 효율적으로 진행하기 위해, 변경된 에셋을 식별하고 콘텐츠 업데이트 빌드를 생성할 수 있는 툴을 제공합니다.
다음 다이어그램은 어드레서블 툴을 사용하여 플레이어가 새 콘텐츠나 변경된 콘텐츠만 다운로드하면 되는 소규모 콘텐츠 업데이트의 생성 방법을 보여 줍니다.
콘텐츠 업데이트 크기를 줄이기 위한 워크플로
콘텐츠 업데이트 빌드 워크플로
전체 애플리케이션을 릴리스할 때는 먼저 어드레서블 콘텐츠를 빌드한 다음 플레이어 빌드를 만듭니다. 플레이어 빌드에는 로컬 에셋 번들이 포함되며, 원격 에셋 번들은 CDN(콘텐츠 전송 네트워크) 또는 기타 호스팅 서비스에 업로드합니다.
어드레서블 콘텐츠 빌드를 생성하는 기본 빌드 스크립트는 항상 콘텐츠 전용 업데이트를 효율적으로 퍼블리시하는 데 필요한 addressables_content_state.bin
파일을 생성합니다. 이 파일은 모든 플랫폼에서 전체 애플리케이션 릴리스를 퍼블리시할 때마다 저장해야 합니다.
사용자가 새 플레이어 빌드를 다운로드 및 설치해야 하는 전체 애플리케이션 릴리스 사이에 프로젝트에서 어드레서블 에셋을 변경할 수 있습니다. 에셋 번들에는 코드가 포함되어 있지 않으므로 에셋 변경을 개발하는 데 사용하는 프로젝트 버전에서 코드를 변경하지 마십시오. 로컬 및 원격 에셋 모두를 변경할 수 있습니다.
콘텐츠 업데이트 툴
Addressables 패키지에는 원격으로 배포하는 콘텐츠의 업데이트 크기를 줄이는 데 사용할 수 있는 툴이 포함되어 있습니다.
콘텐츠 업데이트 툴에는 다음이 포함됩니다.
- Check for Content Update Restrictions 툴: 그룹 설정에 따라 콘텐츠 업데이트 빌드에 대한 그룹 구성을 준비합니다.
- Update a Previous Build 스크립트: 콘텐츠 업데이트 빌드를 수행하는 빌드 스크립트입니다.
향후 업데이트하려는 각 빌드에 대해 Default Build Script에서 생성한 addressables_content_state.bin
파일을 저장해야 합니다. 이 파일은 빌드 스크립트를 실행할 때마다 업데이트됩니다. 퍼블리시하는 콘텐츠 빌드에 대해 생성된 버전을 저장하십시오. 이전 콘텐츠 상태 파일의 사용을 처리하는 관련 어드레서블 설정은 설정을 참조하십시오.
[!중요] 자체 패치 시스템이 있거나 원격 콘텐츠 배포를 지원하지 않는 플랫폼에서는 콘텐츠 업데이트 빌드를 사용하지 마십시오. 게임의 모든 빌드는 완전히 새로운 콘텐츠 빌드여야 합니다. 이 경우 플랫폼에 대한 각 빌드 후에 생성되는
addressables_content_state.bin
파일을 폐기하거나 무시할 수 있습니다.
콘텐츠 업데이트를 퍼블리시하려면 Check Content Update Restrictions 툴을 수동으로 실행하거나 업데이트 빌드 프로세스의 일부로 이 검사가 실행되도록 하십시오. 이 검사에서는 addressables_content_state.bin
파일을 점검하고 변경된 에셋이 속한 그룹의 설정에 따라 새 원격 그룹으로 해당 에셋을 옮깁니다.
업데이트된 콘텐츠 빌드
업데이트된 에셋 번들을 빌드하려면 Update a Previous Build 스크립트를 실행합니다. 이 툴은 addressables_content_state.bin
파일도 사용합니다. 이는 모든 콘텐츠를 다시 빌드하지만, 원래 에셋 번들에서 변경되지 않은 콘텐츠와 새 에셋 번들에서 변경된 콘텐츠에 액세스하는 수정된 카탈로그를 생성합니다.
마지막 단계는 업데이트된 콘텐츠를 CDN에 업로드하는 것입니다. 새로 생성된 모든 에셋 번들을 업로드하거나 이름이 변경된 에셋 번들만 업로드할 수 있습니다. 변경되지 않은 번들은 원본과 동일한 이름을 사용하며 원본을 덮어씁니다.
동일한 프로세스에 따라 추가 콘텐츠 업데이트를 수행할 수 있습니다. 항상 원래 릴리스의 addressables_content_state.bin
파일을 사용하십시오.
단계별 지침은 콘텐츠 업데이트 빌드를 참조하십시오.
전체를 다시 빌드하는 시기
어드레서블은 코드가 아닌 콘텐츠만 배포할 수 있습니다. 따라서 코드를 변경하려면 플레이어를 새로 빌드해야 하며, 일반적으로 콘텐츠도 새로 빌드해야 합니다. 새 플레이어 빌드에서 때때로 CDN의 오래된 기존 콘텐츠를 재사용할 수 있지만, 기존 에셋 번들의 타입 트리가 새 코드와 호환되는지 여부를 분석해야 합니다.
어드레서블 자체는 코드이므로, 어드레서블 또는 Unity 버전을 업데이트하려면 새 플레이어 빌드와 새 콘텐츠 빌드를 생성해야 합니다.