[Unity] 졸업작품 - UGS 라이브러리 및 Addressables 이용한 데이터 자동화 관리

김필원·2025년 4월 13일

유니티 - 졸업작품

목록 보기
1/2
post-thumbnail

개요

  • 기획자가 Google Sheet를 수정할 때마다 개발자가 수동으로 데이터를 추가하는 과정은 번거로웠다. 이에 시트 수정 시 재빌드 없이 바로 테스트할 수 있도록 기능 개발을 시작했다.

UGS 라이브러리로 재빌드 없는 실시간 테스트 구현

  • 기획자가 시트 데이터를 수정할 때마다 Unity에서 다시 빌드해야 하는 과정은 반복될수록 피로도가 높고 비효율적이었다.
  • 재빌드 없이 실시간으로 엑셀 데이터를 불러올 수 있도록 UGS 라이브러리를 활용해 기반을 설계했다.
    	public void LoadItemDataFromGoogle()
    		{
    			UGS.UnityGoogleSheet.LoadFromGoogle<int, MagicShop.ItemData>((list, map) =>
    			{
    				foreach (var data in list)
    				{	
    					Addressables.LoadAssetAsync<Sprite>($"03. Images/{data.iconResources}").Completed += (obj) =>
    					{
    						Sprite iconSprite = obj.Result;
    						gameDatabase.items.Add(new ItemData(data.itemID, data.itemName,
    						data.itemCategory, iconSprite, data.explanation, data.pathMain, data.pathSub));
    						Addressables.Release(obj);
    					};
    				}
    			});
    		}

Addressables를 활용한 아이콘 Sprite 관리

  • 기획자가 시트에 원하는 아이콘 이름을 입력하면, 해당 이미지를 자동으로 찾아 데이터에 적용할 수 있도록 Addressables를 활용해 설계했다.

ETC.

Resouces, Asset Bundle, Addressable Asset

기능장점단점
Resources- 사용이 간단하고 빠르게 구현 가능- 빌드 사이즈가 크고 최적화 제한적
Asset Bundle- 필요한 에셋만 로드하여 최적화 가능- 사용이 어렵고 하드코딩 문제 발생 가능
Addressable Asset- 에셋 빌드와 배포의 단순화- 초기 설정에 익숙해지는 데 시간이 걸림

UGS 라이브러리

https://shlifedev.gitbook.io/unitygooglesheets

참고 사이트

https://titathecheese.tistory.com/136
https://www.youtube.com/watch?v=GsKofci_HSg&t

profile
안녕하세요 개발자 김필원입니다.

3개의 댓글

comment-user-thumbnail
2025년 4월 13일

이거 완전 획기(기획)적이네요 😏

1개의 답글