Game Developer
C++ and Lua — the canonical pair for game engines and scripting. Plus the rendering, physics, and engine projects that prove you understand the math.
Course sequence
- 01
C++ Fundamentals
Not startedLearn modern C++: the language behind game engines, browsers, and high-performance systems. Strong static types, manual control where you need it, an enormous standard library (STL). Every lesson is hands-on with real g++ execution.
intermediatecpp15 lessons~4h - 02
C++ Intermediate
Not startedLevel up from C++ Fundamentals. Pointers in depth, dynamic memory, smart pointers, RAII, the Rule of Five, move semantics, templates, and exception safety. The features that turn working code into idiomatic modern C++.
intermediatecpp7 lessons~2h - 03
Lua Fundamentals
Not startedLearn Lua: small, fast, embeddable. Powers Roblox, Neovim, World of Warcraft addons, OpenResty, and the Redis scripting layer. One data structure (the table) does the work of arrays, dicts, classes, and modules.
beginnerlua18 lessons~5h - 04
Lua Intermediate
Not startedLevel up from Lua Fundamentals. Metatables, OOP from primitives, modules, coroutines, error handling. The features that turn Lua's tiny core into a full programming environment.
intermediatelua7 lessons~2h - 05
Lua Advanced
Not startedBeyond Lua Intermediate. Closures and upvalues deep, weak tables, sandboxing, FFI patterns, the C API mental model. The features behind embedding Lua into Redis, Roblox, Neovim.
advancedlua7 lessons~2h - 06
C# Fundamentals
Not startedLearn C#: Microsoft's flagship language. Powers Unity games, ASP.NET web apps, Windows desktop, and increasingly cross-platform via .NET. Strongly typed with modern syntax — pattern matching, records, async/await, LINQ.
beginnercsharp12 lessons~3h - 07
C# Intermediate
Not startedLevel up from C# Fundamentals. Generics, LINQ in depth, async/await, properties, exceptions, value vs reference. The features you reach for in real C# code every day.
intermediatecsharp9 lessons~2h - 08
Build a 2D Physics Engine
Not startedBuild a Box2D-style 2D physics engine: vector math, semi-implicit Euler integration, AABB + circle collision, broad-phase via spatial hash + sweep-and-prune, SAT narrow-phase, impulse-based response with friction + restitution, distance + spring constraints, sleeping for stability.
advanced14 lessons~4h - 09
Build a 3D Renderer
Not startedBuild a 3D renderer covering both rasterization and ray tracing: 3D vector + matrix math, transformation pipelines, edge function rasterization with z-buffer, Phong/PBR shading, ray-sphere/triangle/AABB intersections, BVH acceleration. Math + algorithms behind every modern game engine and film renderer.
advanced20 lessons~5h - 10
Build a Game Engine
Not startedBuild an ECS-based game engine: fixed-timestep game loop, input + audio, Entity-Component-System architecture, system scheduling, event bus, sprite + animation rendering, scripting, and the architecture behind Unity, Unreal, Godot, Bevy.
advanced14 lessons~4h - 11
Build a CHIP-8 Emulator
Not startedBuild the simplest possible emulator: 35 opcodes, 4KB RAM, 16 registers, 64x32 display. Plays Pong, Tetris, Space Invaders. The on-ramp to NES, Game Boy, and bigger emulator projects.
intermediate13 lessons~3h
Create a free account to track your progress across this path.