Il2CPP - Open source?

I apologize for any ignorance on this issue, but is I2CPP open source? And if not, why? IL2CPP seems like the sort of thing that not only the game development industry could benefit from. Thank you for any answers, and I apologize also if this is the wrong place to ask this.

EDIT: I already know that unity has open-sourced a lot of it’s systems, I just wondered why IL2CPP wasn’t one of them.

I’d be interested to hear the answer…about as interested as I would be to hear a reason why they should.

I don’t have a SOLID argument on the issue, but IL2CPP seems like the sort of thing that, if presented to Microsoft, could get support and in translation, better development. You might also be able to see the likewise effect if experienced people contributed to the development of the backend via something like github. Maybe that’s just me, though.

EDIT: It just seems to me like Unity Tech wants to keep it to themselves…

Being a part of the engine I would imagine the only way to obtain the source is through Unity’s source license. Open sourcing it wouldn’t have much value either as you wouldn’t be able to make use of it without the rest of Unity’s source.

That argument seems faulty to me. The whole fad for most is the fact that IL2CPP compiles IL to… well… native. Not only that, but the compatibility and performance it can offer. That in and of itself is not exclusive to unity. Considering that argument especially does not hold up when compared to something like unity’s new “Scriptable Render Loops” and UI, which could easily be argued as an internal part of unity. Since Unity Tech is clearly not opposed to open-sourcing such a thing, I suppose the question still stands.

Bringing the UI into this discussion as an example is an odd choice because it isn’t internal in the slightest and because it’s entirely on the same side as the code you write for your games it doesn’t have any actual requirements to open source it.

The “Scriptable Render Loops” is a completely different story. It required extensive modifications both on the internal side of the engine and exposing that functionality through an API for the C# side. Open sourcing it wouldn’t be feasible any more than open sourcing IL2CPP for much the same reason I said last time.

Basically for anything that depends on the internal functionality you’re going to need the source of the engine.

1 Like