5 ms·
As a professional game dev who has years of experience producing real products in both Unity and Godot, I am totally not with you about your thoughts on Godot v
by nightowl_games 2y ago
As a professional game dev who has years of experience producing real products in both Unity and Godot, I am totally not with you about your thoughts on Godot vs unity.
Godots signals are such a huge step up over Unity's built in classes having a lack of modularity.
How do you even make sense of that? Godot vs Unity basically have the same scene/node/component model except Godot does it better imo. Eg) What is the difference between a prefab vs a scene in Unity anyways? Basically nothing, it's just (I'm speculating) a tech debt mistake in their design, probably still going because of how light maps work today.
Unity's advantage over Godot is it's 3D renderer, built in physX, il2cpp backend for C#, profiler, general runtime performance and console support.
Godots design is objectively more cohesive, as Unity has simply splintered into 10 different design directions since ~2018.
I'm not trying to be a hater, I just think signals are a huge advantage for writing modular, simple stuff in Godot. I think there's plenty of great reasons to prefer Unity to Godot but "signals" is not one of em.
- seanthemon 2y agoI think the original commenter just really likes "plug and play" solutions with a lot of hand holding which is what Unity is excellent at. The problems come down the line. Godot is objectively a way way better tool
- monkeydreams 2y ago> Godot is objectively a way way better tool If you like things like Godot, Godot is the type of thing you will like. Seriously though, Godot works way better for me using C# than it does with GDScript and the OOP structure means I can refer to classes by their identity.
- deleted 2y ago[deleted]
- bentt 2y agoThat doesn't make any sense. Unity may have a pedigree of being for beginners, but in recent years they can barely keep current documentation on their new systems. This smells like a comment from someone who has never used it.
- seanthemon 2y agoI haven't used it in the past 3 or so years, but I used to use it quite extensively before that.
- Kiro 2y agoIt's definitely not a "way way better tool" and no serious game developer would say that. Everyone agrees that Godot has a lot of catching up to do but we're still using it because we believe in the foundation and what it will eventually become.
- hungie 2y agoI'm a serious game developer, been in the industry for decades. I would say that. Godot is a way way better tool. There, I've falsified your claim. But more seriously, it's a faster dev experience, it's more ergonomic, it's not cluttered with half baked "new" ways of doing things that don't do everything the old ways do. There's no reason to pick up Unity unless you are being paid to, IMO.
- Capricorn2481 2y agoOr any of these > Unity's advantage over Godot is it's 3D renderer, built in physX, il2cpp backend for C#, profiler, general runtime performance and console support. And correct me if I'm wrong, but Godot doesn't have hot code reloading where you don't have to restart your game.
- hungie 2y agoGodot has a good 3D renderer. It has a built in physics system and an off the shelf upgrade to Jolt (which was used in horizon forbidden west). There's absolutely a profiler (https://docs.godotengine.org/en/stable/tutorials/scripting/debug/the_profiler.html https://docs.godotengine.org/en/stable/tutorials/scripting/d...). Hot reloading is supported. Console support is some work. Possible, but work.
- nightowl_games 2y agoI'm a Godot contributor. The 3d renderer is okay, but I'm hesitant to call it good. It's not as good as Unity nor Unreal, imo. The internal profiler really sucks. Everything is possible if "some work". Porting to PlayStation 5 is probably a lot of work. I'm a Godot fan boy, but we gotta be honest about its flaws. If your targeting 3D on console, definitely go with Unity or Unreal imo.
- deleted 2y ago[deleted]
- Thaxll 2y agoGDScript sucks big time, it's not even close to C#. They should drop that Python like language and go full in C# integration.
- TillE 2y agoThe core developers are too enamored with GDScript, but that's fine, C# and C++ (GDExtension) support is excellent. There are only a handful of API functions which are hampered by their need to support GDScript, so it's something you can basically just ignore. You don't even have to use Nodes much, though they're great for lots of stuff. For real performance, you can drop all the way down to their thin wrapper over Vulkan and do whatever you want.
- glimshe 2y agoGDScript makes simple things simple and complicated things complicated. It's pretty good for the simple parts of your game. You can still use C# for its complicated parts as they integrate well.
- SoothingSorbet 2y agoWhat "sucks" about it? Since they added type checking it's been perfectly fine, besides the notable omission of nullable types (which is... a strange omission, to be sure).
- mirashii 2y agoNo tuples. No structs. No real debugger. Extremely limited profiling tools. Autoformatting breaks code more often than not. No interfaces. Extremely weak async story. No refactoring tools, external IDE features like jump to definition. Built in editor is slow and buggy. No destructuring assignment, no enumerate for loops, no looping over key and value together from a dict. GDScript is, in my opinion, unsuitable for anything more than a couple hundred lines at most.
- panza 2y agoI agree with this. I suspect it's part of a more general Godot philosophy that involves full in-editor workflows with highly detailed scenes, many nodes, and with small scripts attached to all of them.
- farazzz 2y agoI love everything about Godot so much, except for its UI system It is just so confusing to me and took me over a day to get a simple menu aligned how I wanted it might just be me not understanding how it works though
- nkrisc 2y agoGodot’s UI system is easier when you realize that Control-derived nodes are even more granular than even HTML elements. They’re more like Tailwind classes. Yes, your UI will be a tree of Control nodes 20 levels deep, and that’s fine. Your root UI node will probably be an HBoxContainer, or VBoxContainer, each of which simply arranges their children horizontally or vertically, respectively. Between those two nodes you can create 90% of UIs you’d want to.
- jayd16 2y agoUnity is a bit of a mess but to compare apples to apples when Unity has more features seems not quite fair. Are signals significantly better than Unity events or is it more that the API uses them heavily? Honestly, why doesn't Unity retool SendMessage() and public API callbacks to be an exposed Unity event? Unlike merging prefabs and scenes, that's not even a breaking change.
- osense 2y agoI recommend trying Zenject in Unity! It provides a pretty good dependency injection framework, but more importantly in reply to your comment it has a very easy to use signal bus implementation! Now I have not tried Godot so I don't know how the two compare, but for where I work Zenject was basically the a-ha moment that made it possible to develop Unity apps/games that don't devolve into a huge unmaintanable mess.
- PcChip 2y agoI thought everyone was abandoning unity after their fiasco
- bathtub365 2y agoA lot of people made a lot of noise about it and it hasn’t been long enough to tell for sure, but there is no real competition to Unity in many situations without a lot more work falling on your dev team.
- blensor 2y agoFully agree, in Godot a Scene and a Node are the same thing which makes it much simpler conceptually. Also, having a true text based scene format makes merging commits easier than merging unity changes.