см. Документацию по Unity здесь Код Unity Scripting API скомпилирован в обычные библиотеки .NET DLL (управляемые сборки).
Все управляемые сборки, которыене являются частью сценариев (таких как плагины и библиотеки базовых классов), обрабатываются инструментом Unity под названием Unused Bytecode Stripper, который находит все неиспользуемые классы и методы и удаляет их из этих библиотек DLL (Dynamic Link Library).Этот шаг значительно уменьшает размер встроенной игры.
Все управляемые сборки затем преобразуются в стандартный код C ++.
Сгенерированный код C ++ и часть времени выполнения IL2CPP компилируются с использованием собственной платформыкомпилятор.
Наконец, код привязывается либо к исполняемому файлу, либо к DLL, в зависимости от платформы, на которую вы ориентируетесь.