That said, it locks you into using stuff like mono and stuff for cross platform which makes me a sad.
Microsoft's .Net Core runtime (now just .Net) has supported Linux and MacOS since 2016, so this information has been out of date for 7+ years.
https://devblogs.microsoft.com/dotnet/announcing-net-core-1-...
The standard libraries are still an allocation party, of course, but that can be supplemented in an engine context.
Being able to fix a bug without resetting memory state is a huge ergonomic advantage in game development where generating the right memory state can be incredibly complex and depend on a ton of very specific and hard-to-reproduce factors. Not to mention incredibly slow.
Visual Studio works with UE and calls that "Edit and Continue" and it works in C++, too.
If you're a AAA dev you give up a lot of that iteration because performance overtakes you, but there's little reason some indie 2d platformer will want to deal with even 30 second iteration times (which would be blazing quick for a AAA setup). C# is a mature, familiar environment for devs with similar syntax to C++ that can get decent performance as long as you maintain some discipline (for starters, no LINQ)
Maybe ChatGPT6 can port the UE C++ codebase to C# and we can call it UE6
I’ve not played around with any game development for a long while - does C# end up popular here just because people are familiar with Unity? I definitely get that C++ is not the most productive language - though improving perhaps.
Simply loading the .NET Core CLR is not difficult [1] - but unless things have changed since I last tried binding C++ interfaces to C# is time consuming, especially if you want to be able to implement an interface in managed code.
[0] - https://mono-ue.github.io/
[1] - https://learn.microsoft.com/en-us/dotnet/core/tutorials/netc...
Probably even a C or C++ background would allow you to do that. Maybe even knowing js is enough.
It previously used UE4 and C# integration was all working with that but, as soon as they found out that they could get access to Source 2, they took the opportunity. Makes sense because the team is significantly more experienced with the Source engine since most of them have previously worked on or with Garry's Mod.
Never interfere with an enemy while he’s in the process of destroying himself.
But most of my issues have been with engine philosophy, where Unreal has bent over backwards to expose things to their visual scripting language. It feels like every single feature has a mandate to work in a blueprint tech demo, and as a result few of them are pleasant to code against and almost none of them work together coherently. These are not issues that depend on the language used.
Whether or not it's justified is another manner. I haven't personally dealt with the modern Unreal Engine but natively supporting C# would, at the very least, make people a lot more likely to switch over.
That being said as a non mobile guy who occasionally dabbles in engine stuff I'll be migrating to Unreal for good now. I haven't been a paying customer for a while now but I used to pay for Unity back in the super early days of AR.
Or I guess take another serious look at Godot :D
I'm also surprised though they haven't just gone and added C# support as a first class option, it seems like such an obvious win.
Edit: am I wrong (mathematically?)
Of course if you sell games at $60 a piece it is not a whole lot, and the regular seat pricing of Unity is most likely a far greater expense.
Wouldn't upgrading to Pro be a better option? Yearly subscription for a seat seems to be worth about 10k $0.2.
Also you're cost per install is almost certainly going to be significantly below $0.2 because every install outside of:
"United States, Australia, Austria, Belgium, Canada, Denmark, Finland, France, Germany, Ireland, Japan, Netherlands, New Zealand, Norway, Sweden, Switzerland, South Korea, and the United Kingdom" (I wonder how did they create this list, e.g. Spain and Italy seem to have a comparable or even higher cost-per-click than Sweden , Austria, Finland etc.)
will cost just $0.02
Yeah, it almost seems to me that the $0.20 is there to force to encourage plus subscribers to Pro.
Which probably was a poor choice marketing wise since most people will just see a single number and not pay much attention at anything else.
Also it's only $0.2 fore a specific list of countries (US, CAN, AU, NZ, JP, SK and some richer EU countries). Everywhere else it's $0.02
I don't personally like this whole business model that much, but financially it seems to be pretty reasonable (I guess as long as you can somewhat predict your expected install count in advance which might not be that easy in some cases).
The issue is the fact that the wording is unclear. Also a price per install seems like a bad target overall. How is it reported? Now they are saying that there are exceptions like gamepass installs. It is going to be a mess.
Also the change is retroactive. Imagine a vendor announcing that starting January 2024 you will have to give them a piece of your cake. Even if the piece is small, you are still going to contact your layers, and you will loose trust with this particular vendor.
Oh yeah, I 100% agree with this. On the very basic level I just hate the concept of a third party tracking and counting every user I have without my (or the actual user's consent). Not every game/app made with Unity is distributed on the App Store/Steam/etc. and there are plenty of other reasons why I wouldn't want to share that data with anyone (or even collect it).
Looking at their per install pricing if you have large number of users but very low revenue per user it would certainly make sense to upgrade to Pro where you would only pay ~$2k for each seat as long as you make less than 1 million per year. Which doesen't seem that unreasonable.
no it's got everything to do with shareholders, because ultimately, the money the shareholders invested into the company will need to be recouped by the shareholders, by any method they can.
And in a cut throat business of game engines, unity is trying to squeeze out every bit of juice it can. It still has some advantages over godot atm (such as big install base, and a pre-existing network/momentum which is hard to dissipate), and my guess is that unity is trying to get revenue up before godot takes their lunch in a few more years.
It's difficult to champion high end features for your engine but keep it suitable for low end smart phones. Epic made a good attempt to win mobile devs back in the Infinity Blade days, but given their recent focus (not to mention lawsuits against Apple and Google), it seems they intentionally decided to deprioritize mobile and focus on PC and console.
Man, you just described [enshittification](https://www.wired.com/story/tiktok-platforms-cory-doctorow/) to a tee
Unity's recent moves to me speak to a fear that they've more-or-less hit their market saturation point, and now they're looking to extract more from the developers who live in their slice of the pie. I fear this will make that slice shrink, which will create more fear, and then the problem spirals.