Why Game Development?
The foundation behind three closely related engineering paths
Games force you to combine everything at once — real-time performance, physics that has to feel right, math that turns numbers into motion, and rendering pipelines that draw millions of pixels sixty times a second. That's what makes it one of the most demanding, and most transferable, paths into software engineering. A Gameplay Programmer builds the systems that make a game feel like a game: movement, combat, AI, and interaction, usually inside an engine like Unity or Unreal. A Graphics / Rendering Engineer works closer to the metal, writing shaders and optimizing the rendering pipeline itself. An Engine Programmer builds the underlying tools — physics, memory management, asset pipelines — that everyone else's code runs on top of. Whichever direction you lean toward, the roadmap below covers the shared foundation all three roles are built on.
Quick intro — what does a game developer actually do?
A quick primer before you start the roadmap. Opens in a small player, no need to leave the page.
The Game Developer Roadmap
Work through these in order. Each step has a short lesson, official docs, and a repo to practice in.
Programming Languages
C++ still runs most engines under the hood; C# drives Unity and GDScript drives Godot. Pick one and go deep.
Game Engines
Unity, Unreal, or Godot — or write your own native engine to really understand what an engine does for you.
Game Mathematics
Linear algebra, vectors and matrices, affine transformations, quaternions, splines, and projection — the language that moves everything on screen.
Game Physics
Dynamics, forces, and collision detection — from broad-phase bounding volumes down to narrow-phase algorithms like GJK and SAT.
Computer Graphics Fundamentals
The graphics pipeline, rasterization vs. ray tracing, shaders, sampling, and the rendering equation itself.
Graphics APIs
Talk directly to the GPU with OpenGL, Vulkan, DirectX, or Metal, and the shading languages that go with them.
Lighting, Shadows & Texturing
Light sources, shadow mapping, texture and bump mapping, and the visibility and culling techniques that keep it all fast.
Game AI — Decision Making
State machines, behavior trees, decision trees, and pathfinding — how NPCs decide what to do and where to go.
Game AI — Learning
Naive Bayes, decision tree learning, deep learning, and reinforcement learning — the toolkit behind adaptive game AI.
Advanced Rendering
Real-time ray tracing and physically-based rendering — where modern AAA visuals actually come from.
GitHub Projects
Real, buildable projects to put on your own GitHub
Godot Demo Playground
Pull apart Godot's official demo projects, then remix one into a small game of your own.
Unity Open-Source Game
Explore Unity's own open-source action-adventure project to see production-scale gameplay systems in C#.
Build a Game Loop from Scratch
Use raylib's simple C library to write your own render loop, input handling, and 2D game without an engine.
Physics & Collision Playground
Dig into Box2D's source to see how a real physics engine implements rigid-body dynamics and collision detection.
Track complete
Ten steps from math to rendering to AI. Push a small playable build to GitHub so it's visible to employers, then keep going — game development is learned by shipping something that runs at 60 frames a second, not just reading about it.
Where next?
Keep exploring by domain or drill into a single skill