어드레서블 에셋 설정 레퍼런스
프로젝트에서 어드레서블 에셋의 작동 방식을 관리하려면 Addressable Asset Settings 인스펙터를 사용하십시오. 인스펙터를 열려면 Window > Asset Management > Addressables > Settings로 이동합니다.
어드레서블 시스템은 설정 에셋을 프로젝트 내 Assets
폴더의 AddressableSettingsData
폴더에 저장합니다. 해당 폴더가 아직 존재하지 않는 경우 Groups 창(메뉴: Window > Asset Management > Addressables > Groups)에서 어드레서블 시스템을 초기화해야 합니다.
어드레서블 에셋 설정 인스펙터
인스펙터는 다음 섹션으로 구성됩니다.
- Profile
- Diagnostics
- Catalog
- Update a Previous Build
- Downloads
- Build
- Build and Play Mode Scripts
- Asset Group Templates
- Initialization Objects
- Cloud Content Delivery
Groups 창을 열려면 Manage Groups 를 선택합니다.
Profile
프로퍼티 | 설명 |
---|---|
Profile In Use | 어드레서블 빌드 스크립트에 사용되는 변수의 값을 결정하는 활성 프로파일을 선택합니다. 자세한 내용은 프로파일 기술 자료를 참조하십시오. |
Manage Profiles | Profiles 창을 엽니다. |
Diagnostics
프로퍼티 | 설명 |
---|---|
Log Runtime Exceptions | 이 프로퍼티를 활성화하여 에셋 로딩 작업에 대한 런타임 예외를 로깅하고 오류를 AsyncOperationHandle.OperationException 프로퍼티에 기록합니다. |
어드레서블 에셋은 기본적으로 경고와 오류만 로깅합니다. 상세 로깅을 활성화하려면 Player 설정 창(메뉴: Edit > Project Settings > Player)을 열고 Other Settings > Configuration 섹션으로 이동한 다음 ADDRESSABLES_LOG_ALL
을 Scripting Define Symbols 필드에 추가합니다.
Catalog
프로퍼티 | 설명 | |
---|---|---|
Player Version Override | 원격 카탈로그 이름을 만드는 데 사용된 타임스탬프를 오버라이드합니다. 설정된 경우 원격 카탈로그의 이름이 Catalog_<Player Version Override>.json 으로 지정됩니다. 비어 있는 상태로 유지되는 경우 Unity가 타임스탬프를 사용합니다.모든 새 빌드에 대해 고유한 원격 카탈로그 이름을 사용할 경우 동일한 기본 URL에서 콘텐츠의 여러 버전을 호스팅할 수 있습니다. 모든 빌드에 동일한 오버라이드 문자열을 사용하면 모든 플레이어가 새로운 카탈로그를 로드합니다. 또한 플레이어 업데이트 빌드는 항상 업데이트하는 빌드와 동일한 원격 카탈로그 이름을 사용합니다. 자세한 내용은 콘텐츠 업데이트 빌드를 참조하십시오. |
|
Compress Local Catalog | 이 프로퍼티를 활성화하여 압축된 에셋 번들 파일에서 카탈로그를 빌드합니다. 이 프로퍼티는 카탈로그의 저장소 크기를 줄여 주지만, 대신 빌드 시간과 카탈로그 로드 시간이 늘어납니다. | |
Build Remote Catalog | 이 프로퍼티를 활성화하면 원격 서버에 저장할 콘텐츠 카탈로그의 사본을 만들어 원격 카탈로그를 빌드할 수 있습니다. 이 프로퍼티를 활성화할 경우 다음과 같은 옵션을 사용할 수 있습니다. | |
Build & Load Paths | 원격 카탈로그를 어디에 빌드 및 로드할지 설정합니다. 목록에서 프로파일 경로 페어를 선택하거나, 경로를 별도로 빌드 및 로드하려는 경우 <custom> 을 선택합니다. |
|
Build Path | Build & Load Paths 를 <custom> 으로 설정한 경우에만 표시됩니다. 원격 카탈로그를 어디에 빌드할지 설정합니다. 일반적으로는 RemoteBuildPath 프로파일 변수를 사용해야 합니다. |
|
Load Path | Build & Load Paths 를 <custom> 으로 설정한 경우에만 표시됩니다. 원격 카탈로그에 액세스할 위치의 URL을 설정합니다. 일반적으로는 RemoteLoadPath 프로파일 변수를 사용해야 합니다. |
|
Only update catalogs manually | 이 프로퍼티를 활성화하면 런타임에 어드레서블 시스템이 초기화될 때 업데이트된 원격 카탈로그에 대한 자동 확인을 비활성화할 수 있습니다. 직접 업데이트된 카탈로그를 확인할 수도 있습니다. |
Update a Previous Build
Update a Previous Build 섹션의 프로퍼티를 사용하려면 Build Remote Catalog 프로퍼티를 활성화해야 합니다.
프로퍼티 | 설명 |
---|---|
Check for Update Issues | 업데이트의 일부로 콘텐츠 업데이트 제한을 수행할지 여부와 결과를 처리하는 방법을 선택합니다. |
Content State Build Path | 기본 빌드 스크립트가 빌드하는 콘텐츠 상태 파일을 빌드할 위치를 설정합니다. |
Downloads
프로퍼티 | 설명 |
---|---|
Custom certificate handler | 커스텀 인증서 처리에 사용할 클래스를 설정합니다. 이 목록에는 UnityEngine.Networking.CertificateHandler 를 확장하는 프로젝트의 모든 클래스가 포함됩니다. |
Max Concurrent Web Requests | 동시 웹 요청의 최대 수를 설정합니다. 이 한도를 초과하는 모든 요청은 대기열에 추가됩니다. 최상의 다운로드 속도를 내려는 경우 2~4회 동시 다운로드를 권장합니다. |
Catalog Download Timeout | 카탈로그 파일이 다운로드되는 데 기다려야 하는 시간(초)을 설정합니다. 0으로 설정할 경우 타임아웃이 없습니다. |
Build
프로퍼티 | 설명 | |
---|---|---|
Build Addressables on Player Build | Unity가 플레이어 빌드의 일부로 어드레서블 콘텐츠를 빌드하는 방법을 선택합니다. Build Addressables content on Player Build 및 Do not Build Addressables content on Player Build 프로퍼티는 현재 프로젝트의 전역 환경 설정을 오버라이드하며 프로젝트를 빌드한 모든 기여자에게 영향을 미칩니다. 그렇지 않으면 전역 환경 설정 값이 모든 Unity 프로젝트에 적용됩니다. 자세한 내용은 콘텐츠 빌드를 참조하십시오. |
|
Build Addressables content on Player Build | 플레이어를 빌드할 때 항상 어드레서블 콘텐츠를 빌드합니다. | |
Do not Build Addressables content on Player Build | 플레이어를 빌드할 때 어드레서블 콘텐츠를 빌드하지 않습니다. 어드레서블 콘텐츠를 수정하면 플레이어를 빌드하기 전에 어드레서블 콘텐츠를 수동으로 다시 빌드해야 합니다. | |
Use global Settings (stored in preferences) | Unity 에디터 환경 설정의 Addressables 에서 지정된 값을 사용합니다. | |
Ignore Invalid/Unsupported Files in Build | 이 프로퍼티를 활성화하면 빌드를 취소하는 대신 유효하지 않거나 지원되지 않는 파일을 빌드 스크립트에서 제외할 수 있습니다. | |
Unique Bundle IDs | 이 프로퍼티를 활성화하여 모든 빌드의 번들에 고유한 이름을 지정합니다. 자세한 내용은 고유 번들 ID를 참조하십시오. | |
Contiguous Bundles | 이 프로퍼티를 활성화하면 더 효율적인 번들 레이아웃을 만들 수 있습니다. Addressables 1.12.1 또는 그 이전 버전으로 생성된 번들이 있는 경우 이 프로퍼티를 비활성화하여 번들 변경을 최소화하십시오. | |
Non-Recursive Dependency Calculation | 이 프로퍼티를 활성화하면 에셋에 순환 종속성이 있을 때 빌드 시간을 개선하고 런타임 메모리 오버헤드를 줄일 수 있습니다. 예를 들어 번들 A에 할당된 프리팹 A가 번들 B에 할당된 머티리얼을 참조한다고 가정해 보겠습니다. 이 경우 이 프로퍼티가 비활성화되면 Unity는 머티리얼의 종속성을 각 번들에 한 번씩, 총 두 번 계산해야 합니다. 하지만 이 옵션을 활성화한 경우 번들 B에 대해 머티리얼의 종속성을 한 번만 계산하면 됩니다. 여러 씬이 동일한 머티리얼을 참조하는 예시에서 이 프로퍼티를 비활성화하면 Unity가 각 씬을 열어 셰이더 사용량을 계산해야 하므로 비용이 많이 듭니다. 이 프로퍼티를 활성화하면 Unity는 머티리얼만 로드하며, 종속성 계산을 위해 씬을 열지 않아도 됩니다. 이 옵션은 Unity 2021.2 이상 버전을 사용할 경우 기본적으로 활성화됩니다. 이 옵션을 비활성화하면 다시 빌드된 번들의 빌드 레이아웃이 달라지므로 이전에 빌드된 번들이 무효화됩니다. 따라서 빌드를 출시한 것이 아니라면 이 프로퍼티를 활성화 상태로 두십시오. 이 옵션을 활성화하면 일부 순환 종속성이 로드되지 않을 수 있습니다. 빌드에 콘텐츠가 추가되더라도 참조된 에셋이 항상 동일한 번들 위치에 할당되기 때문입니다. 이 문제는 Monoscript에서 자주 발생합니다. MonoScript 번들을 빌드하면 이러한 로드 문제를 해결할 수 있습니다. |
|
Shader Bundle Naming Prefix | Unity 셰이더용으로 생성된 번들의 이름을 어떻게 지정할지 선택합니다. | |
MonoScript Bundle Naming Prefix | 모든 MonoScript를 포함하는 번들의 이름을 어떻게 지정할지 선택합니다. 이 번들을 사용하면 MonoBehaviour가 Monoscript를 참조하기 전에 Unity가 모든 Monoscript를 로드할 수 있습니다. 또한 중복되거나 복잡한 Monoscript 종속성의 수를 줄여 런타임 메모리 오버헤드를 줄일 수 있습니다. | |
Strip Unity Version From AssetBundles | 이 프로퍼티를 활성화하면 번들 헤더에서 Unity 버전을 제거할 수 있습니다. | |
Disable Visible Sub Asset Representations | 이 프로퍼티를 활성화하면 스프라이트나 하위 메시와 같은 하위 오브젝트를 직접 사용하지 않는 경우 빌드 시간을 개선할 수 있습니다. |
Build and Play Mode Scripts
프로젝트에서 사용 가능한 IDataBuilder
스크립트를 설정합니다. 커스텀 빌드 또는 플레이 모드 스크립트를 만드는 경우 이 목록에 추가해야 사용할 수 있습니다.
Addressables 패키지에는 기본 빌드 프로세스를 처리하고 플레이 모드에서 데이터에 액세스하는 다양한 방법을 제공하는 일부 기본 빌드 스크립트가 있습니다. 이러한 스크립트는 AddressableAssetData/DataBuilders
폴더에 있습니다.
[!참고] 빌드 및 플레이 모드 스크립트는
ScriptableObject
에셋입니다. 빌드 또는 플레이 모드 스크립트에 사용할 ScriptableObject 에셋을 만들려면 ScriptableObject 매뉴얼 페이지의 지침을 따르십시오.
커스텀 스크립트를 추가하려면 + 버튼을 선택하고 파일 패널에서 해당 스크립트를 나타내는 ScriptableObject 에셋을 선택합니다.
커스텀 스크립트에 대한 자세한 내용은 커스텀 빌드 스크립트 작성을 참조하십시오.
Asset Group Templates
새 그룹을 만드는 데 사용할 수 있는 템플릿 목록을 정의합니다. 새 템플릿을 만드는 경우 이 목록에 추가해야 사용할 수 있습니다.
Addressables 패키지에는 기본 빌드 스크립트가 사용하는 스키마를 포함하는 하나의 템플릿이 있습니다. 템플릿은 AddressableAssetData/AssetGroupTemplates
폴더에 있습니다.
[!참고] 그룹 템플릿은 ScriptableObject 에셋입니다. 그룹 템플릿에 사용할 ScriptableObject 에셋을 만들려면 ScriptableObject 매뉴얼 페이지의 지침을 따르십시오.
커스텀 템플릿을 추가하려면 + 버튼을 선택하고 파일 패널에서 해당 템플릿을 나타내는 ScriptableObject 에셋을 선택합니다.
커스텀 템플릿을 만드는 방법은 그룹 템플릿을 참조하십시오.
Initialization Objects
프로젝트에 사용할 초기화 오브젝트를 설정합니다. 초기화 오브젝트는 IObjectInitializationDataProvider
인터페이스를 구현하는 ScriptableObject 클래스입니다. 이러한 오브젝트를 만들면 런타임에 데이터를 어드레서블 초기화 프로세스로 전달할 수 있습니다.
[!참고] 초기화 오브젝트는 ScriptableObject 에셋입니다. 초기화 오브젝트에 사용할 ScriptableObject 에셋을 만들려면 ScriptableObject 매뉴얼 페이지의 지침을 따르십시오.
초기화 오브젝트를 추가하려면 + 버튼을 선택하고 파일 패널에서 해당 오브젝트를 나타내는 ScriptableObject 에셋을 선택합니다.
자세한 내용은 초기화 커스터마이징을 참조하십시오.
Cloud Content Delivery
프로퍼티 | 설명 |
---|---|
Enable Experimental CCD Features | 이 프로퍼티를 활성화하면 실험적 CCD 기능을 활성화할 수 있습니다. |