Version: Unity 6.0 (6000.0)
언어 : 한국어
커스텀 에셋 팩 생성
Android용 그래픽스

런타임 시 에셋 팩 관리

Unity는 런타임 시 에셋 팩을 관리하는 API를 제공합니다. Google의 PlayCore API를 사용하므로 PlayCore와 동일한 제약이 있고 install-time 에셋 팩을 관리할 수 없습니다. PlayCore API를 사용하면 애플리케이션에 PlayCore 플러그인이 필요합니다. 프로젝트에 에셋 팩(커스텀 에셋 팩 또는 Unity에서 생성한 에셋 팩)이 있는 경우 Unity는 애플리케이션의 매니페스트에 PlayCore 종속성을 자동으로 추가합니다.

에셋 팩을 다운로드하고 에셋에 액세스하는 방법은 에셋 팩 전송 모드에 따라 다릅니다. 에셋 팩 전송 모드에는 다음과 같이 세 가지 방법이 있습니다.

  • install-time: 기기가 애플리케이션을 설치할 때 Google Play가 자동으로 install-time 에셋 팩을 다운로드합니다. Google Play는 이러한 에셋 팩을 기본 애플리케이션의 일부로 간주하며, 최종 사용자는 전체 애플리케이션을 제거하지 않으면 에셋 팩을 제거할 수 없습니다. PlayCore API는 install-time 에셋 팩을 처리하지 않으므로 상태를 확인하거나 다운로드를 요청하거나 install-time 에셋 팩을 제거할 수 없습니다. 또한 Unity에서 생성한 install-time 에셋 팩의 스트리밍 에셋을 제외하고 이러한 에셋 팩 내 에셋에 직접 액세스할 수 없습니다. 스트리밍 에셋에 액세스하려면 Application.streamingAssetsPath를 사용하여 스트리밍 에셋 위치의 경로를 가져온 다음, UnityWebRequest를 사용하여 해당 경로의 에셋에 액세스합니다. 커스텀 에셋 팩을 생성하는 경우 표준 파일 API를 사용하여 에셋 내부에 액세스할 수 없습니다. 대신 Android의 AssetManager API를 사용하십시오.
  • fast-follow: 애플리케이션을 설치한 후 Google Play가 자동으로 fast-follow 에셋 팩을 다운로드합니다. 그러나 애플리케이션이 처음 실행될 때 모든 fast-follow 에셋 팩을 사용할 수 있는 것은 아닙니다. 상태를 확인하고 fast-follow 에셋 팩을 다운로드하려면 에셋 팩 다운로드를 참조하십시오.
  • on-demand: Google Play가 on-demand 에셋 팩을 자동으로 다운로드하지 않습니다. 수동으로 다운로드를 시작해야 합니다. 이를 수행하는 방법에 대한 자세한 내용은 에셋 팩 다운로드를 참조하십시오.

전송 모드에 대한 자세한 내용은 전송 모드를 참조하십시오.

에셋 팩 다운로드

애플리케이션에서 fast-follow 또는 on-demand 에셋 팩을 사용하는 경우 해당 에셋 팩을 다운로드해야 애플리케이션이 에셋 내부에 액세스할 수 있습니다. 에셋 팩의 상태를 확인하고 에셋 팩이 기기에 없는 경우 에셋 팩을 다운로드하려면 먼저 각 에셋 팩의 이름을 알아야 합니다. Unity에서 생성된 에셋 팩의 이름을 가져오려면 AndroidAssetPacks.GetCoreUnityAssetPackNames를 호출합니다. 커스텀 에셋 팩의 이름을 가져오는 런타임 API가 없으므로 직접 추적해야 합니다. 빌드 시 커스텀 에셋 팩의 이름을 설정하며, 이는 디렉토리의 이름입니다.

에셋 팩의 이름을 확인한 후 각 에셋 팩의 상태를 확인하려면 에셋 팩 이름을 전달하여 AndroidAssetPacks.GetAssetPackStateAsync를 호출합니다. 이렇게 하면 쿼리하는 에셋 팩의 상태를 반환하며, 결과를 통해 에셋 팩을 다운로드해야 하는지를 결정할 수 있습니다. Unity에서 생성한 모든 에셋 팩의 상태를 빠르게 쿼리하려면 AndroidAssetPacks.coreUnityAssetPacksDownloaded를 사용하십시오. 이렇게 하면 첫 번째 씬이 아닌 씬을 로드하거나 Unity가 처리하는 다른 리소스에 액세스하기 전에 Unity에서 생성한 모든 에셋 팩을 사용할 수 있습니다.

다운로드해야 하는 모든 에셋 팩에 에셋 팩 이름을 전달하여 AndroidAssetPacks.DownloadAssetPackAsync를 호출합니다. 에셋 팩이 다운로드하는 동안 다운로드 상태를 모니터링하십시오. 다운로드가 일시 중지되거나 실패할 수 있기 때문입니다. 두 가지 방법으로 옮길 수 있습니다.

추가 리소스

커스텀 에셋 팩 생성
Android용 그래픽스