Search Unity

Today at Build, Microsoft announced that Unity is joining the .NET Foundation. Quoting from the announcement:
“This marks an important milestone in opening the technical decision making processes of the core .NET projects and also demonstrates the commitment of these partners in helping to make sure .NET continues to be an open, innovate and exciting development platform.”

We are indeed looking forward to working together with Microsoft and the other foundation members to help shape the future direction of .NET and to make Unity’s .NET experience great. For Unity developers, this means making sure the latest .NET APIs, tools, and language features are available to you. It means representing your interests to maintain and further improve .NET as a great platform for developing games.

To this end we have been and will continue to work on:
– IL2CPP .NET Runtime
– Native Visual Studio Integration
– Support for C# 6
– Upgrade Mono Runtime and Class Libraries
– High Performance Garbage Collector

The IL2CPP .NET Runtime powers scripting for Unity on many platforms. It combines the efficiency and ease of use of .NET with the portability and performance of native C++. We are continually improving the performance of IL2CPP as we deploy it to more platforms.

Native Visual Studio integration has been available since Unity 5.2. It provides a rich, out of the box debugging experience for Unity within Visual Studio.

The other items mentioned will be rolled out one by one as they are ready. They are a top priority within Unity and work is already underway. When we get closer to releasing these features, we will update our public roadmap with them.

Once again, we are excited to become a member of the .NET Foundation and to see continued openness, innovation, and collaboration in the .NET ecosystem.

