본문 바로가기
728x90

Achaive12

Unity, AAB 빌드 시스템에서의 Could not produce class with ID '(number)' 애러 발생 APK에서는 잘됐지만, AAB에서만 발생하는 이슈 IL2CPP를 사용하면 AAB 관련되어서 디펜던시 추가가 필요할 때가 있습니다. AAB는 APK 파일을 분리하는 시스템이고, 분리하는 과정에서 IL2CPP 빌드시스템을 이용할 경우 메인이 되는 APK 기준으로 내부 클래스들이 빌드되기에 사용되지 않는 클래스와 관련된 정보는 빌드에 포함시키지 않게 하여 용량도 줄이고 빌드 속도도 빠르게 하는 스마트한 기능이 있습니다. 하지만, '메인APK ( base)'기준이기 때문에, '메인APK'에 없는 클래스나 정보가 '추가 다운로드APK'에 있는 경우 애러가 발생합니다. (빌드된 내용에는 클래스 정보가 존재하지 않아서 애러가 발생 및 기능 작동하지 않거나 버그 또는 사이드이펙트가 발생함) 애러 전문 애러 전문은 아래.. 2024. 4. 17.
Unity, XCode15 업데이트 이후 빌드 애러 인트로 xcode Assertion failed: (false && "compact unwind compressed function offset doesn't fit in 24 bits"), function operator(), file Layout.cpp, line 5758. 위와 같은 애러 전문이 있는 경우는 스크린샷과 같이 타겟 중에서 UnityFramework 선택 후, [Build Settings] -> Linking - General -> Other Linker Flags에서 "+"를 누르고 "-ld64"를 추가하면 된다고 합니다. (정확히는 LD64) 하지만 저같이 젠킨스 등을 통해 빌드 파이프 라인을 이용하여 유니티 빌드부터 XCode 빌드까지 자동화 되어있는 경우는 일일이 추가할 수가 없.. 2024. 4. 3.
Unity, 버전 업그레이드 이후 SDK 애러로 인한 빌드 실패 유니티의 실수 최근 애플 정책 업데이트로 인해 유니티 측에서는 사용하는 엔진의 버전을 올릴 것을 권고했습니다. (링크: 유니티 코리아 유투브 채널, https://www.youtube.com/watch?v=Cx5pK7HAl0c) 업데이트를 하지 않으면 납품이 거절될 수도 있다고 하는 부분으로 필수 업데이트 사항인데요. 문제는 너무 급히 내놓았다는 점입니다. 2021.3.36f버전을 설치하고, 내장되어있는 JDK, NDK, SDK, Gadle 사용하고, 아무 것도 없는 비어있는 프로젝트 상태에서 빌드를 진행하면 빌드가 진행되지 않는 버그가 있다는 점입니다. 이 정도의 검수는 그저 비어있는 프로젝트 빌드만 해도 바로 알 수 있는 사항인데, 유니티 포럼 사이트에서 답변은 마치 구글측 실수라며 구글에 의해 수정.. 2024. 3. 21.
Unity, 버전 업그레이드 이슈 Analytics SDK 유니티 애널리틱스 애러? No cloud project ID was found by the Analytics SDK. This means Analytics events will not be sent. Please make sure to link your cloud project in the Unity editor to fix this problem. 위와 같은 애러가 유니티 프로젝트를 업그레이드 하는 과정에서 발생했습니다. 유니티 관련 애널리틱스에 정보가 기입되지 않았다는건데, 애시당초 사용하던 부분도 아니었던 부분이었습니다. 과거 버전에서 기본적으로 포함되어있는 유니티 패키지인데, 유니티 애널리틱스 정보가 없어서 원래 이상이 없었으나, 2021.3 (LTS) 버전 적용 이후에는 선택사항으로 바뀌면서, .. 2024. 3. 9.
Unity, 안드로이드 빌드 오류 또는 Resolution 작동 오류 안드로이드 내부 SDK 오류"Gradle failed to fetch dependencies"라는 애러 발생했습니다. "JAVE_HOME"으로 지정한 JDK와 유니티 내부 sdk명령어가 충돌날 때 발생하는 이슈입니다. 주로 빌드하는 경우 또는 안드로이드 Resolution 기능을 사용할 때, 발생하는 오류이며, 유니티 버전을 올릴 때 기존에 있던 종속성을 업데이트하는 경우 생기기도 합니다. 해결 방법아래의 "JDKResolution.cs" 스크립트를 "Editor" 폴더 안에 생성한다.모든 종속성 제거를 위해, Assets/Plugins/Android를 제거한다.유니티 프로젝트를 종료하고 재실행한다.재실행되는 과정에서 자동으로 Resolution이 실행되며 해결된다.스크립트JDKResolution.cs,.. 2024. 2. 27.
Unity, Gradle 버전 빌드 애러 인트로 2018.4(LTS) 버전의 유니티를 사용하는 오래된 프로젝트에서 간만에 빌드를 하려니 빌드가 실패했습니다. 빌드 애러 로그 중에서 가장 싫어하는 Gradle 애러가 나왔습니다. Gradle 애러는 가끔 앞뒤 없이 나오는 경우가 있어서, 어디가 문제인지 가끔 찾기 힘든 애러로 난감한 경우가 많습니다. 애러 전문 다행히도 버전 이슈로 명확하게 나와서 수정을 했습니다. 2018.4의 내장된 Gradle 버전은 5.1.1이며, 빌드에서 요구하는 Gradle 버전은 6.1.1로 나왔습니다. CommandInvokationFailure: Gradle build failed. /Applications/Unity/Hub/Editor/2018.4.31f1/PlaybackEngines/AndroidPlayer/T.. 2023. 8. 22.
Unity, AAB 설치 완료 체크 AAB 설치 완료 체크 AAB는 총 3가지의 설치 구간(PAD)이 있습니다. (*PAD: Play Asset Delivery) install-time: '선불'이라고 표현하기도 하며, 최초 설치 시 포함 (1GB) fast-follow: 설치 완료 시, 백그라운드에서 추가 다운로드 및 설치 진행 (512MB) on-demand: 유저가 애플리케이션 진입을 하고 나서, 이후에 추가 다운로드 및 설치 진행 (512MB) 위 설치 형태 모두를 합하면 총 2GB(사전 설치 1GB + 추가 설치 1GB)를 지원합니다. 현재 구글 플레이 스토어에 등록하기 위해서는 위해서는 위와 같은 규격을 준수해야하며, 필요에 따라 각 구간 별로 용량 조절이 필요합니다. 'install-time'의 형태는 이미 설치하면서 포함되었.. 2023. 6. 29.
Unity, 스토어별 리뷰 팝업 띄우기 앱 내의 평점 유도 팝업 게임 평점 팝업을 띄우고 싶은 경우가 생깁니다. 이 점수는 실제로 앱 평가에도 많은 영향을 주고 참여도 및 점수가 높으면 앱이 조금이라도 더 노출될 확률이 생깁니다. 게임에 자연스럽게 오버레이가 되어 리뷰 요청을 하도록 기능을 넣을 수 있습니다. 앱스토어 리뷰 평가의 경우 유니티에서 내장 함수가 있으며, 구글 플레이 스토어 리뷰 평가는 따로 API를 사용해야합니다. 아래의 기능을 사용하기 전에 Play Core 라이브러리를 요구하기에 설치해주셔야 합니다. 스크립트 using System; using System.Collections; using UnityEngine; #if UNITY_ANDROID using Google.Play.Review; #endif public class.. 2023. 5. 25.
SPUM 최적화 처리 (드로우콜, 배칭) 최근 SPUM 에셋을 구매하여 사용 중인, 유저입니다. SPUM을 사용하다 보니 약간의 애로 사항이 생겼고, 관련되어서 해결법을 공유하고자 작성합니다. 주관적인 해결 방법일 수 있습니다. 기본적 제공되는 SPUM 캐릭터 프리팹을 사용하면, 캐릭터 프리팹 하나를 사용할 때마다. 대략 Batching 13~20 사이 정도가 발생합니다. 단순하게 10마리만 사용한다고 해도 대략 130 ~ 200에 육박하는 Batching 수치를 볼 수 있습니다. 원인 원인으로는 아래의 두 가지 내용이 있습니다. 1. 캐릭터에서 사용되는 리소스 이미지에 대한 아틀라스가 만들어지지 않은 상태의 단일 스프라이트 사용 2. 개별적으로 사용되는 메테리얼 아틀라스로 묶기 먼저 유니티에서도 아틀라스 사용을 권장하고 있습니다. 단순하게 이.. 2023. 5. 7.
반응형