← All resources

A Trip Through the Graphics Pipeline (2011)

Blog Advanced

Fabian "ryg" Giesen

Visit resource ↗

Description

Fabian Giesen's thirteen-part blog series on The ryg blog. It walks the Direct3D and OpenGL pipeline as implemented on contemporary GPUs, from driver command submission through fixed-function and programmable stages to compute.

Parts cover the software stack and command processor, GPU memory architecture, vertex processing, texture samplers, primitive assembly and clipping, rasterization setup, depth and stencil paths, pixel shader fork and join phases, geometry shaders, stream-out, tessellation, and compute shaders.

The series targets programmers who already know a modern 3D API and basic hardware vocabulary (caches, FIFOs, parallelism). It bridges high-level API calls and low-level microarchitectural detail without repeating introductory draw-call tutorials.

All posts remain free on WordPress under CC0 waiver. The writing is dense and equation-backed, prioritizing information density over benchmarks or colorful diagrams.

Frequently cited on GameDev Stack Exchange and in graphics reading lists as one of the best mid-level explanations of how rasterization hardware actually executes API work; essential follow-up reading after basic OpenGL or D3D courses.