Is Godot BETTER than Unity? | 3D Comparison

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
is gdau better than Unity no well maybe I guess it's subjective so I'm going to give you my thoughts so far on using gdau now a quick disclaimer I've only been using the game engine for 2 weeks now and what you're seeing is what I've made in those 2 weeks I've not even touched multiplayer or 2D yet and I'm probably not going to touch 2D in the future if I'm being honest but anyway I'm going to talk about the workflow coding 3D noes bugs and documentation SL tutorials and remember this is from a Unity developers perspective so you're allowed to disagree let's start with the workflow I'm going to disagree with the majority and say I don't think gdau is more beginner friendly than unity and I wouldn't say the workflow is just better than unity's either let me explain let's use creating a cube for example in unity it's just right click and create Cube and that's it you're done you can duplicate move and scale cubes however you want in gdau you have to first create a static body then add a mesh instance and select Cube and then then add a collider instance and select the cube again now we can scale the cube however we want right nope you get this warning which tells you to change the collider shape size and mesh scale individually so the Collision shape scale can stay uniformed that's still not that bad right well hold on for some reason Collision shapes in the same scene share the same size values so you can't just duplicate and scale them differently so essentially you have to create a new scene for every different shape size you want so the main Pro with this workflow is that it forces you to work more modular but I'd argue that it's almost too modular and unity already allows you to work more modular with prabs it just doesn't Force you so I'm used to creating a player and then stacking him with components and scripts but in G do a node can only have one script attached to it and I know it's just personal preference but I'd rather have one node with all the player states attached than to have a node for each state it makes the node tree Messier and it also makes referencing the scripts a little a little harder now the last thing I'm going to complain about is that there's no live onetime scening gdau which does make debugging harder but it's not a deal breaker for me and I did find that you can still edit variables live which is good for tweaking stuff now I'm using gdau with.net and so far editing and saving scenes and scripts has been pretty much instant which is actually amazing after coming from Unity that just sometimes had an infinite loading bug I know I complained a bit about the workflow but at the end of the day most of it is just difference and the size and speed of the engine in my opinion makes up for it so I chose to use C in my Gau project and yes I know there's very few gdau C tutorials and there supposedly is limitations with C but regardless C is home to me and I don't want to say goodbye to my semicolons and curly braces that smile back at me also I've seen that cop has better performance than GD script and I'm also yet to encounter any limitations with C anyway let's talk about the issues I've had there's no simple solution for invoking a method after time so if this is unclear in unity you could simply call a method after time with this function and I used to use this all the time in unity now I've looked everywhere for a similar alternative to this but I couldn't find one so I ended up just making a script to do this for me but it would still be nice to have this function in the node class out of the box you can't edit custom types in the property editor so if I create a class with some variables and then create an object of that I can't export that and see the object in the property editor which is actually kind of annoying because I used to use this feature all the time in raycasts are over complicated so as you can see here gau's raycasts are a bit more work than unities let's start with having to create an object just to pass through as a parameter which isn't that bad but the more annoying part is that it returns a dictionary so you need to know different key values to get the values you want but before you can get that value you have to check if the value value even exists and then lastly you have to convert it to the variable type you need I'm not sure why they didn't just make it return an object like Unity does but anyway I made the script to do this for me and as you can see here it makes my code cleaner but most importantly I don't have to mess around with the dictionary there's no root node so in unity you can call transform. root on any object and get the vot object which I used to use all the time when I'm dealing with child colliders or child components but in a do there's only one root node which is the scenes node and all the other nodes are children of it so you end up having to count the parents required and then use dot get parent multiple times to get to the node you require which is timec consuming kind of messy and pretty bug prone in my opinion so there's a bit more to discuss like spawning scenes getting the forward Direction local and Global positions blah blah blah all in all even though I complained a bit again coding and GD do really isn't too different to Unity and there's not a huge reason to choose Unity over gdau when it comes to coding let's start with the particle system or GPU particles I should say gd's GPU particles is very similar to unity's particle system in my opinion it's just missing a few features like not being able to rotate 3D particles however it can still definitely make most effects that I need the animation tree is a big topic I'd argue that it's actually better than unity's animator because there's quite literally no limits for example you can have a blend tree inside a blend space inside a state manager that's inside another state manager which is how my current animator is working now you can also argue that it's behind unities because it's just missing a few features let's start with transitions only change if a bull is true so you can't transition if a bull is false for some reason which means you have to create two bulls just for transitioning to running for example there's also no trigger parameter so if I just want to transition to an attack animation and return when it's complete I have to set a bull to true and then set it to false after the transition is complete and there's a bunch more issues like not having a float as a parameter type not being able to have multiple parameters no any state tool and not being able to reuse parameters hopefully these features get added in the future because I really love how Limitless gd's animation tree is the skeleton 3D mode I'll be honest at first I was annoyed I couldn't just parent objects To His Hand by drag and dropping but I soon realized that using the bone attachment node makes the node tree a lot cleaner and it also makes it so much easier to reference bone attachments so I think GD might actually have the edge over Unity with this feature the spring arm node is what I use for the camera controller in this project and yeah I love it I actually would say I prefer over Unity cin machine because it's just so much simpler and I prefer making changes through Cod than having to mess around with a bunch of settings gau's standard material Shader is kind of amazing it's used for everything from particles to 3D models and has so many really useful options like proximity fade distance fade and billboard which is how I made this glass without even having to touch a Shader overall I love having so many options on the standard material Shader and I think it has the edge over Unity here again the only features I noticed were missing were the line renderer and the trail renderer hopefully they get added in the future because I used to use unity's line and Trail renderer all the time there's a lot of pros and cons When comparing G's 3D nodes to unity's components and I think it mainly comes down to each dev's personal requirements I've had a few minor bugs with gdo such as not being able to see exported variables material textures not updating and probably the biggest one was moving scripts to cause an error of scenes although I was able to quickly fix this by opening it in notepad and updating the script file path every game engine has bugs and gdau is no exception but I'd say it's very comparable to Unity as everyone already knows most tutorials and community help is for GD script however most of the time you can easily convert the solution you find to C by looking it up in gau's documentation I found that the best place to find a solution is just to go straight to the dots because most of the time even if I did find cop community help it was outdated cop aside there's plenty of tutorials out there for nodes and features and if you're using GD script then there's more than enough tutorials out there to get started to sum it up you can argue that gdau is better because it's open source and it's the Community Driven engine but you can also argue that Unity is better because from my experience it's still slightly ahead with features rendering and the C library but I think the biggest Factor should be the direction the game engine is going and right now Unity is on a decline and gdau is looking like the open source savior we all needed so with that being said my humble opinion is gdau is better than Unity
Info
Channel: DomE
Views: 26,518
Rating: undefined out of 5
Keywords: Indie, gamedev, gamedevelopment, indiegame, videogame, godot, unity, gameengine, goodbyeunity
Id: AGHYWYs9VZg
Channel Id: undefined
Length: 8min 58sec (538 seconds)
Published: Thu Oct 12 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.