3 ms·
There is no universe in which Unity is a show case for “why should we pick c#?” The engine is C++, the C# integration is bad, the new ECS translates C# to C++
by wokwokwok 3y ago
There is no universe in which Unity is a show case for “why should we pick c#?”
The engine is C++, the C# integration is bad, the new ECS translates C# to C++ (or some cpp like IR) before it runs, and the whole thing is closed source and openly hostile to open source (eg. package managers) that might damage their revenue from the asset store.
Don’t get me wrong; modern C# projects are pretty cool, but this is way cooler than Unity.
- LtdJorge 3y agoBurst translates C# to to LLVM IR (and first to some simplified C#, etc).
- jayd16 3y ago>the C# integration is bad, the new ECS translates C# to C++ (or some cpp like IR) This makes me suspicious of your take seeing as IL2CPP has been part of Unity for years and years and not the ECS stack. They also have a package manager now as well as custom/3rd party repo settings. But on the whole, yes. Unity is not a shining example of C#. Although its an example of how far you can hack with it.
- wokwokwok 3y agohttps://docs.unity3d.com/Packages/com.unity.burst@1.8/manual/csharp-hpc-overview.html https://docs.unity3d.com/Packages/com.unity.burst@1.8/manual... Burst and IL2CPP are different things. Burst is also a different “can’t believe it’s not c#” custom layer they invented, own and now have to maintain a separate fork of. (Apparently just maintaining IL2CPP wasn’t keeping them busy enough)
- jayd16 3y agoIf you're talking about Burst then it would be more correct to say they added another language that is similar to but different than C#. AOT Burst builds a native library so I don't believe there's a C++ step.