GODOT 4.7 / BUILD PATH

Build production-ready Godot systems.

Choose a path, build the skill in a lab, ship it in your next scene. Nodes, signals, input, physics — practical, not theoretical.

01
Pick a path Unity, Unreal, or Godot-first
02
Build the system Practice with code and labs
03
Ship a scene Turn the pattern into a project habit
Nodes Read scenes like systems
Typed GDScript Write code you can ship
Input + Physics Make controls feel real
Engine Bridges Translate Unity / Unreal habits
12345678910
extends CharacterBody2D

@export var speed: float = 300.0

func _physics_process(delta: float) -> void:
    var direction := Input.get_vector(
        "left", "right", "up", "down"
    )
    velocity = direction * speed
    move_and_slide()
2D Player Movement · 11 lines Open guide
LEARNING HUB

Everything you need to build games

Open Learning Hub
Getting Started

Unreal to Godot Guide

Transitioning from Unreal Engine to Godot 4? Learn how Blueprints map to GDScript, Actors ...

+100 XP 15 min
Getting Started

Unity to Godot Guide

Switching from Unity to Godot? This migration guide maps Unity concepts to Godot equivalen...

+100 XP 15 min
Fundamentals

Node Tree Explorer

Understand Godot's node and scene system from scratch. Learn how nodes work, how to compos...

+50 XP 10 min
Fundamentals

Translation Game

Match Unity and Unreal Engine terms to their Godot equivalents in this interactive quiz ga...

+40 XP 8 min
Fundamentals

Code Lab

Side-by-side code comparisons between C# (Unity) and GDScript (Godot). See how familiar co...

+60 XP 12 min
Core Systems

Input Guide

Learn about Input Actions, events, and handling player control in Godot 4. Master keyboard...

+45 XP 10 min
Core Systems

Physics Guide

Learn RigidBody, CharacterBody, collisions, and physics layers in Godot 4. Complete 2D and...

+55 XP 12 min
Core Systems

Save & Load Guide

Build robust save systems with JSON, FileAccess, and auto-save features in Godot 4....

+55 XP 15 min
Interactive Labs

Scene Builder

Drag and drop to build a Godot scene tree from scratch. Interactive exercise to practice n...

+65 XP 12 min
Interactive Labs

Input Playground

Real-time input testing playground. Press keys and see Godot's input system respond instan...

+50 XP 8 min
Interactive Labs

Code Sandbox

Practice GDScript in a browser-based editor with syntax highlighting, saved snippets, and ...

+80 XP 15 min
Reference

Editor Guide

Master the Godot Editor: panels, shortcuts, hidden features, and productivity tips for eff...

+45 XP 10 min
Reference

Asset Pipeline Guide

Import 3D models, audio, textures, particles, and more into Godot 4. Complete asset pipeli...

+45 XP 12 min
Advanced

Real World Patterns

Learn essential design patterns implemented in GDScript for Godot 4: Singleton, Observer, ...

+90 XP 15 min
Reference

GDScript Cheat Sheet

Complete GDScript cheat sheet for Godot 4. Variables, functions, signals, exports, types, ...

+30 XP 5 min
GDSCRIPT RECIPES

Copy-ready code for common patterns

All Recipes
Movement

2D Player Movement

Basic WASD/arrow key movement for CharacterBody2D

12345678
extends CharacterBody2D

@export var speed: float = 300.0

func _physics_process(delta: float) -> void:
    var direction := Input.get_vector("left", "right", "up", "down")
    velocity = direction * speed
    move_and_slide()
Open guide
Movement

Top-Down 8-Direction Movement

Normalized 8-direction movement with acceleration and friction

123456789101112
extends CharacterBody2D

@export var max_speed: float = 200.0
@export var acceleration: float = 1200.0
@export var friction: float = 1000.0

func _physics_process(delta: float) -> void:
    var input_dir := Input.get_vector("left", "right", "up", "down")

    if input_dir != Vector2.ZERO:
        velocity = velocity.move_toward(input_dir * max_speed, acceleration * delta)
    else:
Open guide
Movement

Smooth Camera Follow

Camera2D that smoothly tracks a target node with offset and dead zone

123456789101112
extends Camera2D

@export var target: Node2D
@export var smoothing: float = 5.0
@export var offset: Vector2 = Vector2(0, -40)
@export var look_ahead: float = 50.0

func _process(delta: float) -> void:
    if not target:
        return

    var target_pos := target.global_position + offset
Movement

Platformer Jump with Gravity

Variable-height jump with coyote time and jump buffering

123456789101112
extends CharacterBody2D

@export var speed: float = 300.0
@export var jump_force: float = -400.0
@export var coyote_time: float = 0.12
@export var jump_buffer_time: float = 0.1

var gravity: float = ProjectSettings.get_setting("physics/2d/default_gravity")
var coyote_timer := 0.0
var jump_buffer_timer := 0.0

func _physics_process(delta: float) -> void:
Open guide
UI

Health Bar with Tween

Animated health bar that smoothly transitions when health changes

123456789101112
extends ProgressBar

@export var health_component: Node

func _ready() -> void:
    if health_component:
        health_component.health_changed.connect(_on_health_changed)
    max_value = 100
    value = 100

func _on_health_changed(new_health: float) -> void:
    var tween := create_tween()
UI

Damage Numbers Popup

Floating damage numbers that rise and fade out when enemies take hits

123456789101112
extends Node2D

# Call this to spawn a damage number
func show_damage(amount: int, pos: Vector2, is_crit: bool = false) -> void:
    var label := Label.new()
    label.text = str(amount)
    label.position = pos
    label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER

    if is_crit:
        label.add_theme_color_override("font_color", Color.RED)
        label.add_theme_font_size_override("font_size", 28)
Showing 6 of 26 recipes. Open full recipe library
FROM THE BLOG

Tutorials, deep dives & opinions

All Articles
Godot 4 beginner tutorial showing a small 2D game project
FEATURED · Tutorial

Godot 4 Complete Beginner Tutorial: Build Your First Tiny Game

A practical first-game tutorial for Godot 4 beginners. Build a tiny collect-and-score game while learning scenes, nodes, input, signals, collisions, and export-ready habits.

Read

Track your progress as you learn

Earn XP, unlock achievements, and level up from Newbie to Legend across 15 guides.

START Learning