유니티(Unity) 프로젝트 빌드에서 스크립팅 백엔드 IL2CPP

반응형

유니티(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

 

반응형

댓글

Designed by JB FACTORY