티스토리 뷰

반응형

[1] 어드레서블 에셋 시스템이란?

Addressable Asset System 문서에 설명이 간단명료하게 되어있으니 읽어보는 것을 추천합니다. 

유니티 블로그 > 어드레서블 에셋 시스템 글도 있습니다. 

 

어드레서블 에셋 시스템은 'address (주소)' 로 asset을 load할 수 있는 쉬운 방법을 제공합니다.

 

어드레서블의 주된 기능은 로드할 대상이 되는 에셋과 에셋이 로드되는 위치 및 방식을 분리하는 것입니다. 

에셋에 address를 부여하게 되면 에셋을 로드하는 측에서는 에셋의 address만 알면 되고 에셋의 실제 위치가 변경되어도 상관없습니다. 

(에셋이 원격서버에 업로드되어있든,, 앱 내부에 포함되어있는데 위치가 변했든,,, 노상관)

 

[2] 어드레서블 시스템 등장 배경 

감귤오렌지님의 유튜브 > unity addressable asset 를 보니 

에셋 관리방식이 리소스 폴더 -> 에셋번들 -> 어드레서블 시스템 이렇게 발전해왔다고 합니다. 

 

https://www.youtube.com/watch?v=GsKofci_HSg

 

HTTP 서버에서 에셋 번들 다운로드(GET) 를 해보려고 했는데

어드레서블 시스템이 더 최근 방식 & 심플한 방식이여서 이걸 바로 학습하면 될 것 같네요~.~

 

 

[3] 어드레서블 에셋 시스템 주로 쓰이는 곳 

제가 구글링해본 결과..

 

1. 대규모 프로젝트에서 메모리를 효율적으로 관리하고 싶을 때 (참고: 어드레서블 에셋 시스템으로 메모리 최적화하기)

2. 서버에서 추가 에셋 다운로드가 필요할 때 

 

주로 사용되는 것 같습니다. 

 

 

[4] 어드레서블 패키지 설치 

어드레서블 에셋 시스템을 사용해주려면 Addressables 패키지를 설치해줘야합니다. 

Package Manager 에서 Addressables 를 install 해줍니다. 

 

 

설치가 끝나고 Asset을 눌러보면 이렇게 Addressable 토글 부분이 생기게 됩니다. 

 

 

 

[5] 에셋을 어드레서블로 만들기 (어드레스 부여하기)

 

Addressable 토글 버튼을 활성화 하면

주소를 입력하는 부분이 나옵니다. 

디폴트로 현재 에셋의 path가 주소로 설정이 되는 데 수정가능합니다.

 

 

활성화 하고 Window > Asset Management > Addressables > Groups 에 들어가보시면 

 

 

기본 로컬 그룹에 추가되어있는 것을 보실 수 있습니다. 

 

 

그룹을 추가하고 싶다면 우클릭하시면 됩니다. 

 

 

드래그앤드랍으로 다른 그룹으로 에셋을 이동시킬 수 있습니다. 

 

 

이 블로그에서 가져온 그룹과 라벨에 대한 설명입니다~

 

나중에 빌드를 하게되면 그룹마다 하나의 번들로 묶이게됩니다.
반대로 말하면 그룹 내 하나의 리소스만 사용하려 해도 해당 그룹 내 번들을 전부 다운로드 받아야만 사용이 가능합니다.

Labels의 기능은 추후 Labels의 값으로 동일한 Label의 에셋들을 한번에 로드할 수 있습니다.
그룹은 실제 파일들을 묶는 용도라 보시면 되고 Label은 로드할때 쓰는 용도라 보시면 되겠습니다.

 

 

[6] 에셋을 로드하기

 

1.  Addressables.LoadAsset(s)Async  // 유튭설명

2.  Addressables.InstantiateAsync    // 유튭설명

 

 

이 두 메소드를 사용해줄 수 있고 자세한 것을 유튜브 설명을 참고해주세요! 

 

[7] 에셋을 서버에 올리고 다운받기

 

 Profiles에 들어가시면

 

 

RemoteLoadPath 를 설정해주는 필드가 있습니다.

 

 

아래는 Amazon S3를 사용하여 에셋을 서버에서 다운받고 로드하는 영상과 글입니다. 

 

https://www.youtube.com/watch?v=qL7PXAFNP5M 

 

 

https://kupaprogramming.tistory.com/129

 

Addressable Asset system 간단하게 서버 다운로드로 실사용까지

기존 Assets Bundle (이하 에셋번들) 방식의 상위호환 느낌으로 나온 방식입니다. 에셋번들을 배우려다 본 시스템을 유니티 내장 패키지 매니저를 통해 제공 중이어서 다뤄보았습니다 유니티 버전

kupaprogramming.tistory.com

 

 

 

 

 

반응형

'🎨 > Unity' 카테고리의 다른 글

[Unity] Blender 에서 모델 임포트하기  (1) 2024.01.04
[Unity] Apple Unity 플러그인  (0) 2022.06.13
[Unity] 네이티브 플러그인  (0) 2022.03.24
[Unity] SerializeField  (0) 2022.03.23
[Unity] Screen Recording 검색 기록!  (1) 2022.03.18
댓글