 Why I chose Godot as my game engine and how to effectively evaluate game engines. My name's Brett and I'm a hobbyist game developer I've been using Godot for the last month after evaluating game engines for what feels like maybe 15 years thought I'd share How I landed on Godot why I'm Excited about it and my story through there. I'm gonna get right to the chase by explaining why Godot And then we'll Show you how I arrived there the first thing that I really like about Godot is that I can make 2d games and 3d games in it The 2d aspect of the engine doesn't seem like an afterthought and neither does the 3d. It Features the ability to bake games that Are in both of those styles you could even mix and match within your games, which I just really like I Don't want to be limited, but I also want those Game types to be accessible to me where a lot of game engines Especially a lot of open source ones are 2d only or maybe they're they support 3d, but they don't give you a scene graph and a Lot of nodes that are fundamental to making these games Secondly is that it's open source. This is so important to me. I fundamentally truly believe that in the end open source will win and Eclipse closed-source software just on the basis of Hundreds to thousands of people being able to contribute and make it better and those people don't have Commercial interests in mind and the way that a business does so maybe it takes longer to get there An example that would be blender blender's been around for a long time and It it's truly this legitimately great 3d modeling software and yes, it has competition but it took a long time I think for it to establish itself and be competitive at like a hobbyist plus to professional level and I do think it will win out in the end and Result in better tools for people. I just believe in open source You know and here's an example of why Gadot being open source is awesome There was a typo in documentation I was able to go fix it submit a PR Get it merged in and it all happened so quickly and smoothly I got thanked at the end, you know, the people making this are Nice enough at least to say thanks and acknowledge my first PR To such a big project and that means the world right like being welcoming to contributors is so different than other projects Where PR is language and never merge or people are rude or whatever so to me. I love that Gadot is open source I love that I can help make it better and Really learn how it works under the hood. That's a really huge Benefit to software being open sources being able to make it better and being able to understand what's happening under the hood Secondly or thirdly, I can make games on Linux and macOS which are the two operating systems I use the most I'd love to transition to using Linux full-time, but I use macOS for my job My most powerful computer is a Mac book that I use so for now I'm using both of them and I really love that Godot's client is Works, it's just as good on Linux and macOS as it is along Windows and the same can't be said for Unity and Unreal and other dimensions. I've used at least I Also like that Godot targets PCs and phones and open platforms now I know that the Apple App Store and the Google Play Store aren't open In the sense that Like itch.io is open steam also isn't open You know these places require you to create an account and go through an approval process but what they don't require is you signing NDAs and Things being closed source and secretive like the consoles do so I like that, you know as a Solo developer at this like hobbyist plus level. I'm not I don't care about consoles, right? I care about computers and phones devices that are easy to target that a lot of people have and Godot targets them so that's you know what matters to me and it's really easy to get your game running on those platforms and The fifth and maybe most important aspect of Godot that I love is that there's very little reinventing of wheels meaning that out of the box the engine provides you with so much Useful bits from 2d physics to 3d physics to a tile map editor to positional audio playing it really has a Lot of what you can need a shader editor It's it's really thought out and it's mature, right? It's entered its fourth version. It's been around for Almost going on a decade of being open source. I think so That aspect of it is it's mature and it's stable enough where I'll talk about some other tools that are Fresher and newer and promising but aren't quite there yet. So From those aspects, you know, that's why I love Godot I think if you're interested in making games and you're wondering what game engine to use here's six really good reasons to use them Maybe not all of them resonate with you, but All of this packaged together plus and I didn't put this as a bullet point But I just like using Godot It is fun to use gd script is nice. It doesn't feel like You have to use C sharp or like I think generally the resources I find are Gd script and a lot of people are using it and it feels good coming from a ruby background Where you can express yourself pretty quickly with the scripting language. So yeah, all those reasons plus I just like it There's this sort of creative intuitiveness When you use certain software and if it clicks with you and good those click with me and I really like it Good oh also has many examples of Commercially shipped video games. This is huge right to see games that I Knew about before like I didn't know they were made with Godot don't keep her a potato Those two in particular. I was aware of them as games, but didn't know that they were made with Godot So then to see that is awesome to see these games on steam to see them on consoles like a couple of these games that is a Sign that there is momentum that people are making and shipping interesting games with the engine and that You know, I could have sensibly do that too. That really that means a lot to me So that's all the reasons why I chose Godot Let's get a bit into my background though, because I think that will help understand how I got there I started coding games in 2008. I had Java Computer science class in high school. My teacher made us print out our code and he Grated it on paper, which is kind of weird But that's what he preferred and my final project was this game called Zaku space battle, which it has the little zaku mechs from Gundam they fly in from the right side of the screen on the left screen side of the screen you pilot this Moltres that moves around then you spit out these fireballs and when you hit the Zaku they die and There are multiple of them and you have to eliminate them all as I put in the upper left corner So that was me with Java and it's my final project. That was really fun and got me hooked on game programming then I Started learning C sharp and XNA at the time 2008 2009 this was when the Xbox 360 was pretty big and there was this thing called Xbox live indie games where you could make games with Microsoft's tooling and their engine called XNA which used C sharp and You could even run your games on your Xbox. I think I'm pretty sure I remember getting a name running on my Xbox 360 Like that was huge at the time right the ps3 was super closed the Wii was closed you can make games for the computer, but this seemed like This really awesome resource, so then I eventually went to school for game programming I dropped out of to three semesters and started working and my kind of life and career took a change, but At this time I was using C sharp and XNA in college. We even used C plus plus and That with that I made this level editor for one of my Final projects where yeah, you build this whole level and there's particle emitters and you can go to different levels The whole editor can be controlled with your Gamepad or your mouse and keyboard and that was a fun project. I really enjoyed making that and but I never finished it or released it But this is the only artifact. I don't think I have the source code, but I have this screenshot in In school, we also used flash which is dead now and was closed source and you know, so is XNA So, you know, that's a theme throughout a lot of this stuff is like there will be these closed source options and then they sort of die and People resurrect them out with open source alternatives But we used flash and the language action script three within it to do a bunch of coding. I found independently this engine or library called flixel which I loved and Made a bunch of games that made a space shooter, which I always go back to making space shooters I just like those like this and make this game where you spin around stars and you shoot a grappling hook and then that You go into these black holes that are rotating and you're collecting oxygen and trying to stay alive Anyway made a bunch of games with that really liked working with flash and flixel. I helped contribute to adding Control or support to flash games Using this product called air and like I don't know. I just like wrote a tutorial a decade ago that some people used and helped them And that was cool. So it's been a lot of time there them flash died and I went on and just did web application programming for my career and Was enjoying that path. I was going down wasn't in debt from college and was doing doing alright so Put game programming on the shelf But I would dabble with it from time to time There's this Lua engine called love that I would mess with there's mono game Which is this sort of successor to XNA? That uses C sharp which a lot of games use especially games that maybe were Written in XNA when they targeted the computers. They would rewrite in mono game or use this other thing called FNA Sdl2 and C++ run through and went through a book on that Go Sue which is this C++ engine that has Ruby bindings and this go engine called ebiton engine that You know, I would just dabble right I would make these little games would never finish anything Nothing even worth showing but go through those tutorials and was still interested in making games But I never really never clicked with me again until I found hacks Flixel and In about 2017 2018 started using that so remember I was said I was using Flixel the flash library Well when flash died this re-implementation of it came out called open FL in this language called hacks and Then a group of people rewrote Flixel using hacks Therefore hacks Flixel and then it evolved and changed and I just had such a nice time using hacks Flixel made a bunch of little games with it made a Platformers infinite runners a pawn game Rock paper scissors shoot. Just really having rock paper scissors. Yeah rock paper scissors. I don't know where I got shoot from Just made a bunch of you know pixel art Games with it and really enjoying that process and felt like oh, yeah I'm like getting back to my roots of enjoying making games and wanting to pursue that more And this was around 2020 I Even made this JRPG with That's a dragon quest sprite, and then I made the other sprites that aren't very good But you know got this working where there's combat you can explore the map the levels are made with tiled and Then Kind of fell off again, you know, these are just like fun hobbyist projects took a break And time passed, you know working and life happens as it does and then around 2022 at the end of 2022 I After going through, you know life changes and really thinking about I decide I want to make games I want to commit to this. I've been dabbling with it as a hobbyist I don't have much to show for it, but I still have the interest and I have the passion so The question becomes well, what game engine should I use? And that's a really hard question to answer, you know, I've already shown and talked about maybe 10 engines and They're all a varying maturity and ability and there's more I haven't evaluated So I just begin thinking about it and experimenting What I need is a game engine that I can grow with so that It can support me making simpler games as I'm just getting myself established, but I can invest in learning it and invest in the Foundations of these games that I can reuse these pieces So from game to game I can take that knowledge and it sticks with me. That's really important I want to be able to work quickly with it And it's really important that I can target computers and mobile devices with so those are my crutch area that I go out searching with You might be thinking well, why don't I use Unity or Unreal? those are the two main players here and Again, I want to use Linux and Mac OS to develop my dream is that I use Linux Full-time to make games Right, I just I think that's really interesting. It's something that would I would enjoy that computing experience and I don't think Unity or Unreal support Linux Well, or at all. I prefer open source Unity and real are made by huge companies that have Interests that I don't think align with like a Single person like with me making games. I think I think they're interested in making money I think they're interested in people using their technology and their platforms and I think That's sort of like vendor lock-in and the terms of Using their engines is just not Like it just doesn't align with my values and like no shade for the people who do use those wait I think what matters is the games you're making but For me, it doesn't resonate with me I don't want those complex terms of usage where oh if you you know make this much Then you have to give them a percentage or you're paying this much monthly or whatever And I don't really care about consoles Which I know that those you get right out of the box because they're closed source and that's super cool If you're like I want this game to be on Nintendo switch Tomorrow You'll have to set up a business or find a publisher and stuff, but it's a lot easier. I think And then it is with Godot or other languages So that's super cool if you're into that, but I find the consoles to be a bit of a moving target Like there's new ones coming out. It's closed. You have to have dev kits It's it's like a lot more work right where like for the computer It's just easy to distribute especially as someone getting started and who knows if there's gonna be a new Nintendo console or you know Whatever it's just I just don't really care about them that much, but I understand that's people do and that's cool Enter Dragon Ruby game toolkit. I find this game engine. I think on itch.io because it's on sale I'm just browsing assets on itch and See it and go Dragon Ruby. That's really interesting. I've used Ruby full-time for Like 12 years. I think 12 13 14 years. I really like Ruby as a language, but it's not Hasn't really been so great for making games. I found But this engine comes along and I really like it. It really connects with me the games run pretty well I enjoy using it make a bunch of games really quickly and make this action game called destroy all goblins. I Struggle with optimizing it having it perform well Which I'll get into I make this snake clone Where I hand draw all the graphics and scan them in which is like a neat experiment and it works on Mobile phones and it's on the app store for free the iOS store I have free Android, but Google won't approve my account for putting games on it Which is like this whole other side thing of like, you know, these like closed ecosystems or open-ish ecosystems like Their support just stopped emailing me back even though I like paid and registered to be a developer on Google Play Store, but whatever. Who cares just a free game And I'm not too worried about targeting mobile devices for any of the game ideas. I have but Maybe in the future. I'll have to figure it out. I Make this like a little shooter game kind of like vampire survivors that Enemy swarm after you and they drop the XP and You know, I just have fun using the engine That's maybe the most important thing about Dragon Ruby and maybe making games in general is that you're having fun and enjoying the experience Drive Dragon Ruby game toolkit has some really neat Features like it library loads the code as you save it. You can use your own text editor, which is nice. You can Just has a nice ethos to it and really small API so you can learn it pretty quickly but After about three months of working on it and learning it I write a book called building games with Dragon Ruby It's a free book online Just where I share what I've learned because there's not a ton of resources out there Which is this double-edged sword, right? It's not widely used. There's not many resources for it. So then do you not use it because of that? maybe but I Kind of was like well, let me make some resources and contribute and try to help people But eventually I arrive at this Understanding that this isn't the game engine for me understand it appreciate it respect it But it's 2d only so that's pretty eliminating. I feel like making 3d games will help differentiate when I'm making and That will be useful to people Or useful, you know, it's fun for me It's expressive and creative and I think it will be appealing to people that I'm not just making 2d games It's bring your own everything right from collision detection to just anything That's more complex than the things I showed you in those videos are just you have to reinvent the wheels and it's so Not what I want to be doing I think there are people who have a lot of satisfaction about figuring out how to do Collision detection, you know really good collision detection. I'm not really interested in that. I want to make the games not really a dive deep into a physics system or whatever right and So that's just my own You know issues with it. There's not good performance tooling like a profiler. So if you're making a game that needs to run well You're gonna spend a lot of time either bootstrapping your own like performance metrics, which I was able to do but that's not very fun and there's just not There's not enough tooling there to I think make medium to large games with it and Make them run well and then There's no shaders or rumble or these things that matter to me when making games to give it that extra bit of polish So that's not there and then fifthly. It's it's closed stores. So You I can't make it better even though it's only made by a small group of people It's that sort of limits it and there are little bits of it that are open source But like I've had a pull request that's been open since November that hasn't been closed That just like fixes some typos on the docks. So You know just doesn't doesn't work for me and that's okay and So then I back to the search for finding a game engine and Learned a lot though. So, you know, I'm feeling excited and that sounds like it could be defeating to sort of spend three months Learning something and then realizing that it's actually not the right thing But that's what this whole process is about and that's what this whole first year for me is about is evaluating What are my options finding a good fit make sure I invest in the right game engine and learning and My spirits are still high. So the search begins again. I am curious about bevy It's a game engine written in the rest language. Rust is really compelling. It seems like a good alternative to see in C++ I have used it before for non-game things. So I'm familiar with the language Bevy seems neat. I spent some time learning it. This is a circle moving around field You can't see it because the field is just those white Rectangle, but that circles moving and then the mouse fires at things. I get this little prototype running takes it's not super fast to develop in because I've been learning so much but And then that part was slow, but it starts to click and I'm enjoying it But then I quickly realized that bevy's not ready. It even says it It's the first like sentence in the documentation. It says bevy's not ready. You should just use Godot So it's really this thing that's like actively being developed has a lot of promise, but it's not ready and I'm sort of going well if they just say, you know in the docs to just use Godot If you're actually building like a stable game and you want to like build a business around this like don't use bevy I'm like, oh, yeah. Okay. Yeah, that's true. Like it's not one point now there's sparse resources and I'm not Moving as quickly with it as I would like but there's so many people so many interesting things going on there that it's It's promising and exciting and I can't wait to see what happens with bevy But I go, okay, they recommend Godot. Let's give it a try. I'm familiar with it, but I haven't used it Give it a try Godot really clicks with me right away. I make a bunch of 2d prototypes There are a ton of YouTube videos and courses you can buy that I've been going through and just from 2d alone I'm making these projects pretty quickly. Here's a game a shoot-em-up game that I made here's a 2d Action game kind of like a mega man that I made just using free assets, right evaluating the engine getting comfortable with it and I just find myself loving using Godot like It's it's clicking the light learning. I've done before makes sense Gd script is great like the little what I was saying earlier. It's it's going really well and I'm enjoying it. So Here we are today. I'm enjoying Godot. It's seeming like a good fit checks all those boxes that I mentioned earlier and Let's talk about how to pick a game engine because if you've watched this far you're probably interested in good though We're using Godot, but you gotta understand. What are your motivations and goals, right? That's When you're evaluating technology, whether it's a game engine, whether it's a programming language, whatever You gotta know what your motivation and goals are Do you want to work at a game studio as a professional developer? Coding and like get a job. I would probably learn unreal or unity Maybe I would start with unity and see sharp and then I would go and learn c++ and unreal because those are the two behemoth engines that are used at all variety of size studios and What you learn in other languages would certainly help you But if your goal I would buy a Windows computer and I would learn unity and then I would learn unreal Whether it's programming or game design or a mixture of both or making art If your goal is to be employed at a studio start with those but if it's not like that's not my goal, right my goal is to make games and Be a solo independent developer. So if you're looking to learn programming I would try to go or like something like pie game or love 2d where maybe you do have to reinvent some of the wheels But that'll help you learn a lot and you'll bring that knowledge to an understanding to things like good Oh or unity now if you're a hobbyist plus developer, which is what I consider myself, right? I have intentions of making this my you know make it earning some money or making a living from it I think that's a dream and I'm taking it seriously And you want to make 2d or 3d games I'd seriously consider it good. Oh, I think it's for all the reasons I've said It's open source 2d and 3d games run great feels good to use lots of resources. I think it's a you know really a Good one to try and and go with and just see what works see what clicks with you, right? You're gonna see people and you're gonna see videos talking about Why not to use this or why not to use that and you'll see a lot of elitism for engines and languages and I've used a variety of languages a variety of engines and I'll tell you what my feeling is that it's what matters is What feels good to you? Make sure that you know you want to be able to accomplish what you're setting out to do so that's important, right? But you want to feel good and different languages will click with your way of thinking and you can have debates over is this language better than This language or is this engine better than that engine, but ultimately what matters Is that you go out you make games you find a tooling and a workflow that you enjoy and Create something that's interesting something. That's fun something. That's compelling and don't worry about the elitism in this or that Don't second guess your choice, right? Like take something spend a few months learning it. It's time. I'll spend what you learn will go with you into the future and Don't get caught up in You know, is this better than that or whatever, you know, there's gonna be ups and downs to anything you choose And you just want to find what works for you All right. Thank you so much. This was a lot of rambling, but hopefully interesting and helpful and gives you a sense into how I land in Ecuador Thank you and see you next time. All right by