본문 바로가기
개발/Unity

Unity) IL2CPP란?

by 테샤르 2020. 9. 7.

IL2CPP란?

유니티에서 빌드를 할 때 IL2CPP라는 형식으로 난독화 하는 옵션이 있다.

유니티는 C#기반으로 CIL(MSIL)이라는 미들 코드를 만들어 낸다.

미들 코드를 가지고 원시 코드(네이티브 코드)로 변경하는 과정을 JIT Compiler가 수행을 한다. 중간 코드(CIL)에서는 실행 머신 환경에 관계없이 동일 코드를 실행할 수 있다.

반응형

 

공식 설명은  다음과 같다.

URL :https://docs.unity3d.com/kr/2019.1/Manual/IL2CPP.html

 

IL2CPP - Unity 매뉴얼

IL2CPP(C++로 변환하는 중간 언어)는 Unity에서 개발한 스크립팅 백엔드로, 여러 플랫폼용 프로젝트를 빌드할 때 Mono 대신 사용할 수 있습니다. IL2CPP를 사용하여 프로젝트를 빌드할 때 Unity가 스크립�

docs.unity3d.com

 

IL2CPP(C++로 변환하는 중간 언어)는 Unity에서 개발한 스크립팅 백엔드로, 여러 플랫폼용 프로젝트를 빌드할 때 Mono 대신 사용할 수있으나. IL2CPP를 사용하여 프로젝트를 빌드할 때 Unity가 스크립트와 어셈블리의 IL 코드를 C++ 코드로 변환한 후에 선택한 플랫폼에 적합한 네이티브 바이너리 파일(예:. exe, apk,. xap)을 만듭니다. IL2CPP는 Unity 프로젝트의 성능, 보안 및 플랫폼 호환성을 개선하는 등의 용도로 사용된다.

 

 

IL2CPP로 빌드를 하게 되면 코드의 난독화가 돼서 실행파일을 디컴파일(Decompile)을 해도 코드가 바로 노출되지 않는다는 것이다. 최소한으로 해야 하는 난독화라고 생각한다.

 

 

 ★

 

반응형

댓글