
Firstly, we need to download the engine which we'll be using
I also want to show you how to import source codes into Godot for you to take advantage of it
Let's quickly check what assets are in game dev. and how to get them
In this lesson we introduce the first game we'll create in this course!
Firstly, we have to import the images and sounds into our Godot project
Godot works with Scenes and Nodes. In this video, we introduce these topics
Godot scenes have two main functionalities. In this lesson we check them out
Now that we have a much deeper understanding on how scenes work, we can start to create the player scene
We also know some basic concepts of nodes. So, we add the corresponding ones to the player
There are two main types of 2D character controllers. If we understand this, it's gonna be easier to implement player movement later
Let's start setting up player movement!
Now we do understand the basic controller!
Using what we have learnt about character controller types, we can understand what "problem" our controller has and how to fix it. Here you also see how everything that we learn starts to be applied
Key concepts to be able to differentiate and stop their similarities...
In this lesson we check the different value types variables can have
Why is static typing important? How do we use it? All this and more in this lesson!
We study what "->" and "void" mean. And the other return value types
Let's start creating the enemy. Firstly, we have to create its scene
Secondly, we must add the movement using what we've learnt
How can the enemy have access to the player? We check this question out
Let's discuss how to implement collisions in the game
The idea is that we can click on the enemies to delete them. In this lesson, we start to implement this mechanic
Once the enemy has been clicked, we must disable its collision
What does Godot call the "Main" scene? We check this out
Let's learn how to instantiate the enemies as the game is played
Add random spawn points to our enemies which are outside of the screen to instantiate them correctly
In this lesson, we learn a little bit about UI or User Interface
How can we implement audio in our games?
Lastly, let's create our own Input Actions
Let's add the assets to the game
With everything we've learnt about scenes and nodes, let's create our player scene
Implement player movement
We create the ground and also dig deeper in Collision Objects, which could be confusing topic, but learning it is super worth it
The game tab is an amazing tool Godot provides. We check it out in this lesson
The last thing we can do with the game tab is modifying values at runtime
Let's learn player animations!
Now that the animations are set up, we also need to change them accordingly
Let's learn how to flip the sprite when walking left
Let's learn an easy way to prevent the player from exiting the screen
This is a resource to flex those game dev. muscles a little bit more. It'll also allow us to shorten our code
A brief introduction to why generic objects in game dev. matter
Now that we understand its advantage, let's create the corresponding scene
Now that the object is set up, we add a script which will move it down
Delta could be a complicated topic. But in this lesson we learn it with the best method possible
In order to randomize the object, we use sprite frames. Why? We answer this in the lesson
Now that the sprite frames had been set up, we have to randomize them
Also, let's now spawn these objects
We have to sort them properly. We discuss the disadvantages of Z-Index
The objects look a little bit static, so we add some rotation
We create a first system to know whether the player has collided with a coin or an obstacle
This second system has way more advantages...
Let's continue learning about Control nodes!
Signals can be a complicated topic to understand at first. But using them is super worth it
Besides summarizing what signals area, we also take a look at accessors
Now that everything is set up, updating the score is a piece of cake
Let's learn more UI design
We add the system to decrease the lives when we collide with an obstacle
Right now, the objects have all the same sprites, which doesn't make any sense. Let's modify this
Once again, let's continue learning UI design
We learn how to add game over logic in any game
Our game also needs a main menu scene
Let's add a custom background to our project!
Lastly, we add music and sound effects
We check out the 3D game for this course!
Let's import the assets in our game
GridMaps, a key to design 3D levels...
Some basic information about 3D and how to add collisions to the GridMap
In this lesson we define the first level for the game
Let's use a 3D player template to save time and resources
Now that we have the player controller, we have to make the scene
Let's learn how to add 3D animations in our game
Learn how to import skies
Let's add coins and position them using snap
Now let's add the coins UI and the logic to increase the coins number and we also take a look at signals again
We need to add a death zone so that when we fall the game finishes
Now let's add the game over UI and conditions
We add rotation to the coins to make them more dynamic
Once again, we take a look at generic objects
Now that the obstacles are set up, we can get to place them in the level
Everything is more or less set up. So let's design the final level of the game!
Important tip here!
Let's create another UI for when we win and the logic as well
More UI and logic!
Let's add the audio to the game!
If you want to share your game with the world, this is the lesson for you!
Have a good game dev. journey!
Discover how to get the most out of the Godot 4 game engine by building impressive 2D and 3D games from scratch.
I'll walk you through the core principles and essential features of Godot using GDScript, its native scripting language, to create fun and interactive gameplay mechanics.
You’ll design both 2D and 3D scenes, complete with player controllers, enemies, coins, traps, and much more.
Throughout the course, you’ll create not one, not two, but three full games in Godot 4:
2D Action Clicker: Move your player across the screen and click on ghosts to eliminate them—a great way to master the foundations of Godot and GDScript.
2D Space Dodger: Use a platformer-style controller to dodge hazards falling from above while collecting coins.
3D Obstacle Course: Build your first 3D environment, gather coins, avoid traps, and explore the capabilities of Godot’s 3D engine.
This course is designed for both complete beginners and those with some experience in Godot, helping you build skills and confidence through practical, project-based learning.
You’ll reinforce what you’ve learned through interactive activities, including:
8 multiple-choice quizzes to test your knowledge after each module
3 hands-on assignments where you’ll improve your games and share your progress (including with me!)
2 complete practice tests covering all course content
Not many courses offer this many activities...
I'm Marco Paoletta, an experienced game developer with 10 Godot courses published on Zenva (a platform with over 1 million students), a Godot-focused YouTube channel with 11,000+ subscribers, and professional experience with Voodoo, one of the top mobile game studios.
Join now to start making professional-quality games in Godot 4—step by step, without unnecessary theory. Let’s build something awesome together!