At Game Dev Simplified we’re all about simplifying things. One of the hardest parts for newcomers to this space is just where to get started. While we primarily teach and focus on Godot we realize that there are other options out there that may suit your needs even better depenending on your project of course. Here are our top five picks for game engines/frameworks to learn if you’re new to game dev.
#5 - Phaser.io
Phaser.io is a very easy to learn game framework for making web games using Javascript. It’s very easy to learn and games can be exported to web, mobile, and even desktop with the right third party tools. The reason it isn’t higher on the list is while Phaser is easy to learn the lack of resources on the web for it may make it a bit more difficult if you’re brand new.
#4 - Monogame/XNA
Monogame is a fantasic way to get started with game development. It was originally XNA back in the Xbox 360 days and was used extensively by indie developers to easily get their games on Microsoft’s home console. Monogame is the open-source rebirth of the now defunct XNA. Games such as FEZ, Stardew Valley and Celeste have been made with it. Monogame is fairly easy to learn. C# does have more of a learning curve over a langauge like Python or JavaScript however it is used widely in the games industry both with Monogame and Unity 3D so learning C# is never a bad idea.
#3 - Pygame
Python has consitently ranked as one of if not the #1 programming language in the world for a number of years now. The syntax is clean and very easy to read. This makes game development with python and specifically PyGame easier than frameworks based on more verbose languages like C++ or Java. Pygame has tons of resources online to learn from and is beginner friendly. If you’re new and you really enjoy coding in Python I’d suggest starting here.
#2 - Love2D
This is one of my personal favorites and that is Love2D. The reason why? Well put simply it’s a 2D Game framework that uses the Lua programming language. Lua feels like magic. I’d even argue it’s easier than PyGame. Getting started with Love2D is as simple as
1
2
3
function love.draw()
love.graphics.print("Hello World!", 400, 300)
end
My suggestion would be try it out and see if you like it. The one downside i will say is sadly there is not as many learning resources available for Love2D as Pygame primarily due to the popularity of Python as a language compared to Lua. So keep that in mind should you choose to learn Love2D.
#1 - Godot
Finally at the number one spot we have Godot. There are several reason as to why but for the sake of brevity I’ll name a few. Godot is very easy to learn with a ton of Youtube Tutorials, online courses, etc. The official documentation is written very well and with beginners in mind. It can do 2D and it does it very well and it can also do 3D so as you grow in your game development journey and your projects become more complex Godot is the engine that can grow with you. It’s free and open source, runs on Windows, Mac and Linux. The system requirements for running Godot are very low so even if you have an old laptop from 5-10 years ago chances are you can run Godot. Also there are no licenses to buy or royalties to pay, Godot is completely free and you keep every last cent from the games you make should you choose to sell them.