Developing 3D video games isn’t easy. It typically requires hours of modelling and animation and complex code that takes three dimensions into account. They tend to be more expensive, and require more resources to produce.
Contrast this with 2D games; simple 2D games can be made in minutes. The code is far simpler, and the resources are 2D—which are much less difficult to create. There is a reason why most indie games are 2D, flat games like platformers, top downs, or isometrics are just better for small or solo teams.
If you are planning to be part of a small game dev team, or if you’re a solo developer, picking out a 2D engine is a good choice. Some small teams and even solo developers do make 3D games (it’s not impossible), however 2D games are just easier to work with.
Therefore, here is a list of some of the best 2D engines, both free and otherwise. The list is unordered, not only because ‘best’ is relative, but also because engine choice is usually personal to a team or a project. Therefore I’ve tried to assemble a list that covers many development types and creators, rather than just listing every engine.
Top 2D Game Engines for 2020
Godot (pronounced ‘G’dough’) is open source and completely free. It’s been praised for being very lightweight and fast, and it’s capable of creating both 3D and 2D games. It functions a little differently than other engines, and it has its own programming language: GDScript. GDScript is similar to Python, so it shouldn’t be a challenge to learn for those with a Python background, or for beginners. It also allows for visual scripting with connectable blocks and scripting in other languages, like C++ and C#. It features quite a few publishing targets: Windows, Mac, Linux, HTML5, iOS and Android.
On the flipside, many people have described it’s tools as restrictive, finding it difficult to achieve the same customization found in other engines. It also has a bit of a learning curve—since the engine does work differently, especially if you’re coming at if from working with a different engine.
Godot doesn’t have any best selling games made in its environment yet, but that doesn’t stop it from being a very promising engine for new studios.
GameMaker Studio 2
GameMaker Studio 2 is the evolution of the original GameMaker, and it hosts some impressive features. The first is that outside of audio, the engine can produce an entire game without the need for other programs. It has a decently robust sprite making engine built in, an animation system, a level editor, and tiling and mapping features. GMS 2 excels at starting and making games quickly, with an extremely rapid setup time and an easy to learn programming language, it’s easy to get your ideas into code right away. It also features its own visual programming language called Drag and Drop, for the code adverse.
However, this ease of startup comes at an expense. While it’s easy to start a game and the engine is flexible when it comes to code, it’s very easy for messy code or design practices to return with a vengeance later on in a project. Good organization is important. Along with this, while it exports to many platforms, each platform sits under a separate paid license. These license fees can add up to a very hefty sum if a developer wants to publish to more than one platform. Finally, when coding, GMS 2 uses a proprietary programming language: GML. While this isn’t a problem for some people, it makes it very difficult if you try to migrate your project to anywhere but GameMaker Studio.
GameMaker Studio 2 has had some pretty famous games released for it. Hyper Light Drifter, UNDERTALE, Nidhogg, and Risk of Rain were all made using this engine. The desktop license starts at $99, but that price goes up significantly if you want to publish to console.
Unity is one of the most used game engines of all time, and many people are already familiar with it. Unity is built around making 3D games, but it has some fantastic 2D tools as well. It has a massive community full of helpful tutorials, and it also has the Unity Asset Store, which is full of useful tools and assets to help game development.
However, Unity has a stiff learning curve. Beyond that, it isn’t built with the express goal of creating 2D games. While making 2D games on Unity is viable, projects are often bloated with unnecessary tool or parts of the engine dedicated to 3D, and require dependencies or tools that don’t come with the editor. The interface can be slow and bloated as well, and it may be difficult to find the tool or toggle you need in its messy interface.
Unity has been used to produce a few well known 2D games, like Ori and the Blind Forest, Cuphead, and West of Loathing. Unity is free to download and use for projects with funding or revenue under $100k. This makes it affordable for indie developers, although it moves up to a more expensive pricing model after that cap is reached.
The Corona Engine is free to use, and it uses the easy to learn and use Lua programming language. Corona is designed around making mobile games, in fact when making your game the preview for the game is displayed in a phone emulator. Corona is also useful because it features live game making, where the changes you make to the game are instantly visible.
Corona is a bit bare bones, there is no real interface like other engines, just an IDE and the game preview. All assets must be made in other programs, and all the animations must be sprite sheets. This can be both intimidating and freeing, and more work. However, Lua is fairly easy to learn, and the documentation is well written and easy to follow.
There are no big name games made in Corona, but it does have some successful apps, like Gunman Taco Truck and Fun Run 2. While Corona is free to use, it does have a price associated with proprietary integrations, most notably with ad providers.
RPG maker is very limited; it’s designed for one purpose. While it is good at performing what it was designed to do, if you ever want to make something that isn’t a 2D RPG you will be better off finding a different engine. It also has a bit of a learning curve, and if you’re a fan of coding RPG Maker might be a frustrating experience.
RPG maker has made a few successful games, like Yumi Nikki and OneShot, but it is better known as a hobby engine than a professional one. RPG Maker MV, the newest, is sold for a flat price of $79.99, but it and it’s cheaper previous iterations frequently go on sale.
LibGDX is less of a game engine and more of a framework; offering loads of features but no real beginner friendly interface. This is freeing for many people who are skilled at programming and want to ditch the black boxes found in more pedestrian game engines, but don’t want to go through all the work of developing their own engine. It’s made for the Java platform, and games can be written in Java, Scala, or Clojure. Being on the Java platform means that the games made using libGDX are very portable, and can run on a number of platforms.
The downsides are as clear as the upsides: if you’re new to programming or making games it would be better to find a more beginner friendly engine than this barebones framework. Just setting up the environment for libGDX might be a bit much for some people.
There are no major releases for libGDX, although it is open source and free to use and publish with.
Ren’py is a very different kind of engine. It’s specific like RPG Maker in that it’s designed around a central popular topic. For Ren’py the game of choice is visual novels. If you’re a fan of visual novels or dating sims you’ve probably played a game made on Ren’py. It has a very easy to learn built in scripting language, with Python support if more complexity is required. It’s open source and free, and it exports to Windows, Linux, OSX, Android, and iOS with support for HTML 5 under development.
Ren’py suffers from some of the same failings as RPG Maker, while it’s very good at doing one thing, if you are trying to expand beyond visual novels then it would be better to try a different engine.
It’s known for cult classics and fan games; very notably, Doki Doki Literature club was created in Ren’py.
There are many more engines not listed here, all with powerful tools and particular use cases. Finding the right one to invest in can be difficult but rewarding, and starting your career in game design is as simple as downloading a program and watching some tutorials.