What made you prefer Godot over other engines like Unity or Unreal Engine?
The way it’s designed is just nice - in unity if you’re trying to do something the engine doesn’t do by default, it feels like you’re almost fighting it. But in Godot a lot of the engine’s built in features are just things you can add yourself - resources, nodes, and editor plugins.
Also, support for serializing/deserializing dictionaries. When I used unity a few years ago it didn’t have that feature and afaik it still doesn’t.
This was the biggest thing for me. I’m not really on the up and up with game design in editors like unity and unreal so it’s a lot of work just to get the basics going. In godot? It’s very easy and almost never changes between versions. I’ve been able to use 4 year old tutorials and still follow along.
In Unity if you’re not paying for courses on that version of unity you’re likely lost as shit as they’ll rename things or move them around between major versions. It’s a lot of lost time trying to figure out where it’s been moved to, and it’s also very demoralizing and makes me give up quickly.
It’s just transparent. It feels like alot of lessons were learned from the broken abstractions of older ecs engines. It might not be as powerful yet, but the foundation is solid and it’s easy to implement the more complicated stuff.
Also, dotnet 6 implementation is a breath of fresh air.
I really like how you just start it and you have all you need. Script editor is there and exporting can also easily be done. No bullshit in your way to get going.
open-source and light weight.
Small, lightweight, open source, a large active community, and honestly even gdscript has started to grow on me
Pretty much all this, plus:
- it’s very well made for learning to dev,
- Unity is garbage,
- UE is soooo big.
The thing Godot is lacking is a real good way to work on adaptative music and sound design.
It’s open, free and hackable. It also has nice UI tools.
Nicer UI, I don’t have to faff about with Unity Hub or whatever, and it feels a lot simpler and cleaner.
The scene tree based approach just clicked with me well.
Well, Unity had a lot of unfinished packages that they suggest you use, and then depreciated the packages that they had already, and it seemed like a huge mess. Unity also took forever to load, - so I prefer the ‘just works’ of Godot features, and the fact that it’s lightweight and quick to load.
The node system
Easier to understand UI compared to Unity. Most of the resources taught the same way or at least a more optimal way.
If I look up how to do things in Unity, I tend to find sub optimal answers most of the time. Like suggesting to do things in the frame render loop.
Yeah there are a fuck load of people making tutorials that have very little understanding of programming.
- Unity has a plethora of half baked features and they routinely deprecate features.
- Having multiple render pipelines was very frustrating when trying to learn the more complex visual stuff.
- the Node and scenes system makes way more sense to me. In Unity you have scriptable objects and prefabs, both of which are half as valuable as everything being a scene. Being able yo isolate individual components and work on them in their own tab and test them out by running an individual scene is significantly faster development pace, as well as more streamlined.
- Easier Access to multiple programming languages. C# is like 95% up to par with GDScript as far as engine integration. With 4 its a first class language as far as development.
It’s lightweight (~350mb after decompression, I’m not fooled by the small executable), fast startup, generates relatively small executables, compiles to several platforms
I’m not learned enough in Unity or UE to make proper equivalent benchmarks to see who makes faster 2D or 3D stuff
GDScript being pretty much syntathically identical to Python makes it simple to learn and understand, which I enjoy. I’ve yet to learn how to use nodes, which I suppose won’t be too different from Blender’s? Don’t know how to mess with those either
Open source. Cross-platform.
And to quote the documentation: No strings attached, no royalties, nothing.
Exactly this. And when I want to do something with it, I
apt install
oremerge
it and it works, no shady binaries, no mess.
-
Fantastic UI tools makes creating pretty applications trivial
-
Signal system struck a chord with me. I’ve always loved signal systems compared to referencing everything (though I still do reference things). It’s very fleshed out compared to Unity’s version.
-
Lots of great QoL features. I love how Autoloads make singletons super easy to use. I love how all the parameters I need are there. I love how seamless the Git integration is. I LOVE Godot 4’s Tweening system. I had to do a project last month on Unity and there is no built-in Tweening support so I had to use a library called DOTween. Throughout the entire project I really missed how easy Godot’s tweens are.
-
It’s super light. You know how Unity creates like 300mb+ shaderlab files whenever you create an empty project? It feels wonderful looking at my Godot projects and they’re like ~500kb each excluding assets. It’s also super snappy and I don’t have to wait for THE DAMN SCRIPTS TO COMPILE every time I edit a file.
Mind you I recognize Godot isn’t perfect. There are some pretty critical physics issues. The web export is kind of unfinished. I miss how you can see and move around the scene while playing like in Unity. Still, it’s the best game engine I’ve used, and I’ve jumped around quite a bit before landing here half a year ago.
-