What is the best game engine: is Godot right for you?
The GamesIndustry.biz Academy's in-depth guide to Godot, a flexible and intuitive engine focused on 2D, that could soon become a 3D powerhouse
For developers just starting in the industry, the task of choosing the best game engine can be daunting. Here, we'll try to address many of the issues concerning Godot so you can see if it's the right game engine for your project.
You can see our other in-depth guides on all the major game engines on this page.
While big game engines such as Unity and Unreal have become more and more accessible, the indie scene continues to rely on smaller engines that have a community of dedicated developers.
These hidden gems include Monogame and Construct, but Godot is becoming an increasingly popular choice. It actually became the sixth most used game engine on Itch.io this April, overtaking RPG Maker.
"Most developers will be bottlenecked by their own skills rather than [Godot's] tools"Ryan Hewer, Little Red Dog
Godot started its life in 2007, the pet project of Argentinian developers Juan "reduz" Linietsky and Ariel "punto" Manzur. It didn't launch until 2014, however, and the long term aspect of the project was one of the reasons for its name, a reference to Samuel Beckett's famous play, Waiting for Godot.
Godot is a free open source engine relying on donations via its Patreon page. You can learn more about how the donations are used on this page.
Godot uses its own language, GDScript -- which you can learn more about below -- but it also supports visual scripting, C# and C++. With Godot, you can deploy games on desktop platforms such as Windows, macOS, Linux, UWP, and Haiku, as well as mobile platforms iOS and Android. You can learn more about Godot's features on this page.
Godot has been going from strength to strength these past few years and should continue to rise as the next build of the engine -- due to be released this year -- will provide better 3D support and a lot of new features.
What are the advantages of Godot?
- Godot is versatile
Godot won't limit your creative endeavours, as it's capable of handling almost every project you can think of.
"Godot is an incredibly versatile engine whose limits in terms of occlusion culling and 3D performance are likely not more than a few months from being negligible," says Ryan Hewer, project director at Little Red Dog Games, referring to the release of Godot 4.0 later this year.
"At present, there's very, very little where I would say 'Godot is not best for that', with the exception of possibly very detailed first and third-person shooters. But with Godot 3.2 -- and more importantly Godot 4.0 -- you're going to see parity with most any other mainstream engine out there. Godot is advanced enough that I'm comfortable saying that most developers will be bottlenecked by their own skills rather than the tools in front of them."
- Godot excels at 2D games
"Godot's native measurement is the pixel, which is extraordinarily helpful when designing 2D pixel art games"Shane Sicienski, Fat Gem Games
While it can handle all types of projects, 2D is where Godot clearly reveals its strengths, making it comparable to GameMaker, MonoGame and Construct. Godot actually comes with separate 2D and 3D engines.
"Godot shines when it comes to 2D, as that's the side of the engine that has the most users, and that received the most testing as well -- when it comes to 2D, I would recommend it to any professional game developer now," says Nathan Lovato, founder of GDQuest, a YouTube channel full of Godot tutorials and a GitHub page for open source Godot projects and plugins.
Fat Gem Games co-founder Shane Sicienski adds that Godot has one advantage over other engines when it comes to building 2D games.
"The native measurement in Godot is the pixel, which is extraordinarily helpful when designing 2D pixel art games. This made Godot much more attractive to us than engines like Unity, which use non-pixel-based measurement systems."
- Godot has a node-based interface that makes it accessible
Godot has a visual scripting system using blocks that you can connect, making it an accessible tool even for beginners. You can just drag and drop all sorts of information using nodes and scenes. You can learn more about the nodes system on this page and see how to get started with visual scripting here.
"If you ask any professional who's tried the engine, they will tell you about how intuitive the editor and the node system are," Lovato says.
The node structure is actually one of the reasons Little Red Dog Games made the decision to use Godot.
"The tools we were using previously were insufficient with what we wanted to accomplish next with a 2D/3D hybrid game so we started looking for open-source alternatives," Hewer says. "In Godot we found a streamlined, intuitive engine with a node and scene structure that allowed us the flexibility and modularity to structure our future games the way we wanted."
- Godot's scripting language is intuitive
Godot has its own scripting language inspired by Python, but it also features official support for C# and C++.
"The editor is a Godot game, so you can code plugins the same way you code your games"Nathan Lovato, GDQuest
"We started creating Primal Light in Python as a hobby project to learn about game development, but as we began to take the project more seriously, we decided to port what we had to a full-fledged engine," Sicienski says. "[Godot] uses a dedicated programming language called GDScript which is very Pythonic, so we felt right at home."
GDScript is more accessible and friendly to novice developers than C# or C++ for example.
"With a programming language designed specifically for game developers, you can prototype and write gameplay code quickly," Lovato adds. "Godot has a unique system called GDNative that allows you to use languages like C or C++ to write high-performance game systems, without having to recompile or maintain a custom version of the engine. It also gives you access to third-party languages like Python, Rust, D, or recently TypeScript.
"Another unique aspect of the engine is that the editor is a Godot game, so you can code plugins the same way you code your games. And this gives you a sense of the power of the UI tools in the engine: all the editor, the dockers, tabs, and so on are a showcase of Godot's UI system."
- Godot is free and open source
One of the most important advantages of Godot is that it's free and open source, removing what Sicienski describes as the "stress of licenses or subscription fees." Hewer adds that the open-source nature of Godot was an immediate draw for Little Red Dog Games.
"If there's something you would like to see in Godot, you're completely empowered to build it yourself"Ryan Hewer, Little Red Dog
"[It] can't be underscored enough -- Godot is not an engine that can change terms on developers without their consent, and if there's something you would like to see in Godot, you're completely empowered to build it yourself."
Being able to create proposals for new features or contribute to bug fixes and improvements also appealed to Lovato.
"Nowadays, I work in free software, and I appreciate the openness of open source projects a lot," he says. "Godot's open source nature brings other significant advantages. Access to the source code means that a professional team can optimise the engine for their projects.
"The companies using Godot contribute bug fixes and new features to the engine and it's quite stable as a result, and development has only gotten faster since the first release. As a professional or as a game development company, you can just get in touch directly with core developers and participate in the program's growth."
- It's easy to recruit Godot developers
If your ambition is to create a game with a team and eventually grow your own studio, you may want to consider how easy it is to find recruits who are experienced in using Godot. Thankfully, Hewer says it's "not difficult at all."
"There's a surplus of extremely skilled Godot devs out there and a shortage of legitimate employers who use Godot in their products," he adds. "While this will no doubt change over time as adoption grows, we've been very lucky to find great people to join our firm among the Godot community."
What are the disadvantages of Godot?
- Godot isn't ready for complex 3D projects
As already touched upon, 3D is not where Godot shines, as its level design tools and rendering engine are not as powerful as other technology.
"I think Godot doesn't do 3D quite as well as Unity or Unreal," says Benjamin Anderson, creator of the HeartBeast Gamedev Academy. "This is something the main Godot contributors are working one."
A new 3D rendering engine is currently in production though, along with other features.
"Lead developer Juan Linietsky is currently working on the 4.0 branch of Godot, porting Godot's rendering system to bleeding-edge Vulkan," Fat Gem Games co-founder Jeff Nixon says. "With this overhaul, Godot's 3D support should be comparable to larger engines."
Lovato continues: "Godot's 3D engine in version 3 lacks optimisations to render large game worlds. And its performances are not that of Unity or Unreal in general."
- Godot has a small community
As often when dealing with smaller game engines, having a limited community can be an issue. With something as popular as GameMaker, for instance, all of your questions will often be answered on forums already.
"Godot still does not have as many users as the mastodons of the game industry," Lovato says. "It doesn't have the budget of a large tech corporation like Epic Games. Godot is still a bit of an underdog in the game development space.
"I'm part of the people who give support and who make educational resources for Godot and I have to admit that there are not as many resources as you'd find for Unity, that has a much larger user base. But I'd say we've reached a point where there's plenty to get started, and more and more users are beginning to create tutorials."
Hewer adds: "[There's] a meager offering of assets to draw from. There is a healthy DIY mentality to Godot developers which can be frustrating for novices looking for tutorials to do something where a bounty of tutorials (and asset packs) exist for Unity."
"The licenses of console development tools are not compatible with free software"Nathan Lovato, GDQuest
- Godot doesn't support consoles
Because Godot is an open source project, you can't develop games for consoles with it. The engine would need to be licensed as a company to do so -- something that's not on the roadmap for its lead developers.
"If you want to publish your games to consoles, you need to get in touch with a third-party because the licenses of console development tools are not compatible with free software," Lovato explains.
That doesn't mean you can't port your game to consoles though. Suitably, the engine's co-founder, Ariel Manzur, has a company that specialises in porting Godot games to consoles, Lone Wolf Technology.
- Godot lacks features
Some features found in bigger engines like Unity and Unreal have not yet been implemented in Godot. For instance, there's no built-in sprite editor.
"There's currently a lack of occlusion culling, and particle attractors aren't in the current build," Hewer says. "It's entirely possible to do AAA development in Godot, if you've got the capability to do AAA development with anything else.
"Integration of third-party libraries isn't as straightforward as with other, more established engines. Other than that, there has never been a feature that we couldn't implement because we like using Godot, but then again, we're not developing extreme high-visual performance games, so it's unlikely that we'll ever push the engine to its limits the way other developers might."
Advice for new Godot users
- Get in touch with the Godot community
As is often the case when an engine community is small, there's a close-knit group of people that can help you get started. You'll find all the different ways to reach out to the community on this page.
"My experience has been mainly with the Godot YouTube community and the Godot Discord," Anderson says. "Both have been very helpful to me. Some people like the Unity docs more than Godot's, but I've actually had an easier time navigating the Godot docs and figuring out stuff through them."
Nixon points out that the helpful community is one of the principal reasons Fat Gem Games loves the engine.
"We regularly ask questions on the official Godot Q&A site, as well as the Godot Discord and Reddit. These channels tend to produce better answers for Godot-specific questions than the Game Development Stack Exchange.
"There's something about being a small, often-overlooked engine that makes Godot devs a very tight community"Ryan Hewer, Little Red Dog
"The lead developers have also been personally friendly and helpful in showing us support and highlighting our game, which we could not envision happening had we been a small developer making our game in Unity or Unreal. There's a sense that the devs and community at large are genuinely happy we're utilising their engine to create our passion project."
Hewer adds: "There's something about being a small, often-overlooked engine that makes Godot devs a very tight community, possibly because we're our own best cheerleaders."
- Try it: Godot is small and there are resources to get started
The engine itself is very small and boots quickly, so the best thing to do if you want to see if Godot is for you is to try it -- you can find it on Steam for instance, or on the engine's site.
"You only need to download the engine, that takes like 30 megabytes," Lovato says. "Double-click on the executable, and you can use it instantly: you don't need to install anything. There's also a plug-and-play mentality to Godot, where you can fit everything you need on a small USB stick and you're good to go.
"With the fantastic engines that we have access to nowadays, part of the choice boils down to personal taste. Even as a contributor to the Godot engine, I still love other tools, and see that we have several feature-packed options. That's why I recommend trying different engines to see what is best for you. [There's] a step-by-step Getting Started guide in the official manual."
GDQuest has also put together two free curated learning paths to begin with Godot, one for programming beginners and hobbyists and one for experienced developers. With these, you can get started hands-on, test the engine, and see if it's a good fit for you.
Hewer concludes: "I see young people everyday with this misguided idea that Unity and Unreal are the only two engines worth learning, and this completely ignores the fact that the gamedev ecosystem is huge, diverse and that games are made with a wide variety of both proprietary and public engines.
"Consolidation around a small number of for-profit entities is not healthy for business and not healthy for learning programming either. Godot doesn't compete with other engines because it's not structured for profit, so our interest in encouraging developers to try it out stems from both a desire to dispel myths about gamedev, and to see growth in the number of people actively working to improve something that will always be free for everyone.
"I also would encourage devs to look at GameMaker, MonoGame, and other tools while they're at it. Engines don't define the success of your game, so find an engine that does what you need it to do and is comfortable and intuitive for you to work with."
Our in-depth guides on all the major game engines can help you find the best technology for your game -- the page will be regularly updated to add new engines to the list. If you're eyeing the most popular game engines, you can jump to our Unity guide right away, or read more about Unreal Engine here.