IL2CPP jest opracowanym przez Unity zapleczem skryptowym, którego można używać jako alternatywy dla Mono podczas tworzenia projektów dla niektórych platform. Uwaga - IL2CPP jest dostępny tylko podczas budowania dla następujących platform:
- Android AppleTV, iOS *, Nintendo 3DS, Nintendo Switch, Playstation 4 Playstation Vita, WebGL *, Windows Store, Xbox One
Mam projekt (jedność 5.2), który przeszedł na wdrożenie Androida. Próbowałem zmienić kopię zapasową skryptu z Mono2x
na IL2CPP
i pokazuje mi to
IL2CPP na Andriodzie jest eksperymentalny i nie jest obsługiwany
Więc moje proste pytanie brzmi: jeśli nadal nie jest obsługiwane, to dlaczego uwzględniono tę opcję, jaka jest zasadnicza różnica między IL2CPP a Mono2x. Dlaczego przestawiłem się na backend skryptowy IL2CPP ? jakie są jego zalety i wady ?
Sprawdziłem również w jedności 5.5.2, że nie ma opcji IL2CPP we wdrożeniu platformy Windows.
IL2CPP jest podobno * platformą wykonawczą, która jest szybsza niż mono. W tym kontekście „eksperymentalny” kładzie silny nacisk na słowo „rzekomo” w poprzednim zdaniu.
Funkcje eksperymentalne zostały wydane z tego samego powodu, dla którego oprogramowanie beta zostało wydane publicznie: Oprogramowanie jest wystarczająco dobre do użycia, a programiści oczekują raportów o błędach i innych opinii od szerokiego grona użytkowników, aby mogli dotrzeć do momentu, w którym oprogramowanie jest gotowe lub faktyczne wydanie.
* IL2CPP nie działa dla kodu, który jest używany wyłącznie przez odbicie, co stanie się, gdy użyje się odbicia, serializacji lub ogólnych w klasach, które nigdy nie są wywoływane bezpośrednio, a tym samym usuwane z kompilacji. To samo ograniczenie dotyczy obecnie Mono na platformach, które używają ograniczeń kompilacji Ahead of Time.
źródło