반응형
✨ 들어가며
Unity Addressables을 AWS S3와 연동해서 리소스를 원격으로 로드하는 작업을 진행했습니다. 그런데 생각보다 삽질을 많이 했습니다. 특히 가장 골치 아팠던 부분은 바로 이 에러입니다.
BuildPath for group 'Lobby Group' is set to the dynamic-lookup version of StreamingAssets, but LoadPath is not.
BuildPath: '[UnityEngine.AddressableAssets.Addressables.BuildPath]/RemoteAssets'
LoadPath: 'https://whawoo-game-addressable.s3.ap-northeast-2.amazonaws.com/RemoteAssets'
이거 보고 멘붕 오신 분? 저만 그런 거 아니죠.
🚩 문제 상황
처음 Addressables Group의 BuildPath와 LoadPath를 이렇게 설정했습니다.
항목값
BuildPath | [UnityEngine.AddressableAssets.Addressables.BuildPath]/RemoteAssets |
LoadPath | https://whawoo-game-addressable.s3.ap-northeast-2.amazonaws.com/RemoteAssets |
→ 그리고 빌드 버튼을 누르는 순간 저 에러가 뜨더군요.
🧠 원인 분석 — 공식 문서에도 안 나옴
결론부터 말하면,
✅ BuildPath와 LoadPath는 '같은 타입'이어야 한다.
- 둘 다 런타임 변수 기반이면 OK
- 둘 다 문자열 직접 입력이면 OK
- 그런데 변수 + 문자열 조합이면 바로 에러
→ 이게 Addressables 내부에서 강제하는 룰입니다. 공식 문서에도 이거 명확하게 안 나와 있어서 대부분 사람들이 삽질하면서 깨닫습니다.
🔥 해결법 — 단순하지만 명확하다
✅ 그냥 이렇게 쓰세요.
항목값
BuildPath | Library/com.unity.addressables/aa/Android/RemoteAssets |
LoadPath | https://whawoo-game-addressable.s3.ap-northeast-2.amazonaws.com/RemoteAssets |
- BuildPath도 문자열로 명시적 입력
- LoadPath도 문자열로 명시적 입력
→ ✔️ 완벽하게 동작합니다.
❌ 그리고 이렇게 하면 안 됩니다.
항목값
BuildPath | [UnityEngine.AddressableAssets.Addressables.BuildPath]/RemoteAssets |
LoadPath | https://~~.amazonaws.com/RemoteAssets |
→ ✔️ 무조건 에러 납니다.
✔️ 프로파일 변수는 그냥 문자열 매핑이다
Addressables Profiles 창에서 우리가 흔히 쓰는 [RemoteBuildPath], [RemoteLoadPath]는 실제로 동적인 코드가 아닙니다.
[RemoteBuildPath] → 'Library/com.unity.addressables/aa/Android/RemoteAssets'
[RemoteLoadPath] → 'https://whawoo-game-addressable.s3.ap-northeast-2.amazonaws.com/RemoteAssets'
→ 단순 문자열 치환만 합니다. 그래서 런타임 변수처럼 쓰면 안 됩니다.
💡 실무에서의 팁
방식추천 여부
문자열 명시 | 🔥 강력 추천 |
프로파일 변수 | ⚠️ 조심 — 내부 꼬임 자주 발생함 |
실제로 Unity 커뮤니티나 실무에서도 이 방법(문자열 명시)이 훨씬 안정적이라는 공감대가 많습니다.
🎯 총정리 — 이 글의 핵심
- ✔️ Addressables BuildPath와 LoadPath는 같은 타입이어야 한다.
- ✔️ 가장 안전한 방식은 둘 다 문자열 명시.
- ✔️ 유니티 Addressables는 내부 메타 꼬임이 잦다. 문자열로 명시하면 대부분 해결된다.
🔥 덤 — 에러 메시지 뜨면 바로 점검하세요
BuildPath for group 'XXX' is set to the dynamic-lookup version of StreamingAssets, but LoadPath is not.
→ 무조건 BuildPath, LoadPath 타입 불일치입니다. 바로 고치세요.
✔️ 마치며
이건 진짜 기록해두지 않으면 또 삽질합니다. 저 포함해서요.
이 글이 누군가의 시간을 아껴주길 바랍니다.
반응형
'Devs > Unity' 카테고리의 다른 글
Unity Addressables + AWS CloudFront 적용 삽질 기록 (0) | 2025.07.01 |
---|---|
[UGUI] GridLayoutGroup 정렬 후 하위 게임 오브젝트 position 0인 현상 (1) | 2025.05.28 |