IL2CPP
어셈블리 언어인 IL (Intermediate Language - 스택 기반 어셈블리 언어)를 C++ 소스 코드로 변환
C#이나 Unity 컴파일러가 작성한 IL를 C++ 코드로 바꿔서 apk나 exe 파일을 만들기 전에 C++로 어셈블리를 추가 할 수 있게 해주는 방법 (그래서 C코드로 변활할 수 있게 도와주는 NDK가 필요하다)
장단점
장점)
- 코드 크기를 줄일 수 있다. (사용하지 않는 유니티 모듈을 제거 할 수 있다)
- IOS 64 bit 빌드를 지원한다.
단점)
- 버그가 mono에 비해 많이 생긴다. 주로 리플렉션을 사용하는 JSON 라이브러리
- 빌드 시간이 mono보다 느리다
- 디버깅이 어렵다
Mono 빌드
SDK, JDK 필요
보통 많이 쓰는 방법 (빌드 속도가 빠름)
방법
- 유니티 File -> Build Settings -> Scenes 추가(첫씬은 맨위에) -> Android 클릭 후 Switch Platform
(5.1.5 버전은 바로 가능했지만 최신 버전유니티에서는 Android Modul 다운로드 후 유니티 재실행 필요) - 유니티 Edit -> Preferences -> External Tools 메뉴에 들어가서 SDK ,JDK 경로지정
- SDK 경로 - C:/Users/[사용자 이름]/AppData/Local/Android/Sdk
- JDK 경로 - C:/Program Files/Java/jdk1.8.0_191
- 유니티 File -> Build Settings -> Player Setting 클릭
- 오른쪽 Insfector 창에 회사이름 어플이름 작성, 아이콘 배정(배정 안하면 기본 Unity 아이콘 이미지)
- 하단에 Other Setting 클릭 Identification 안에 Bundle Identifier(or PackageName) 수정,
MiniMum APILevel 수정- Bundle Identifier(or PackageName) - com.회사이름.어플이름
- MiniMum API Level - SDK에 설치한 안드로이드 최소 버전 (5.0)
- Configuration 안에 Scripting Backend 가 MONO 인지 확인
- 다시 왼쪽 Build Settings 돌아와서 Build 클릭
Il2cpp 빌드
SDK, NDK 필요, IOS 64 bit 버전 빌드 및 보안성을 높이기 위해 사용한다
방법
- 유니티 File -> Build Settings -> Scenes 추가(첫씬은 맨위에) -> Android 클릭 후 Switch Platform (5.1.5 버전은 바로 가능했지만 최신 버전유니티에서는 Android Modul 다운로드 후 유니티 재실행 필요)
- 유니티 Edit -> Preferences -> External Tools 메뉴에 들어가서 SDK ,NDK 경로지정
- SDK 경로 - C:/Users/[사용자 이름]/AppData/Local/Android/Sdk
- NDK 경로 - 압축 파일을 푼 경로
- 유니티 File -> Build Settings -> Player Setting 클릭
- 오른쪽 Insfector 창에 회사이름 어플이름 작성, 아이콘 배정(배정 안하면 기본 Unity 아이콘 이미지)
- 하단에 Other Setting 클릭 Identification 안에 Bundle Identifier(or PackageName) 수정,
MiniMum APILevel 수정- Bundle Identifier(or PackageName) - com.회사이름.어플이름
- MiniMum API Level - SDK에 설치한 안드로이드 최소 버전 (5.0)
- Configuration 안에 Scripting Backend 가 IL2CPP 인지 확인
- 다시 왼쪽 Build Settings 돌아와서 Build 클릭
'게임엔진 > Unity' 카테고리의 다른 글
[Unity] 스크립팅 백엔드 (Scripting Backend) (0) | 2024.05.22 |
---|---|
[Unity] 그래픽스 퍼포먼스 최적화 (1) | 2024.04.18 |
유니티 셰이더 기본 1 - Hello World (0) | 2024.03.27 |
[Unity] DOTS: Jobs, Burst, ECS 간단 정리 (0) | 2024.01.04 |
[Unity] ThreadPool (스레드풀) (0) | 2024.01.03 |