Ya no se aceptan más comentarios.

  1. I LOVE UNITY PLAYER SO MUCH!

  2. Please give us a way to completely opt out of the native garbage collector. Thats the best thing you could do for your engine.

  3. Would love to see a move away from Mono and into .NET core to be honest. Unity seems like it was literally made for it. Though just thinking about the performance improvements over current runtime fare gives me real cause for joy.

    Please, guys, for the love of god, if you give me this hope that you’re planning to move out of the 11 year old runtime we’ve been stuck with, please keep your promise, and don’t let this moment just fade into obscurity for 6 years. Having come to Unity from previously rolling my own stuff in modern runtimes, using the antiquated Mono 2.0 was a serious downer for me in Unity. It made me feel legitimately dirty.

    1. The part i wouldn’t like about it if Unity moved away from Mono and into .Net Core is that actually lots of api in Unity still doesn’t work properly when attempting to deploy to Windows Store with Net Core setting or one of the IL2CPP deploy option combinations.
      Due to that i would far prefer it if MS recently more open stance would actually allow to upgrade mono to latest Net C# spec and hence Unity be able to deploy that way with full api support, or alternatively MS opening up to allow more when Unity does IL2CPP deploy or alternatively the option MS also brought up at build where one should soon be able to deploy x86 desktop apps to the windows store via some kind of wrapper or container or similar (have to check that once available to see if works well).

  4. Kristoffer Helander

    abril 4, 2016 a las 9:49 am

    What about using Xamarin instead of IL2CPP?

  5. caitlyn.morton-nichols

    abril 2, 2016 a las 10:59 am

    the gametraining is great thank you ………………………………………..

  6. Not trying to sound greedy but now that every major company is releasing its technology for free and making it open source, I think it is about time Unity Technologies release the dark skin to EVERYBODY.
    The ugly looking Unity editor is long over due.

    1. Same here I vote for the dark skin the gray is killing my eyes..

  7. Wow, some major improvements over Unity 5.X’s lifespan !

    .NET 4.6 would be yuge, absolutely yuge. That SIMD perf, that cream. Hope it comes sooner than later. Also excited for the director/sequencer thing and what improvements for animation scripting you guys will come up with – I dabble in MMD (MikuMikuDance) videos in my spare time and wanna see what will be possible with Unity, that stuff would be huge in Japan if you could make it better

  8. Why stick with Mono at all now that .Net is mostly open source and cross platform?

  9. Hi
    I seriously hope IL2CPP becomes replaced/merged with the Microsoft OT compiler to LLVM IR. LLIC and IL2CPP seem partially similar however I did not check completely the depth of the technical limitations of each.
    What I know is that unity would like to controls this important part of their tech and probably MS or MS+Unity can create a much better AOT compiler to IR compared to Unity alone.

    I say this based on facts and releae history of MS and UT and not senses.

  10. Why Upgrade Mono Runtime and not .NET Core?

  11. Robert Cummings

    abril 1, 2016 a las 4:49 pm

    For what it’s worth, I don’t mind if Unity gets bought. It’s pretty commercialised nowadays unless people totally only look at what they want to see.

    I for one want maximum progression, regardless of souls lost and kittens into volcanoes. Good news on the .net front – can’t wait for it to be finished and stable!

    Great work all.

  12. This is how Unity Gets acquired by MS.

    2 or 3 build conferences ago, Xamarin announced they were part of the .Net foundation. fast forward to 2016, they get acquired.

    I see a pattern here…

    Please don’t get acquired by MS, UT. That day will be a dark dark day for all of us.

    1. Given the benefits of the Xamarin acquisition, why would that be so terrible?

    2. Satya Nadella is actually turning Microsoft into a decent company lately. Being acquired by them might not be a bad thing.

    3. Completely agree with Koblavi. Only poor things can come from MS.

    4. I completely disagree with Koblavi. MS is transforming into a open source company at the moment. That day, MS acquires Unity would be the brightest and best day since Unity was founded.

  13. Unity 5.4 for everyone to download would be the best April Fool’s joke for me right now . . .

    1. It is! No joke – we opened up the beta builds to allow everybody to have a play with it and give us feedback a couple of weeks ago.

  14. Great news.. At first, i though it was 1 April joke,

  15. Teja Swaroop Arukoti

    abril 1, 2016 a las 9:20 am

    is that mean Unity3D will support .NET framework 4.6 and above in future?

    1. Yes we plan to support .NET 4.6 and continue improving support as .NET evolves in the future.

        1. Any ETA?

          Yes

          Any Bounded ETA?

          No

          This year?

          I don’t think XD

  16. Building on the foundation! nice! good job.

  17. Sorry, but now I don`t know if this is 1st April or real message, because if its realy it would be great.
    But yeah, then again, April 1.

    1. This is a real message, just bad timing on our part! :)

  18. It’s Awesome!!

    1. We don’t have an ETA yet, although we are actively working on this, and have been for some time now. We will make an announcement as soon as we know when things will be available, don’t worry!

      1. So, how long have you been working on this before it was made public, then?

  19. From which version of Unity approximately?

    1. Jonathan Chambers

      abril 1, 2016 a las 3:54 am

      As the post states, we will update the public roadmap when we have a better idea of what release the features will arrive in.

  20. Instead of IL2CPP i’m more curious about a current Mono or .Net Core runtime integration. As Mono itself is now under MIT-license are there any plans to upgrade Unity and ship it with a current Mono version?

    Basically upgrading to a new Mono version would fix nearly all problems. Code is probably several magnitudes faster, and i don’t even believe that IL2CPP comes close to the speed of a current .Net Core or Mono runtime. A 4.0 runtime means we finally could use modules from nuget. Newest C# or F# language support. Anyway newest class libraries. And Mono anyway uses it’s own generational GC since Mono 3.0 that is better suited for games.

    1. Jonathan Chambers

      abril 1, 2016 a las 3:52 am

      The blog post mentions a Mono upgrade specifically: “Upgrade Mono Runtime and Class Libraries”.

      Both Mono and IL2CPP have their place within Unity. An upgraded Mono does bring many useful things, but it is not “several magnitudes faster” than today and generally IL2CPP runs as fast or faster than even a recent Mono in our tests.

      1. Its true IL2CPP is about a 3rd faster then Mono but not .NET.
        .NET Core (aka coreclr) is about a 3rd faster then older versions of .NET with my tests [.NET 3.5] (would have to check again) and the old versions of .NET were already faster then Mono and IL2CPP.

        Now I know its a HUGE project to update anything to .NET over Mono as the embedded APIs are different. Also IL2CPP may be more portable then both .NET and Mono because of how it compiles out into C/C++ code… a method I personally agree with and wish .NET itself would implement over LLVM back-ends as it allows you to target VC++, GCC, CLANG, etc compilers…. much more practical.

        Because of this I wish IL2CPP would contribute to the .NET foundation and not just consume it by open sourcing IL2CPP at some point. If anything porting over IL2CPP peaces over in some way that allows .NET to have a MSIL to C++ backend.

        1. There already exists a project by the way to turn IL to IR. https://www.dotnetfoundation.org/blog/announcing-llilc-llvm-for-dotnet

          But i think LLILC was introduced after Unity announced IL2CPP. But converting IL to IR sound more reasonable to me as trying to convert IL to C++. The whole point of LLVM is to have a low-level IR language, not use C++. That is also how GCC works today. That’s in general possible why we have stuff like “emscripten”. As it just compiles IR to JavaScript.

          But anyway, they turn it into C++ to convert it later with emscripten, so they already use the LLVM tool-chain to some extend.

      2. Thanks for answering!

        I’m asking explicitly because as far as i remember the plan for Unity in the past was to drop the Mono runtime and replace it fully with IL2CPP. But sure the plan was to still use the mono class libraries. So currently that plan changed and the Mono runtime will still be used (except for WebGL)!?

  21. Awesome stuff!
    Hoping that this is not just a coordinated April 1 hoax :D

    1. This is definitely not an April fools joke! It is still March 31 some parts of the world! :)

      We are entirely serious about this, and are looking forward delivering a great .NET experience in Unity.

      1. Thanks.

        I’ve been waiting for that clarification.

  22. Please, please, please don’t be an April’s fool.

  23. Does this mean Microsoft likes IL2CPP and wants to get its hands on it? :p

  24. Is that mean the IL2CPP as OpenSource project?