[Unity] 안드로이드에서 많은 리소스와 함께 빌드를 뽑을 때 AAPT2에러
Unity/TroubleShooting 2024. 8. 24. 13:14[Unity] 안드로이드에서 많은 리소스와 함께 빌드를 뽑을 때 AAPT2에러

✌️개요원래 안드로이드는 빌드는 작게하고, 리소스는 런타임에 CDN을 통해 내려받는게 정석이지만리소스를 전부 내장하여 바로 플레이할 수 있는 빌드를 뽑아야 하는 일이 생겼다작업중에 만났던 수많은 에러 중 AAPT2 Gradle에러에대해 기록한다 🔥문제일단 에러는 gradle빌드 단계에서 터지고 내용은 이렇다FAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':launcher:processDebugResources'.> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade > AAPT2..

[Unity] 안드로이드14 크래시 "Writable dex file is not allowed."
Unity/TroubleShooting 2024. 8. 2. 02:09[Unity] 안드로이드14 크래시 "Writable dex file is not allowed."

✌️문제요새 구글쪽에서 업데이트 요구가 자꾸 온다구글 결제 라이브러리 업데이트타겟 API레벨 34이상(안드로이드14)로 업그레이드이 두가지를 진행하라고 한다진행하고 앱을 업데이트하니 크래시 보고가 들어왔다 에러 로그는 아래같은 내용이었다Caused by java.lang.SecurityException: Writable dex file '/data/user/0/{앱패키지명}/cache/1673051109277.jar' is not allowed. 이 문제의 해결법을 기록한다 🔥해결해당 에러내용으로 조금 검색해보니파이어베이스 Unity SDK 깃허브 저장소에 이슈로 올라온 내용이있다.확실히 같은 크래시 내용인것으로 보인다 코멘트를 보니 SDK v11.5.0에서 해결될것이라는 코멘트가있다 릴리즈페이지로가서..

[Unity] 애니메이터 블렌드 트리 이벤트 동시 실행 문제
Unity/TroubleShooting 2024. 7. 7. 19:00[Unity] 애니메이터 블렌드 트리 이벤트 동시 실행 문제

✌️발단아래와 같은 블렌드 트리가 있다`HorizontalMovement`, `ForwardMovement` 파라미터에 따라 블렌딩 된다파라미터에 따라 A,B가 블렌딩돼서 플레이될것이다설계에 따라 다르겠지만 나는 A,B 중 하나가 대부분의 가중치를 가져가면서 플레이시킬 목적이다 문제는 애니메이션 이벤트에서 발생한다A,B 둘 모두 같은 함수를 호출하는 이벤트를 다른 타이밍에 넣어줬다 A의 경우 그리고 B의 경우 그리고 블렌드 트리에서 애니메이션이 실행될 때 기대와 다른 결과가 생긴다기대: 대부분의 가중치를 가져가는 애니메이션의 이벤트만 트리거결과: 두 애니메이션의 이벤트가 모두 트리거 아무래도 가중치에 따라 따라 보여지는 애니메이션이 다를 뿐유니티 내부 구현이 블렌드 트리 내부 모든 애니메이션이 실행되서 ..

[Unity] 애니메이터 서브 스테이트 머신의 요상한 트랜지션 우선순위
Unity/TroubleShooting 2024. 5. 24. 07:21[Unity] 애니메이터 서브 스테이트 머신의 요상한 트랜지션 우선순위

✌️개요애니메이션 작업을 하다가서브 스테이트 머신(이하 "SM")끼리의 트랜지션이 자꾸 의도대로 안되는 문제에 직면했습니다 검색해봐도 문제와 정확히 일치하는 케이스도없고 머리아파 하던중 의외로 이상하고 간단한 해결법이어서기록합니다 🔥문제아래 그림과 같이 3개의 SM으로 구성된 애니메이터가 있다고 치겠습니다 (보기 쉽게 기록하기 위한 예시입니다)조건`BaseSM → SM1`으로 가는 트랜지션`Condition` 없음SM내부 애니메이션에서 Exit노드로의 트랜지션 `HasExitTime = true` `BaseSM → SM2`로 가는 트랜지션`Condition = Fire트리거`SM내부 애니메이션에서 Exit노드로의 트랜지션  `HasExitTime = false` 이런 구성에서 `BaseSM`에있는 애니..

[Unity] 어드레서블 리모트 경로 변경 후에도 기존 경로로 불러올 때
Unity/TroubleShooting 2024. 5. 14. 16:44[Unity] 어드레서블 리모트 경로 변경 후에도 기존 경로로 불러올 때

✌️문제NodeJS로 정적 파일 제공을 구성해서 로컬 호스트로 테스트를 하고 있었습니다 이후 작동함을 확인하고,원격 서버로 `Remote.LoadPath`를 수정해주고 어드레서블을 다시 빌드해서서버에 넣어줬습니다  처음엔 작동하는줄 알았더니서버를 내리고 확인해보니 여전히 불러오더라고요 서버가 내려갔는데...그래서 좀더 확인해보니 분명 경로를 바꾸고 어드레서블을 다시 빌드했음에도로컬호스트에서 불러오는 문제를 발견했습니다. 🔥해결문제의 원인은 카탈로그를 캐싱하고있어서 그렇습니다이전 `LoadPath`로 설정된 카탈로그가 캐시에 남아있어서계속 기존 경로를 참조하고 있습니다 `Application.persistentDataPath`경로로 가보면이렇게 `com.unity.addressables`라는 폴더가 보입..

[Unity] 어드레서블 씬 로드 후 인스펙터에 프리팹 참조가 끊어질 때
Unity/TroubleShooting 2024. 5. 13. 23:27[Unity] 어드레서블 씬 로드 후 인스펙터에 프리팹 참조가 끊어질 때

✌️개요문제 설명은 이렇습니다 `MainLobby`씬에있는 `PoolManager`는 풀링될 프리팹들을 리스트에 담고있습니다이렇게요 그리고 이 `MainLobby`씬을 어드레서블 번들로 빌드해줬습니다 그리고나서 `Addressables.LoadSceneAsync`함수로 어드레서블로 빌드된 씬을 로드했습니다그랬더니 이렇게  프리팹이 빠져있습니다 이상한 경고들도 막 반겨주네요 근데 또 웃긴건 이 `PoolManager`만 빠져있고 다른 스크립트들이 가지고있는 프리팹들은 괜찮았습니다 무튼 이 문제를 해결해보겠습니다 🔥본문답은 의외로 간단합니다프로젝트에서 `AddressableAssetSettings`에셋을 찾아줍니다디폴트라면 `Assets > AddressableAssetData`폴더 안에 있습니다 설정값중..

image