When I added Lua to Garry's Mod my intention wasn't primarily to make things moddable. I wanted to make things easier for myself. By wrapping a few functions and coding in Lua I could iterate a million times faster. I didn't have to close, compile and re-open every time, while also hiding all the bullshit and hard stuff.
Unity was about that when we first started with it. They hid all the hard stuff in c++ so we didn't have to think about it. The more time has gone on, the more bullshit has crept to the forefront. The've gone from hiding the hard stuff to moving more and more stuff into C#.
So while other engines have been trying to catch Unity up in terms of developer friendliness, Unity has been going the other way by making itself more unfriendly.
What Unity Is Getting Wrong
Developer QOL When I added Lua to Garry’s Mod my intention wasn’t primarily to make things moddable. I wanted to make things eas...
garry.tv
There is a lot to take from this. Unity 2020 doesn't seem to address some common complaints about the underlying issues many Unity developers are facing. Especially with UNET, which I personally used in the past for prototyping my real-time strategy game, linked below. UNET is now deprecated for 4 years, and no prominent solution was given as to what roadmap Unity Technologies has in store for us.
GitHub - tommai78101/Multiplier: Real-time Strategy Unit Balancing Tool, written in Unity 5 with UNET support.
Real-time Strategy Unit Balancing Tool, written in Unity 5 with UNET support. - tommai78101/Multiplier
github.com
Here's a good summary, from the Unity developer of Throne of Lies:
Let's not forget how they like to abandon entire modules and make you upgrade to reap the benefits/fixes (defeating the purpose of LTS).
Unity is a marketing company. It needs to be a gamedev company. They don't make games with their own engine, so the people making these big decisions are likely from investor pressure to do something that may look good in their head, but likely never made a game in their life. These are the type of people that think "ooh, implement x feature" instead of asking the important things like "how's the stability? How many bugs do we have?"
- Did you know UNET was only made by TWO devs, none dedicated to docs, support, or anything? No one from Unity knew anything about their own product that they were charging for in an alpha-like state, only to abandon it completely not long after. UNET is coming back in a different form soon, but swept under the carpet (LTS will not get fixes).
- Only in Unity 2020 (not LTS) did they fix their massive number of Unicode issues, even though Unity is pretty much the only engine used in Taiwan and other Asian countries. Every time the user typed in Chinese or a foreign language, it would show garbage text surrounding your text while typing among other breaking issues.
- Editor performance still a major issue for medium+ scope projects, where every small change will "refresh" your ENTIRE project synchronously on a single thread. Working on a small scene and change a text box and save, but your project is 15gb? Expect your project to be locked completely for up to 60s. Slightly better in Unity 2020 btw (not LTS), but the root isn't fixed. I heard that in Unreal, when you save a big project, it saves INSTANTLY (smart scans?).
- Still tons of performance issues (both in editor and standalone), and DOTS is a good direction ... but this means that any performance issues for those not yet adapting DOTS (existing projects) will be swept under the carpet to never be seen by LTS versions.
- If you use Unity, you probably want to, well, use the native text engine! Well, we (and millions of others) used many, many textboxes and interactions throughout the dev process. Guess what happened? Instead of fixing all their bugs/issues/lacking features, they bought TMPro and swept the bugs right under the carpet. LTS will never see any fixes.
- Leading up to ... there's no point of LTS for Unity. If there are bugs, they'll just abandon the system and have an excuse to never fix it. "Just upgrade and spend hundreds of hours swapping to our new systems that we'll change again next year with your small, indie team with limited resources!"
- Heck, I read on the Unity forum in a feedback thread that they purged all their bug reports (including unresolved) on their open src repo (BitBucket, iirc?). I wish I could find this link to verify (can someone help me out?). Just stuff like this. Burying issues as if it'll resolve everything.
Unity is great, don't get me wrong -- but they leave a lot to be desired. They're the only enterprise company that has such unstable "stable" features and adds features BEFORE editor performance/bug fixes. I mean what if Visual Studio froze for 30+ seconds every time you saved??
r/gamedev - Garry Newman (Developer of Rust, Garry's Mod): 'What Unity is Getting Wrong'
1,725 votes and 470 comments so far on Reddit
www.reddit.com
More discussions in the link above.