Still I need a 3rd party asset to make a decent UI
Unity is, in my opinion, just a poorly managed company with a good product in spite of it. They’ve failed to deliver on many things and the engine has glaring weaknesses, e.g. no networked multiplayer built in. I would bet on the engine generally getting worse over time as management tries to push non functioning new stuff.
Unity has better support for 2D games. And seems to be more mobile friendly. The asset store is better if you want to just pull in some other peoples stuff, which I find unpleasant for anything but photo realistic mundane objects. That is to say, I think Unity tends to be the best choice for making mediocre games, which is not to say that games made in Unity are intrinsically mediocre at all.
I've tried learning Unreal like 3 times. I still can't even get the build chain working
The problem is that the one size fits all approach that made then successful falls far short of ideal in areas where there simply isn't a good general case for all of the possible use cases of unity.
For UI, is because no single approach is suitable for all possible combinations of glance, grasp, touch, gamepad, mobile, PC, VR, adaptive web, and with all possible projections and rendering approaches. There may be some commonalities, but no package is going to be great at all those things.
I'm targeting HTML/CSS because it's what I understand, but always imagined I could use the same markup to render in VR / game engines. It would be valuable to me if you described what primitives you expect Unity to give you, and how you wish it worked. Sorry if this is hijacking the thread since I don't have the answer, but I would love to have the answer eventually :)
Having worked with the older GUI system I actually like what they have now. But I'd have prefered them to adopt CSS.
Now they bought all those inhouse tools from Peter Jackson they will be busy for years to come plugin them. Someone's dream in Unity is making movies, not UIs.
I have dipped into C++ for some tasks involving a lot of arrays and what not. It wasn’t that hard to do what I needed to do. I definitely do not know the language but it’s all worked out pretty well so far.
Everything else with Unity is pretty easy. I hate Blueprints or any visual scripting. In the long term Blueprints don't build any real skills, and I learned to program with Unity.
- it's hard to make declarative UIs with C# (recent versions try to make it easier, but it's still not there)
- making UIs is hard, making game UIs is even more hard because there is no rule to make a UI, it depends on many factors (art style, game genre, platform you target, input you support)
- making something customizable, serializable and performant is very hard
you are better making your own that suits your need, hence people rely on 3rd party solutions that exactly solve their use case
8ms is your framebudget for 120 FPS
With Unity I can typically buy an asset for whatever I need, but with Godot I might need to implement it myself. Unity has tons of problems, but better off with the devil you know