[Unity] iOS 실제 시스템에서 Tilemap이 포함된 Scene을 AsseetBundle에서 읽은 후 충돌
2977 단어 Unity
⚙운영 환경
📝현상.
🤔가설
다음부터 Asseet Bundle를 통해 Tilemap이 포함된 Scene을 읽을 때 붕괴될 것이라고 가정하고 조사를 진행합니다
💡까닭
응용 프로그램에서 Tilemap을 사용하지 않고 Strip Engine Code
유효할 때, 구축할 때 Tilemap과 관련된 실행 코드를 삭제합니다.따라서 AcceetBundle에서 Tilemap이 포함된 Scene을 동적으로 가져올 때 실행할 수 없습니다.
반면 애플리케이션에서 Tilemap을 사용하는 경우에는 문제가 발생하지 않습니다.
🗑Strip Engine Code 정보
Strip Engine Code
는 모바일 최적화를 위한 옵션 중 하나이며, Unity 엔진에서 사용되지 않은 코드를 제거하여 구축 용량을 줄일 수 있습니다.Strip Engine Code
는 다음과 같은 조건에서 적응할 수 있다.
PlayerSettings => Other Settings
중 Strip Engine Code
유효🛠취소
Strip Engine Code 비활성화
Strip Engine Code 구축을 비활성화하여 충돌이 발생하지 않도록 확인합니다.이 상태라면 용량이 늘어나기 때문에 다른 처리 방법을 취한다.
link.xml에 사용된 코드 기록하기 (추천)
Unity - Manual: Managed bytecode stripping with IL2CPP
위에서 설명한 파일 link.xml
을 만들고 Assets 폴더의 바로 아래에 놓으면 줄무늬가 없는 코드 목록을 정의할 수 있습니다.
이번 정의UnityEngine.Tilemaps.Tilemap
/UnityEngine.Tilemaps.TilemapRenderer
.
link.xml<linker>
<assembly fullname="UnityEngine">
<type fullname="UnityEngine.Tilemaps.Tilemap" preserve="all"/>
<type fullname="UnityEngine.Tilemaps.TilemapRenderer" preserve="all"/>
</assembly>
</linker>
위 구성link.xml
상태에서 사용Strip Engine Code
및 구축 및 검증하여 충돌 없음 확인✨
📗참고 자료
<linker>
<assembly fullname="UnityEngine">
<type fullname="UnityEngine.Tilemaps.Tilemap" preserve="all"/>
<type fullname="UnityEngine.Tilemaps.TilemapRenderer" preserve="all"/>
</assembly>
</linker>
Reference
이 문제에 관하여([Unity] iOS 실제 시스템에서 Tilemap이 포함된 Scene을 AsseetBundle에서 읽은 후 충돌), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/lycoris102/items/d7ccf683c0d0552b74a7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)