지금 프로젝트는 리소스를 대부분 어드레서블을 통해 불러오고 있다.
원래 Atlas 없이 하다가 최근에 시간 여유가 생겨서 어드레서블로 묶게 되었는데,
설정이 잘못되었는지 번들 용량이 오히려 는다거나 메모리 로드가 중복으로 된다거나 하는 이슈가 생겼다.
이러저러한 시도를 하고 나서 얻은 결론!
1.

번들 모드는 Pack Together로 해야한다.
그리고 나는 한 번들 내에 원본이미지 폴더, Atlas 폴더를 같이 넣었다. 밑의 이미지 참고

(!!다른 번들에 넣으면 각자 패킹돼서 용량이 두배가 된다!!)
2.
https://github.com/pschraut/UnityAddressablesBuildLayoutExplorer
GitHub - pschraut/UnityAddressablesBuildLayoutExplorer: BuildLayout Explorer for Unity 2019.3 and newer allows you to inspect th
BuildLayout Explorer for Unity 2019.3 and newer allows you to inspect the buildlayout.txt report that is generated by Addressables. - pschraut/UnityAddressablesBuildLayoutExplorer
github.com
참고한 블로그 : https://mentum.tistory.com/663
Unity Addressable bundle size analyze
#. 빌드 용량 최적화 에셋 번들이나 어드레서블을 사용하기 전인 개발 초기 단계에서는 Build Report 에셋을 통해 빌드에 포함된 리소스 파일의 용량을 확인한 후, 필요 없는 레퍼런스를 제거하고
mentum.tistory.com
이 에셋 추가하는거 추천
어드레서블 번들에 뭐가 중복되었는지, 뭐가 어느정도의 용량을 먹고 있는지 알려준다!
3.

빌드할 때는 Atlas 이미지는 Include in Build를 체크 해제해야한다.
어드레서블 빌드할 때는 체크, 프로젝트를 빌드할 때는 체크 해제해줘야함
그리고 평소에 에디터에서 테스트할 때 저 부분 체크가 안되어있으면 어드레서블 로드가 안되므로 딱 빌드할때만 해제해줘야한다.
여기서 추가하면 좋은 스크립트
https://forum.unity.com/threads/sprite-atlas-assets-duplication-in-bundles.1207783/#post-9153119
Resolved - Sprite Atlas assets duplication in bundles
Hello! I have a problem pairing Spite Atlases and Addressables. Current flow that I am testing: 1. Empty bootstrap scene that is embedded into build....
forum.unity.com
여기 포스트를 보면 Pre/Postprocess build scripts 부분이 있다.
이걸 넣어주면 자동으로 빌드할 때는 Include in Build를 해제 시켜주고 빌드가 끝나면 다시 체크해줌
저 포스트 위에 보면 Pack Separately로 하라고 써있는데,, 나는 저렇게 했을 때 용량이 두 배가 됐었다.
정확히 뭐가 정답인진 모르겠음
4.

그리고 어드레서블 빌드할 때 번들 크기가 이상하다, 중복된 리소스들이 막 들어가있다 하면
Addressables Groups->Clean Build Cache를 해주면 정상적으로 패킹됨
5. 스크립트 상에서 이미지를 어드레서블 로드할 때,
처음에는 아틀라스만 로드하고 그 아틀라스에서 필요한 이미지들을 GetSprite로 뽑아서 사용했는데,
그렇게 할 필요 없이 해당 아틀라스에 있는 이미지 A를 로드하려고 하면 자동으로 A이미지가 패킹되어있는 아틀라스가 로드되고 거기서 뽑아주기 때문에
Atlas를 추가했다고 따로 로드하는 부분은 변경할 필요 없이 이미지로 불러오면 된다.
'Unity' 카테고리의 다른 글
| [Unity] Android GameActivity Entry point (0) | 2024.09.23 |
|---|---|
| [Unity] JoyStick 움직임이 버벅거리는 현상 (0) | 2024.07.15 |
| [Unity] Android Script Debugging (0) | 2024.07.05 |
| [Unity] Android GoogleSignin 빌드 실패 (0) | 2024.07.05 |
| [Unity] Spine Atlas를 유니티에서 수동으로 합치기 (0) | 2024.07.03 |