Game development is a popular field within the software industry. But what does it take to start building games from scratch?

In this article, I will talk about the different game engines and tools that you can use to build your own games. I will also provide you with dozens of resources and tutorials to help get you started.

There are many tools and game engines out there but I will cover a few of the popular ones.

  1. Unity
  2. Unreal Engine
  3. Godot
  4. Phaser
  5. GameMaker Studio
  6. CryEngine
  7. Amazon Lumberyard
  8. Ren'Py Visual Novel Engine
  9. Pygame
  10. LÖVE
  11. Kaboom.js

Unity

This is a cross platform video game engine that is popular with game developers. Unity supports many platforms including iOS, Android, Windows, Mac, Linux and game consoles such as PlayStation and Xbox.

Some popular games that have been built with Unity include Cuphead, Pillars Of Eternity, Ori And The Blind Forest, Escape Plan, and Hearthstone.

Unity provides you with the opportunity to create your own 2D and 3D games. You can create shooter games, platformer games, educational games and more with Unity.

The programming language used with Unity is C#. If you are new to C#, you can take this freeCodeCamp YouTube course.

To get started with Unity, you can sign up for a free plan on their website. They offer free plans for both students and individual use.

Unity also provides hours of courses, project tutorials, live training sessions and certifications. All of this education is available on their website.

freeCodeCamp also provides many resources to help you get started.

Unreal

Unreal is a game engine where you can build 3D games. Unreal supports many platforms including iOS, Android, Windows, Mac, Linux and game consoles such as PlayStation, Xbox and Nintendo Switch.

Popular games built with the Unreal game engine include Fortnite, Yoshi's Crafted World, Hellblade: Senua's Sacrifice, Street Fighter 5, and Star Wars Jedi: Fallen Order.

The programming language used with Unreal is C++. If you are new to C++, you can take this freeCodeCamp YouTube course.

You can download the Unreal game engine for free on their website. They also provide 100's of hours of free online tutorials.  

freeCodeCamp also provides many resources to help you get started.

Godot

Godot is a free open source game engine designed to create 2D and 3D games. Godot supports many platforms including iOS, Android, Windows, Mac, and Linux.

Some popular games that have been built with Godot include Carol Reed Mysteries, Commander Keen in Keen Dreams, and Cruelty Squad.

Godot supports a few programming languages but the main ones are GDScript and VisualScript. To learn more about supported languages, please visit the documentation.

To get started working with Godot, you can go to their download page. Godot provides many free tutorials in their learn section.  

freeCodeCamp also provides this YouTube tutorial on Godot.

Phaser

Phaser is a free open source platform where you can build HTML 5 games for mobile and desktop. Phaser supports iOS, Android, as well as like Apache Cordova and phonegap.

Phaser provides you the opportunity to create your own shooter games, platformer games, educational games, and more. The primary languages used are JavaScript and TypeScript.

If you are new to either of those languages you can look into these freeCodeCamp beginner tutorials.

To get started working with Phaser, you can go to the download page on their website. Phaser offers dozens of free tutorials to help you get started creating your first games.

If you have experience working with Node, Express, Vue or Socket.IO, then you can look into these tutorials.

GameMaker Studio

GameMaker Studio is a cross platform video game engine where you can create your own 2D games. GameMaker supports many platforms including iOS, Android, Windows, Mac and game consoles such as PlayStation and Xbox.

Popular games made with GameMaker Studio include Undertale: Overwhelmingly Positive, Shovel Knight: Treasure Trove: Overwhelmingly Positive and Katana Zero: Overwhelmingly Positive.

GameMaker Studio uses the GameMaker Language and you can learn more by visiting the documentation.

They also offer dozens of tutorials to get you started making games. Gamemaker has a free option and you can create an account on their website.

CryEngine

CryEngine allows you to create interactive 3D games and supports platforms like Windows, Linux, PlayStation, Xbox, and Oculus Rift. You can create shooter games, platformer games, educational games and more with CryEngine.

Some popular games that have been built with CryEngine include Kingdom Come: Deliverance, Far Cry, State of Decay, and Ryse: Son of Rome.

Programming languages used for CryEngine include C#, C++, and Lua. If you are not familiar with those languages, then you can look into these resources.

CryEngine has dozens of tutorials to help you get started building games and it is free to download on their website.  

Amazon Lumberyard

Amazon Lumberyard is a free cross platform video game engine where you can create your own 3D games. Amazon Lumberyard supports many platforms including iOS, Android, Windows and game consoles such as PlayStation and Xbox.

Some games using Amazon Lumberyard include New World and The Grand Tour Game.

Programming languages used for Amazon Lumberyard include C++, and Lua. If you are not familiar with those languages, then you can look into these resources.

Amazon Lumberyard is free to download and there are dozens of tutorials to get you started building your own games.

Ren'Py Visual Novel Engine

Ren'Py Visual Novel Engine is a free engine where you can create interactive visual novels and games. Ren'Py supports many platforms including iOS, Android, Windows, Mac, and Linux.

Some popular games and novels created with Ren'Py include, Doki Doki Literature Club!, Zero Deaths, and UFO Swamp Odyssey.

The programming language used with Ren'Py is Python. If you are new to Python, you can take this freeCodeCamp YouTube course.

You can download Ren'Py for free on their website. They also provide a Quickstart guide to creating your first game or novel.

freeCodeCamp also has a walk through tutorial on how to make a visual novel game using Ren'Py.

Pygame

Pygame comes with modules, sounds, and graphics to allow you to create video games using Python. Pygame supports platforms including Linux, Mac and Windows.

Popular games built with Pygame include Frets on Fire and Dangerous High School Girls in Trouble!

The programming language used with Pygame is Python. If you are new to Python, you can take this freeCodeCamp YouTube course.

To get started with Pygame, you can go through their Getting Started guide on their website. freeCodeCamp also has a YouTube course on getting started with Pygame.

LÖVE

LÖVE is a free game engine where you can build 2D games. LÖVE supports many platforms including iOS, Android, Windows, Mac, and Linux.

Some popular games that have been built with LÖVE include Blue Revolver, Move or Die, and Warlocks Tower.

The programming language used for LÖVE is Lua. You can learn about Lua in their get started guide on the website.

Kaboom.js

Kaboom.js is a library that allows you to build computer games using JavaScript. If you are unfamiliar with JavaScript, then you can take this freeCodeCamp YouTube course.  

To get setup, you can use their CDN, NPM or official Replit template. All of the information to get started can be found on their website.

Kaboom.js also provides a walk through tutorial to building your first game. You can recreate classic games like Mario and Space invaders using Kaboom.js.

You can also go through this freeCodeCamp YouTube course, to get started building classic games.

I hope you enjoy my list of popular game engines and tools to get started learning how to build your own games.

I encourage to keep exploring and find even more game options that were not mentioned in this article so you can continue your learning.

Best of luck on your game development journey.