유니티(Unity) 프로젝트 빌드에서 스크립팅 백엔드 IL2CPP
- 유니티게임개발/기초공부
- 2022. 2. 18.
반응형
유니티(Unity) 프로젝트 빌드에서 스크립팅 백엔드 IL2CPP
IL2CPP (Intermediate Language To C++)는
유니티에서 제공하는 스크립팅 백엔드(scripting backend)입니다. 프로젝트를 빌드할때 선택할수있는 옵션중(mono, IL2CPP) 하나로 앱의 성능, 보안, 플래폼호환성을 개선하기위해 사용할수있습니다.
IL2CPP를 사용하면 C# 코드의 MS 중간 언어(MSIL)에서 C++코드로 변환한 후 플래폼의 네이티브 코드로 컴파일하여 최종적으로 바이너리 파일을 생성합니다(exe, apk, xap)
대상 플래폼에 최적화된 네이티브 코드를 생성하여 다양한 플래폼에서 높은 성능을 보장할수있고(성능, 플래폼호환성) C# 코드가 C++로 변환된 후 네이티브 코드로 컴파일되기 때문에 코드 분석 및 역공학이 더 어려워집니다(코드 난독화 및 보안)
L2CPP를 사용하여 프로젝트를 빌드할 때 수행하는 절차
https://docs.unity3d.com/kr/2019.1/Manual/IL2CPP-HowItWorks.html
IL2CPP를 사용하면 빌드 시간(C++ 코드 생성 및 컴파일 과정이 추가)과 빌드 파일의 크기가 증가합니다. 빌드 시간 최적화에 관련해서 아래 문서를 참고합니다.
https://docs.unity3d.com/kr/2019.1/Manual/IL2CPP-OptimizingBuildTimes.html
https://docs.unity3d.com/ScriptReference/Il2CppCompilerConfiguration.html
반응형
'유니티게임개발 > 기초공부' 카테고리의 다른 글
유니티에서 모바일에 빌드실행한 게임 디버깅(android device monitor) (0) | 2022.02.23 |
---|---|
유니티 점진적 가비지 수집(incremental garbage collection) (0) | 2022.02.19 |
유니티의 텍스처 압축 포맷(texture compression format, TCF) (0) | 2022.02.18 |
유니티에서 오브젝트의 축 정렬하기(FromToRotation, LookRotation) (0) | 2022.01.11 |
유니티에서 라이트의 그림자 설정(cast shadow, receive shadow) (0) | 2022.01.08 |