Hello everyone,
I recently made the switch from Unity to Godot after several years with Unity. The transition has been mostly smooth, aside from some issues on my Wayland setup, which should be addressed in the upcoming 4.5 release (really looking forward to that!).
One thing I’m still wrapping my head around is Godot’s scene structure. Coming from Unity’s GameObject/component-based system, the parent/child node structure in Godot feels a bit convoluted to me.
Is there a real design advantage to organizing things this way? Or is it more of an engine specific architecture choice that’s not necessarily better, just different?
Maybe it’ll click after a few more months of using it, but I’d love to hear how others experienced the transition and whether it eventually felt more intuitive to you.
I switched from Unity to Godot about a year ago and first I had a similar experience. But by now Godot scene System started to grow on me and I would even say that I prefer using it over Unities components.
Godot’s Scenes really started to make me think more about composition and how I can make encapsulated functionality trough Scenes. For me personally this ultimately created a lot cleaner setups where a lot more things function independently. But I think at the end of the day it is a matter of preference and I wouldn’t see how one of the approaches is “generally” better.
It’s just different
But if you want to keep a workflow similar to Unity, you could use child dummy Nodes with scripts as components, for a parent Node
I’m also not confident yet with this architecture, and think Unity’s component-based system is helpful. But on the other hand, with Godot, you can understand most of what a scene does just by looking at the scene tree.
Agreed, even after 2 or so years, Unity’s approach still seems more intuitive and cleaner to me. Especially visible in UI design, where stacking 10+ Control Nodes is not uncommon, which you’d think shouldn’t be more than 3.
But I got used to Godot structure and it’s not a big deal anymore.
At first I was just confused. It didn’t look like other ones I’ve tried (Unity, GameMaker) and felt a little bit messy.
I had a similar issue with understanding how gdscript works when it comes to parents and child nodes.
But it does eventually click - I genuinely love using Godot now.