THE DEV BENCH
🎮

Godot Game Development

Godot, taught around the one idea the whole engine is built from — everything is a node, a tree of nodes is a scene, and a scene can be instanced inside another. Learners who take that in during the first unit find the rest discoverable; those who miss it fight the engine for months. 2D comes before 3D because the concepts are identical with less to go wrong, and the path ends in an exported, finished, playable game, because that is the only honest assessment in game development.

0 of 17 units built

🔴 Syllabus only — the spine, not the course. Every unit is planned and carries no links, because nothing has been fetched and verified yet. There is no game development subject hub yet; when one exists this path will be wired to it.

Track A — Godot, from the scene tree to a shipped build

Seventeen units. The architecture unit is first because everything else in the engine is a consequence of it; physics gets a full unit because collision layers and masks are the most common silent failure; and the last two units are about shipping, which is the part most learners never practise.

A1

Scenes and nodes — the one idea the engine is built from

Kplanned

🔴 Godot is a single architectural idea repeated at every scale, and learners who miss it fight the engine indefinitely. Everything is a node; a tree of nodes is a scene; a scene can be instanced as a node inside another scene. There is no separate prefab concept, no entity-component split to learn, and no distinction between a level and an object other than how you use it. Grasp this in the first unit and the rest of the engine is discoverable; miss it and every tutorial reads like arbitrary ritual.

A2

The project on disk — resources, scenes and scripts

Kplanned

What the editor is actually manipulating. Scene files and resource files as saved data, the distinction between a resource shared by reference and one duplicated per instance — which is the source of the classic 'why did changing one enemy change all of them' bug — the import pipeline for assets, and a project layout that survives growth. Understanding the files also makes the project reviewable in version control instead of an opaque binary.

A3

GDScript

KSplanned

The language, taught with its differences from Python stated explicitly, because the resemblance is close enough to be actively misleading. Static typing and why it is worth using despite being optional, the annotation that exposes a variable to the editor, node references and how they are obtained, and signal declaration. A Skill element: fluency comes from writing, and the assessment is working code.

A4

The frame loop and the node lifecycle

Kplanned

When your code runs. The lifecycle callbacks in order and what is safe to do in each — reaching for a child node before the tree is ready is the most common early crash — and then the two per-frame callbacks: one that runs as fast as the machine allows and one that runs at a fixed rate for physics. Multiplying by frame delta so behaviour is frame-rate independent belongs here, and it is the difference between a game that plays the same on two machines and one that does not.

A5

Signals, and decoupling

Kplanned

The engine's event mechanism, and the architectural discipline that comes with it. A node emits a signal and does not know or care what listens; the alternative is reaching across the tree by path, which works until anything moves. This unit is really about dependency direction — call down the tree, signal up it — and it is the single habit that most determines whether a project is still workable at ten thousand lines.

A6

Composition — instancing and communication between scenes

KSplanned

Building a game from reusable pieces. Instancing scenes at runtime, passing data in without hardcoded paths, autoloaded singletons for genuinely global state and the discipline not to put everything in them, and the patterns for scenes that must coordinate. This is where the idea from A1 becomes a working practice rather than a fact.

A7

2D fundamentals

Kplanned

The transform hierarchy and how a parent's transform composes with a child's, sprites and texture filtering, cameras and viewports, drawing order and layers, and the coordinate spaces that a beginner conflates — world, screen and canvas. 2D comes before 3D because the concepts are identical with one fewer dimension of confusion, and the debugging is visual.

A8

Physics and collision

KSplanned

🔴 The highest-frustration area for new developers, and almost always the same cause. Collision layers and masks are two separate bit fields with an asymmetric meaning — what an object is, and what it looks for — and getting them backwards produces collisions that silently do not happen with no error anywhere. Also the body types and when each is right: a character moved by code is not a rigid body, and using a rigid body for a player is a decision people regret.

A9

Input

Kplanned

Actions rather than raw keys, so that rebinding, multiple devices and gamepads work without touching gameplay code. Covers the input map, the difference between polled and event-driven input and when each is correct, and input buffering — which is not an optimisation but the thing that makes controls feel responsive rather than unfair.

A10

Animation and state

KSplanned

The animation system as a general property-tweening tool rather than a sprite feature: it can animate any property of any node, including calling functions on a timeline. State machines for character behaviour, blending, and lightweight tweens for interface motion. Placed after physics because character animation and character movement have to be reconciled, and reconciling them is the actual skill.

A11

User interface

KSplanned

The control node hierarchy, which follows different layout rules from the rest of the engine — anchors, containers and size flags rather than manual positioning — and that mismatch is what makes UI feel like a separate engine to learn. Covers theming, responding to multiple resolutions, and the focus and navigation handling that makes an interface usable with a gamepad.

A12

Audio

Kplanned

Buses and effects, streamed music versus loaded samples, positional audio in 2D and 3D, and the mixing discipline that makes a game sound intentional. Short, and included because audio is the element most consistently left until the last week and most consistently changes how finished a game feels.

A13

Persistence and configuration

KSplanned

Saving and loading state without inventing a fragile format: what serialises cleanly, what does not, versioning a save so an update does not orphan players, user settings, and where files are actually allowed to be written on each platform. Includes the security note that deserialising arbitrary saved data can execute code, which is a real consideration for anything sharing save files.

A14

3D

Kplanned

Deliberately late and deliberately not the focus. Spatial nodes, meshes and materials, lighting and environment, and the import path from a modelling tool — which connects directly to the CAD paths elsewhere in this catalogue. Framed as an extension of the 2D concepts rather than a new engine, because in Godot that is genuinely what it is.

A15

Performance

KSplanned

Measuring before optimising, using the profiler to find where frame time actually goes, and the usual culprits: draw calls, per-frame allocation, physics bodies that could be areas, and processing that could be event-driven. Includes object pooling and the general principle that the cheapest work is the work not scheduled. A Skill — closed by taking a real project from a measured frame time to a better one.

A16

Exporting and shipping

KRplanned

The step that turns a project into something other people can run, and the one hobby projects most often never reach. Export templates and per-platform configuration, packaging assets, the licensing and attribution obligations for the engine and any third-party assets — a genuine Risk element, since attribution failures are a legal problem rather than an aesthetic one — and testing on a machine that is not the development one.

A17

Ship a small game

Splanned

The capstone, and the only honest assessment in this field. Small in scope, actually finished, exported, and playable by someone else without your help. A Skill element by construction: no deck, quiz or tutorial completion substitutes for a finished game, and finishing is the specific thing most people never practise.

This path does not have a subject hub yet — it is a curriculum spine registered ahead of the content being built. See the full list of learning paths for the ones that are further along.