
Discover the course structure from setup and installation to mastering the engine layout, node system, signals, scenes, animation, fonts, themes, and 2D/3D workflows, ending with export.
Practice and active participation drive learning in this Godot course; complete tasks, quizzes, and assignments, seek feedback, join the Facebook group, and have fun solving problems.
Discover practical tips for navigating lessons: use the good herb repository to download or clone lecture versions and assets, and adjust video speed for better comprehension.
Download and run Godot by choosing a 3.x version for your operating system, such as Windows 64-bit, and extract the package if needed.
Begin the Godot 3 complete developer course with module introduction, learning GDScript basics, including syntax, variables, functions, loops, and conditions, to start programming for game development.
Learn to use variables in Godot scripting by declaring them with the var keyword. Print values, perform arithmetic, and observe the ready function run on node creation.
Learn how to work with variable types in Godot, including strings and numbers, and how to concatenate a name and an age with spaces by converting integers to strings.
Explore if statements to compare dog and cat ages, using else and else if, then classify ages as babies, adults, or elders with logical operators.
Explore if statements and operators in Godot, including equal, not equal, greater than, and less than. See how to compare numbers and names and use else if to print results.
Learn how to use loops to repeat tasks with while and for loops, increment counters, and print results; understand range, exclusive upper bounds, and how to switch between loop types.
Explore how variable scope governs where variables exist, comparing global and local scope across script blocks, the ready function, and for loops, including the same name with different scopes.
Explore arrays in Godot by storing names and ages, iterating with for loops, accessing items via indices, and printing combined name and age pairs.
Explore arrays in Godot by using append, pop back, and pop front to manage size and indices, and print first or last elements as you modify the list.
Explore functions in Godot, learning how to create reusable blocks, pass parameters, and return values, with examples like multiply by nine and printing versus returning results, to boost code productivity.
Create a simple number-guessing game where the player thinks of a number between 0 and 1000 and uses button presses to guide the guess, then start a new round.
Explore the Godot interface and project setup as you learn the file system, scene and node structure, and the inspector, then master customizing and resetting the engine layout to default.
Learn to set up a Godot 3 project, create a number-guessing game with console outputs and a 0 to 1000 range, rename nodes, attach scripts, and run the main scene.
Learn to react to player input in Godot by configuring input actions in the input map, listening per frame in the process function, and using is_action_pressed to trigger single responses.
Create a new space input action in the input map and listen for space presses to restart the game using a start game or end game routine and get_tree.
Master the Godot node system, where every node provides functionality in a root tree. Create and reuse scenes, add sprites and textures, and organize children and siblings.
Learn how to add rich text labels in Godot, set dynamic fonts, adjust size and color, assign to the title and message, and fine-tune font assets for clear text.
Update on-screen messages by referencing the message node with get_node or the dollar sign, and set the text property to reflect dynamic input in Godot 3.
Add and customize buttons in Godot 3 for a guessing game, setting text, font, and size. Connect button signals to a game script to handle greater, lesser, and correct guesses.
Connect buttons to your script with signals, update the on-screen message, and restart the game to complete the core gameplay loop.
Introduce the three pointer module by building a simple game about pushing trees and avoiding axes of death, exploring multiple scenes, and adding sprites and animation.
Create a Godot project, import assets from a zip, configure mobile settings, set orientation with width 720 and height 1280, and disable stretch to resize the viewport for testing.
Set up a Godot 3 game scene by adding a skybox background, aligning ground tiles with 32-pixel snapping, and scaling the ground so the player can stand on it.
Create a player scene in Godot by adding a sprite (zombie head) and duplicating limbs, then align, save, and add to the game scene with proper scaling.
Create a trunk scene with a trunk sprite, add left and right collision areas with a collision shape, attach X sprites, adjust positions, and save as trunk.
Exported variables are exposed to the inspector to reference the trunk scene and tweak values like 10 or 50, enabling designers to adjust spawning without editing code.
Create and position multiple trunks in Godot by instantiating trunks in a loop, using a first trunk position, and adjusting for sprite height and scale to sit on the ground.
Initialize defines a trunk function with two booleans to decide if an X exists and its side; it frees unused Xs, then running game yields a tree with no axis.
In Godot, learn to animate the player by creating an animation node, adding keyframes, adjusting origin, and wiring input to play the punch animation on mouse click or touch.
Learn to move the player from side to side in Godot by clicking positions, using the screen center, calculating an offset, and flipping the sprite for direction.
Learn to punch trunks in Godot by creating a remove function, moving trunks with delta time, using a timer to delete them, and managing trunks in an array.
Explore spawning trunks on the top of a tree after punching, using a random range to decide x position, and instantiate trunks with or without an x coordinate in Godot.
Implement a death and restart flow by adding a grave sprite, a time-left timer, and collision-based death with trunks, then reload the level to restart.
Explore core game development in Godot 3, from building a 2D and 3D shooter with enemy formations to managing sound, groups, signals, and multiple scenes across a larger game.
Create a new Godot project, name the folder space attack, set the window to 200 by 600, then import all assets and audio for the game.
Create a seamless scrolling background for ships by duplicating a top and bottom background, saving assets, and attaching a background script that moves them with delta time to loop endlessly.
Set up a kinematic player with collision shape and sprite, implement left-right movement at speed 500 via input actions, and clamp the player within the viewport to stay on screen.
Create a player projectile scene, attach a script to control speed and damage. Instantiate projectiles on shoot with input mapping and handle off-screen cleanup and enemy collisions.
Implement shooting in Godot 3 with a cooldown timer and can_shoot flag, spawn projectiles on space key, increase their speed, and update their position and z-index.
Create enemies in Godot with a sprite and collision shape, set health to 30, and use a timer to control enemy shooting and projectiles.
Create a formation scene that spawns three enemies and moves from the top into view. It then slides left and right between bounds at speed 100 using delta movement.
Spawn formations programmatically in Godot 3, using center coordinates, an offset, and randomization to position new formations as children for the player to shoot.
Defeat enemies by organizing signals to notify formations of deaths, update the enemy count, and spawn new enemies when a formation is defeated.
Fix collision handling in Godot by switching to body_entered for the player, implement a damage function with health, and trigger a death timer to restart scene after enemy projectile hits.
Add audio to the game using audio stream players for the player's laser fire and enemy explosion, linking wav files in Godot and playing sounds on events.
Learn to build a platform jump module in Godot, with spawnable, breakable, and moving platforms, scene transitions, a menu, themes, and saving high scores.
Create a new Godot project named platform jump and configure window size and orientation. Set a background color in the environment, import assets, and create a game scene to script.
Create two platforms in Godot to test a jump mechanic, using a grass sprite and a collision polygon, and attach a shared normal platform script to handle player landings.
Create a player scene in Godot 3 using a kinematic body with a collision shape and an animated sprite. Use gravity and jump constants and a 10 fps jump animation.
Implement gravity-based movement by updating current gravity with delta, applying it to the player's y position, and handling jump logic with decrementing jump and input actions.
Add a camera in Godot that follows the player, set the offset, constrain the x-axis from 0 to 720, and tune top and bottom margins to prevent drift.
Attach a script to spawn initial platforms, initialize a 40 platform array, and dynamically spawn new platforms with random types and increasing intervals to raise difficulty.
Learn to spawn three new platforms on every jump, restart the game upon death, and teleport the player to the opposite screen edge in Godot 3.
Create and animate a spring in Godot, detect the player to apply an impulse, and spawn springs on platforms with a random chance by loading and instantiating the spring scene.
Implement a breakable grass platform in Godot's 2D course that disintegrates on player contact, emits particles, and uses a random chance to become special, with a jump-enabled after effect.
Create a moving platform by making it a child of the path follow node and script its movement along the path with a 0 to 1 offset, speed, and direction.
Create a main menu scene in Godot with a background, title, high-score label, and a start button, then craft a custom theme and dynamic font, and preview UI.
Autoload a level manager to switch scenes in Godot using change scene and call deferred with a scene path, and connect the play button to load menu or other scenes.
Display the player score using a canvas layer UI in Godot, updating a text label every frame, converting the score from float to int, and keeping it fixed on screen.
Learn to save and load the high score to a file in Godot using a save file path and a key-value pair structure, with startup load and death-triggered save.
Explore the fundamentals of Godot 3D development by navigating a 3D scene, compare 2D and 3D games, and use models, materials, and particles to build your first 3D game.
Create a new Godot project, import assets, and enable a resizable window. Use gizmo to translate and rotate along the axes, and pan the camera with shift and middle mouse.
Create a 3d hammer scene with an area root to detect overlaps, add a convex collision, rotate on the x, and trigger a hit animation via input.
Add and adjust lighting in Godot to illuminate a hammer, using omni, directional, and spotlight lights, then apply two materials with tuned albedo, metallic, and roughness for a realistic finish.
Build and animate planks in Godot by configuring a scene root area, adding a collision shape, exporting speed, and looping plank movement with translation and repositioning.
Spawn nails on blanks, set up collision and a non-repeating hit check, and trigger a hit animation when nails are struck.
Learn to spawn nails along a plank using min and max span intervals, position translations, and array management to reset and render nails and bombs in a 3D Godot scene.
Display the player's score in Godot using a 2D/3D score label with a dynamic font, update the UI via signals, and convert the score to text starting at zero.
Animate the hammer in Godot, add a call function track during animation, and implement a check for already hit to print messages and prevent repeated hits.
Create an end game menu in Godot that restarts the game scene, shows a centered score using the created font, and uses a level manager and signals to switch scenes.
Use breakpoints to pause the game and trace signals, then fix the end-game logic by setting the area’s hit flag true after the new-area check passes, nails are hit.
Create a bomb scene, import the bomb model, add a convex collision, adjust materials to be less glossy, and add a small orange particle effect with defined lifetime and count.
Implement 3d audio in Godot by adding an audio stream player 3d, renaming it to audio, assigning the hit sound, and playing it on hammer impact to complete the game.
Explore exporting in Godot: create executables for Windows, OS X, Linux, and Android, then publish games to different platforms and share them with the public.
Learn to install Editor managed export templates for Godot, then export your game to Windows, Linux, and Mac, choosing folders, configuring options, and turning off debug info for production.
Install the Android SDK and Java SDK, preferably via Android Studio, then configure Godot editor settings to locate the SDK and keystore, and export the game to an Android device.
Publish an Android game by creating a per-game keystore, signing the release APK, exporting a signed package, and uploading to Google Play Console after a one-time $25 fee.
Export a Godot 3 game to HTML, create the web export with index.html, zip the files, and publish on browser platforms with metadata and monetization options.
New lectures added periodically to the course.
In this course you will learn how to develop games using Godot and its own scripting language: GDScript. We will start by learning how to use the language and keep moving on until we learn how to export and publish our games, this way you'll not only learn how to create 2D and 3D games, but also how to share them.
Godot is an awesome open source engine that gives us the ability to create awesome 2D and 3D games and export them to the Web, Linux, Windows, OSX, Android and iOS with a single code base! Since its open source release, the engine keeps gaining space and grows more each day. Right now is an awesome time to learn this new engine and grow with it!
This course is based on projects, this way you won't just learn how to use the functionalities provided to us by Godot, but also apply them on complete games. At the end of most modules, you'll be given assignments so you can overcome problems on your own and apply what you've learned thought out all of the modules.
All of the code and the projects created on the lectures are hosted on github repositories, this allows you to jump to any lecture by just downloading the project of the lecture and start from there, and compare your code to mine if you get stuck.
The assets used on the games are also provided to you so you don't have to spend any time looking for assets or creating them!
To top it all off, we also have a facebook group where you can interact with me and other students. There, you'll be able to post the games you've created and feedback on them, as well as taking part on challenges of game development that I'll host from period to period.
Join now, you won't be disappointed!