One of the most widely used game engines is Unreal Engine by Epic Games. On the freeCodeCamp.org YouTube channel, we've published a comprehensive course on how to use Unreal Engine with C++ to develop games.
In this beginner's course from Fahir Mehovic of Awesome Tuts, you will learn how to create three full games with Unreal Engine 4 and Blueprints (a visual scripting system).
Unreal Engine is free to use, just like this course. This is a great way to start learning game development at no cost. Through creating these three games, you will learn many game design principles that are useful in creating all kids of games.
The course starts by teaching a simple game so you can learn the basic concepts. You will learn how to control a character around a 3-d environment. The character can pick up items and lose health.
Then you will learn to create a brick breaker game and pac-man. These games introduce more complexity such as keeping score and interacting with enemies. All the assets needed to create these games are included for free.
You can watch the course below or on the freeCodeCamp.org YouTube channel (5 hour watch).