본문 바로가기
- Unity/let us all UNITE !

[Unity] Asset Bundle & Addressables

by david_동근 2025. 6. 20.

Addressables 를 알아보기 위해선 Asset Bundle 에 대해 간단히 알아보면 좋겠습니다.

개발자가 Asset 을 서버 묶어 올려두고, 플레이어는 런타임에 이를 받아와 실행할 수 있습니다.

(유니티 코리아 개발자님의 영상을 참고했습니다. https://www.youtube.com/watch?v=3f2XjEGDZ2s )

 자세한 건 아래를 참고해주시길 바랍니다.

https://unity.com/kr/blog/engine-platform/addressables-planning-and-best-practices

 

Addressables: 계획 및 베스트 프랙티스

이 블로그 게시글에서는 유니티 시니어 테크니컬 프로덕트 매니저 제프 리센미가 프로젝트에서 Addressables 시스템을 최대한 활용하기 위해 개발자가 가장 중요하게 고려해야 할 사항에 대해 소

unity.com

 


 

Asset Bundle

Asset Bundle 은 DLC 용이나 패치용으로 사용하기 좋으며,

초기 인스톨 사이즈를 줄이는데 효과가 있기 때문에, 모바일 환경에서는 필수적입니다.

 

아래 클래스처럼 Asset 을 레퍼런스하는 목록들이 많아질수록, Scene 에 메모리 부담이 커질 수 있습니다.

public GameObject zombiePrefab;

void Start()
{
	if (zombiePrefab != null)
    	GameObject.Instantiate(zombiePrefab, this.transform, false);
}

 

그렇기 때문에, 개발이 어느정도 진행된 상황이라면 Resources 폴더로 옮기게 됩니다.

public string zombieName;

IEnumerator Start()
{
	var req = Resources.LoadAsync(zombieName);
    yield return req;
    
    if (req.asset != null)
    	GameObject.Instantiate(req.asset, this.transform, false);
}

 

Resources 폴더, 간편하게 이름으로 불러올 수 있는 유용한 기능 입니다.

하지만, Resources 폴더는 간편하지만, 빌드 시간도 늘어나거나 에셋 관리도 힘들어진다는 단점이 있습니다.

그렇기에 개발 초기에는 위와 같이 사용하다, 아래와 같이 에셋번들을 이용하는 방식으로 바꾸게됩니다.

출처 : https://www.youtube.com/watch?v=3f2XjEGDZ2s

 

죄측은 로컬, 우측은 서버에서 가져와 디스크에 저장한 뒤 로드하게 됩니다만...

Dependency 처리가 되지 않았기에, 위 처럼 사용하시면 안됩니다.

※ 에셋들은 Dependency 로 묶여있습니다, 매터리얼이 오브젝트를 참조하거나 텍스쳐를 사용하거나... 등 에셋들 끼리 의존성을 갖는 것들을 의미합니다.

 

그래서, Dependency 를 체크하고 로드하기 위해선, 아래처럼 작성해야 합니다.

 

위 처럼 코드가 무진장 길어지게 됩니다.

그래서 저흰, 이런 Asset Bundle 을 대체할 수 있는 Addressables 을 사용할 수 있습니다.

 

Addressables

마치 Asset 을 Address (주소)로 필요할 때 로드하고 반환하는 것 처럼,

에셋 관리를 쉽게하도록 만든 시스템입니다.

아래 포스트에 Addressable 를 정리해 두었습니다.

https://bulletprooves.tistory.com/77

 

[Unity] Addressable #1 (Local)

Asset Bundle / Addressable 을 이용하면, 게임 로딩할 때 추가 파일 다운로드를 구현할 수 있습니다.https://www.youtube.com/watch?v=Z84GCeod_BM 더블엘님의 Addressable 영상을 참고했습니다. Addressable System overviewAddr

bulletprooves.tistory.com

 


Addressable 은 빌드 크기 최소화나, 의존성 관리나 메모리 절약 차원에서 이점이 많기 때문에,

에셋 관리를 위해서 프로젝트에 참고해보도록 합시당!

그럼 좋은 하루 되세용~ ‧˚₊*̥(っ˶ᵔөᵔ˶ )っ

 

 

참고 : https://www.youtube.com/watch?v=3f2XjEGDZ2s

'- Unity > let us all UNITE !' 카테고리의 다른 글

[Unity] NGUI  (0) 2025.07.02
[Unity]  (0) 2025.06.21
[Unity] Addressable #1 (Local)  (0) 2025.06.19
[Unity] Getting started with UniRX ( Observer Pattern )  (1) 2025.05.22
[Unity] Awake OnEnable Start  (0) 2025.05.17