GPU Computing · Cluster
Graphics Pipeline
Rasterization, shading, and raster state.
- 01 Rasterization Rules: Pixel Centers and the Top-Left Fill Convention Why a triangle becomes a set of fragments at sample points rather than pixel areas, and how the top-left rule keeps shared edges from being drawn twice or not at all.
- 02 Homogeneous Clipping and Why Rasterizers Use a Guard Band How triangles are clipped against the view volume in clip space before the perspective divide, why clipping only the near plane is usually enough, and what the guard band buys.
- 03 Perspective-Correct Interpolation and the Reciprocal-W Trick Why screen-space linear interpolation of a clip-space attribute is wrong, how dividing by w before the rasterizer and dividing back after the vector unit restores correctness, and what it costs.
- 04 Quad Shading, Helper Invocations, and Where Derivatives Come From Why fragment shaders execute in 2x2 quads, what a derivative instruction computes when neighbouring pixels are not covered, and how helper invocations keep implicit gradients defined.
- 05 Early Depth Testing and the Order of Per-Fragment Operations Which per-fragment operations happen before the fragment shader and which after, why stencil and depth tests can be hoisted only when the shader permits it, and what that costs on overdraw.
- 06 Multisample Coverage and What the Resolve Step Actually Does How one shading result is shared across several coverage samples, why resolve averages coverage rather than colour, and where alpha-to-coverage and centroid sampling fit.
- 07 Winding Order, Backface Culling, and the Two-Sided Lighting Problem How the signed area of a projected triangle identifies a front face, why culling is a rasterizer-level rejection rather than a vertex operation, and what happens to normal direction when a face is seen from behind.
- 08 Deferred Shading and the Tile-Binned Alternative Why recording surface attributes instead of shaded colour defers the expensive lighting work, and how binning fragments per screen tile reaches the same locality without the bandwidth.
- 09 Conservative Rasterization for Thin and Subpixel Geometry How expanding the coverage test to "the pixel touches the triangle" guarantees that no primitive is dropped, what the inner coverage variant adds, and which artifacts the expanded test creates.
- 10 Raster State Validation and Why Draw Order Is the Only Ordering Primitive How per-draw state forms an opaque pipeline object, why changing render targets mid-command-buffer forces a flush of binned work, and why the API exposes almost no way to sequence fragments directly.