Poll of the Day > Learning Unity, Unity is weird.

Topic List
Page List: 1
Yellow
10/25/22 3:00:25 AM
#1:


In my 8 seconds using this, I can clear up about 8 misconceptions. Unity devs don't talk about this, because they are probably just so used to it, but it is not exactly elegant.

It is not built with C#. It is built with C/C++. It does not use Microsoft's C# for your project files, it uses its own C# parser and Mono, a (obsolete) re-implementation of C#. It does not build C# projects, it creates single-file C# scripts, which it interprets. Slowly. It does not have a JIT for these scripts, and it does not support some very basic .NET features, so much so that it might as well be considered a different language to use.

Should you use a .NET nuget package, it will transpile it into a Mono script. So there you have it, it does not support .NET at all, and can hardly be said to support C#, as it's missing some very basic C# syntax.

Unity is implementing a .NET core version and it should be ready in 2024, it will (if done right) be vastly superior, and faster. That said, I can work with Mono, I just think it's really jank.

I understand why people hated C# in the past, Microsoft closed it off and people wrote about 8 different re-implementations and transpilers. That's probably why MS realized it wasn't working out and made .NET core. These days it's the god-damn best, though.
... Copied to Clipboard!
Topic List
Page List: 1