Blog / Game engine programming

Game Engine Programming: The Best Books to Read First

August 1, 2026 · 3 min read

Most people start engine programming with rendering, and most people stall there. Shader tutorials are everywhere, so the graphics feel like the accessible entry point. They are not the thing that decides whether you ever ship an engine — structure is. A renderer bolted to a program with no clear ownership of memory, update order or object lifetime becomes unmaintainable at roughly the point it starts looking impressive.

The second thing worth knowing before you buy anything: "engine programming" is not one subject. It is five that share a build — architecture, 3D math, collision and physics, AI, and rendering — and each has its own standard text. The order below front-loads the two that make the rest legible.

Start with structure, not shaders

Game Programming Patterns by Robert Nystrom is the correct first book for almost everyone. It is short, it is about the decisions that recur in every engine ever written (game loop, update method, component, object pool, service locator), and it is honest about when each pattern is a bad idea. The full text is also readable free online, so there is no reason to skip it.

Then Game engine architecture by Jason Gregory, which is the map of the whole territory: subsystems, memory management, resource pipelines, tools, and how the pieces fit in a shipping AAA engine. It is a large book and you are not meant to read it once. Read the first third properly, then use it as a reference as each later subject comes up.

The math you actually need

3D math primer for graphics and game development by Fletcher Dunn is the gentler of the two math books — vectors, matrices, quaternions, coordinate spaces, explained for someone whose linear algebra has gone rusty. Mathematics for 3D game programming and computer graphics by Eric Lengyel covers overlapping ground at a higher level and goes further into the graphics-specific material. Pick one based on where you are. Reading both back to back is mostly repetition.

Data-oriented design by Richard Fabian sits here rather than with architecture because it is really about memory and cache behaviour. Our catalogue records the author as "Mr Richard Fabian", which is a quirk of the record rather than a different book. Fabian argues his case polemically and against object-oriented design generally; the memory-layout reasoning is the durable part and worth taking seriously, the framing is contested.

Collision, physics and agents

Real-Time Collision Detection by Christer Ericson is the standard reference and has not been displaced — our catalogue carries the full title with its series subtitle attached. It is a book of algorithms and bounding-volume choices, and you will return to it constantly. Game physics engine development by Ian Millington builds a rigid-body engine from nothing, which is the fastest route to understanding why commercial physics behaves the way it does. Artificial intelligence for games, also Millington, does the same for steering, pathfinding and decision architectures.

Rendering, and one book for pleasure

Fundamentals of Computer Graphics by Peter Shirley is the textbook foundation. Real-Time Rendering, Fourth Edition by Tomas Akenine-Möller is the field's reference work for what real-time actually does, and the one to keep on the desk. Physically Based Rendering by Matt Pharr is about offline rendering, so it is not directly applicable — but it is the clearest explanation of light transport in print, and real-time techniques are increasingly approximations of what it describes.

Finish with Game Engine Black Book by Fabien Sanglard, a teardown of how id shipped a 3D engine on hardware that had no business running one. Read it whenever you like; it is the best argument in the list for constraints as a design tool.

One honest caveat across the whole path: several of these predate current GPU APIs and none of them will teach you Vulkan or a modern console pipeline. They teach the reasoning that survives the API churn. Build something small alongside them or none of it sticks.

Follow the full ordered path here: Game Engine Programming: The Best Books to Read First.

FAQ

Should I write an engine or use an existing one?
If the goal is to ship a game, use an existing engine. If the goal is to understand engines — or to work on one professionally — write a small, deliberately limited one alongside these books. The two goals pull in opposite directions and it helps to be honest about which you have.
How much math do I need before starting?
Comfort with vectors and matrices, and a willingness to relearn the rest as it appears. The 3D math books in this path assume high-school algebra and trigonometry, not a linear algebra course. Quaternions confuse everyone at first; that is normal and does not mean you started too early.

Get the books

As an Amazon Associate we earn from qualifying purchases. Some book links are affiliate links; you pay the same price and we may earn a small commission.

Follow the full reading path

Ready to learn something deeply?

Build a reading path — free

Keep reading

Explore related subjects