“The Future of Scripting in Unity” promises a lot of wonderful things, we were so long waiting for. “.NET Upgrade”, they said. “Feature development and bug fixing proceed much faster”, “will keep on leveraging the wonderful Mono Project”, they said.
Today is precisely two years since this article was posted: May 20, 2014.
The biggest issue I have with il2cpp is that the editor is using Mono. So now, when I deploy to iOS and use il2cpp, I get bugs I never encountered in the editor.
The biggest issue I have with il2cpp is that it prevents “.net profile upgrade”. So we cannot use up-to-date class libraries, compiler, runtime, and language syntax.
I want to reiterate that I think it’s silly that we don’t have an updated runtime. I hope it actually happens now that the license restriction on Mono has been removed.
We are actively working on integrating an updated Mono runtime. We can’t say yet when it will be available, but it is in development now.
I know it has been a long time coming (trust me, we want to use C# 6 and .NET 4.5 features in managed code running in Unity as well!), due to factor both within and outside of our control. But it will happen, thanks four your patience!
Yes, actually! The updated C# compiler has just landed internally, and should be in the next 5.5 alpha build (which is currently available to a closed alpha group).
We’re going full speed ahead on the Mono runtime upgrade, both with Mono and IL2CPP. We don’t have anything to release there yet, but things are starting to work internally.
Well, now in updated roadmap for 5.5: “Upgrade Mono C# compiler against our current .Net 2.0 and 2.0 Subset profiles. Note that this is an upgrade of the C# compiler only, not the full Mono runtime”
What about async/await and it’s library support (Task and other classes from TPL)?
We’re not planning to expose any C# features yet. Although the new compiler does support them, some other parts of the ecosystem (e.g. script updater, debugger) are not ready for C# 6 yet. We’re working on updating those other tools now, but so far the plan is to ship Unity 5.5 with the existing C# 4 language support. but C# 6 and .NET 4 support is still in the works.
Any ETA for 5.5? At least new compiler is still better than nothing, even if no upgrade for language/libraries/runtime. Looks like these new features will not be available this year
No we don’t have an ETA for 5.5 yet. I suspect it will be out by the end of 2016, but that is just my guess, and I have no control over when it is ready.
“Give us your feedback!”, says amazing video clip in recent exciting blog post.
Unfortunately, my English vocabulary is very poor, not enough to express my emotions, when you are waiting for upgrade to modern C#/.NET for years, and official blog after all EXCITED TO ANNOUNCE NEW UBER FEATURE MEGA COOL SPLASH SCREEN!
Totally agree. Unity shouldn’t be fixing bugs or developing new features until they are completely done with [some particular feature I want]. I have been waiting for [amount of hours/months/years] for [some particular feature I want]! I refuse to believe that some features requires more development time than others or that the priorities of other developers are different from mine!
Also, considering that Unity only employs one programmer and can therefore only work on one thing at a time, I can’t believe they are wasting time not working on [some particular feature I want]!