Using deferred shading
Deferred shading is a technique that involves postponing (or "deferring") the lighting/shading step to a second pass. We do this (among other reasons) in order to avoid shading a pixel more than once. The basic idea is as follows:
- In the first pass, we render the scene, but instead of evaluating the reflection model to determine a fragment color, we simply store all of the geometry information (position, normal, texture coordinate, reflectivity, and so on) in an intermediate set of buffers, collectively called the g-buffer (g for geometry).
- In the second pass, we simply read from the g-buffer, evaluate the reflection model, and produce a final color for each pixel.
When deferred shading is used, we avoid evaluating the reflection ...
Get OpenGL – Build high performance graphics now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.