Chapter 01
How games are made
What a game is under the hood, what an engine does for you, and how to pick a first project small enough to finish.
Game loop
Also called main loop, frame
- What
- The loop every game runs many times a second: read input, update the game state, then draw the frame. One pass is a frame; 60 frames per second leaves about 16.7 ms for each pass.
- Why
- Everything in a game engine hangs off this loop, from your update functions to physics and rendering. Knowing it explains why slow code shows up as a stutter rather than a delay.
while game_is_running:
process_input()
update(delta_time)
render()Watch out
Writing a long blocking operation, such as loading a file, inside an update function and freezing the whole game.
Game engine
- What
- Software that runs the game loop for you and provides rendering, physics, input, audio, animation, an editor and export to each platform. Unity, Godot and Unreal Engine are the three most used general engines.
- Why
- An engine lets a small team spend its time on gameplay instead of rewriting a renderer. The engine also decides your language, your build targets and your licence terms.
Watch out
Switching engines every few weeks after watching comparison videos, and never finishing a game in any of them.
Engine licences and fees
Also called Unity pricing, Unreal royalty, Godot MIT licence
- What
- As of 2026-09: Godot is free under the MIT licence with no fees. Unity Personal is free below US$200,000 a year in revenue and funding, above that Unity Pro is needed. Unreal is free until a product earns US$1 million gross, then a 5% royalty applies.
- Why
- Licence terms decide what a commercial release costs you. Read the official pricing and EULA pages before you ship, because terms have changed before and will change again.
- Example
- Unity announced a per-install Runtime Fee in September 2023 and cancelled it on 12 September 2024 after developer backlash. Godot users are unaffected by such changes.
Watch out
Relying on a forum post or an old video for licence terms instead of the engine's own pricing and licence pages.
Scope control
Also called scope creep, feature creep
- What
- Deciding the smallest version of a game that is still fun, writing it down, and saying no to everything else until it ships. A first game should be finishable in two to six weeks.
- Why
- Most unfinished hobby games die of scope: an RPG with crafting and multiplayer that never reaches a playable build. A small finished game teaches more than a large abandoned one.
- Example
- Instead of "an open world RPG", ship "a one-room dungeon where you dodge three enemy types for 60 seconds", then grow it.
Watch out
Adding a feature because it sounds fun before the core mechanic is fun on its own.
Cloning classic games
Also called remake, practice clone
- What
- Rebuilding a small, well-known game such as Pong, Breakout, Flappy Bird, Snake or Asteroids to learn the engine without having to design anything.
- Why
- The design is already solved, so every problem you hit is a technical one. Two or three clones teach input, collisions, scoring, UI and restarting a game.
Watch out
Publishing a clone with the original's name or art, which breaks trademark and copyright rules on every store.
2D or 3D
Also called 2D vs 3D
- What
- 2D games use sprites on a flat plane with x and y positions; 3D games use meshes, cameras, lighting and a third axis. 3D multiplies the art, animation, camera and physics work.
- Why
- For a first game, 2D keeps the art simple and the maths easy, so you finish sooner. 3D is worth it when the idea needs depth, or when you target Unreal's strengths.
Watch out
Choosing 3D for a first game and spending weeks on a camera that does not clip through walls.
Prototype and vertical slice
Also called greybox prototype, vertical slice
- What
- A prototype answers one question, usually "is this mechanic fun?", with placeholder shapes. A vertical slice is one short part of the game finished to release quality.
- Why
- Prototypes are cheap to throw away, so you can test ideas fast. A vertical slice shows what the whole game will cost to make and look like.
Watch out
Polishing art on a prototype before you know the mechanic is fun.
Game jam
Also called GMTK Game Jam, Ludum Dare
- What
- An event where people make a game to a theme in a fixed time, usually 48 to 96 hours, then play and rate each other's entries. GMTK Game Jam and Ludum Dare are two of the largest.
- Why
- A jam forces tiny scope and a finished, shareable build, and players give feedback within days. Several jam games have grown into commercial releases.
Watch out
Spending the first day on menus and settings instead of the core mechanic.
Version control for games
Also called Git LFS, gitignore, version control
- What
- Git with a
.gitignorethat skips generated folders (UnityLibrary, Godot.godot, UnrealIntermediateandSaved), and Git LFS for large binary files such as textures, audio and models. - Why
- Games break in surprising ways, and a commit history lets you go back to the last working build. It also makes team jams possible without passing zip files around.
# .gitignore essentials
Library/
Temp/
.godot/
Intermediate/
Saved/
Binaries/Watch out
Committing generated folders, which bloats the repository and causes endless merge conflicts.