Visibility buffer
Stores just a triangle ID per pixel instead of a fat G-buffer, resolving material shading in a later full-screen pass.
Deferred shading pays in bandwidth: every pixel writes albedo, normal, roughness and more into a fat G-buffer. The visibility buffer, formalised by Christopher Burns and Warren Hunt in 2013, instead stores only which triangle (and instance) is visible at each pixel — typically 32 to 64 bits. Shading happens in a separate pass that re-fetches the triangle's vertex data and material on demand. The payoff grows as triangles shrink to a handful of pixels, where a fat G-buffer is mostly wasted writes. Epic's Nanite in Unreal Engine 5 is built on a visibility buffer, part of why it can chew through millions of micropolygons.