490 10. The Rendering Engine
z Depth of fi eld blur. This blur eff ect can be produced by using the contents
of the depth buff er to adjust the degree of blur applied at each pixel.
z Vignett e. In this fi lmic eff ect, the brightness or saturation of the image
is reduced at the corners of the screen for dramatic eff ect. It is some-
times implemented by literally rendering a texture overlay on top of the
screen. A variation on this eff ect is used to produce the classic circular
eff ect used to indicate that the player is looking through a pair of bin-
oculars or a weapon scope.
z Colorization. The colors of screen pixels can be altered in arbitrary ways
as a post-processing eff ect. For example, all colors except red could be
desaturated to grey to produce a striking eff ect similar to the famous
scene of the litt le girl in the red coat from Schindler’s List.
10.5. Further Reading
We’ve covered a lot of material in a very short space in this chapter, but we’ve
only just scratched the surface. No doubt you’ll want to explore many of these
topics in much greater detail. For an excellent overview of the entire process of
creating three-dimensional computer graphics and animation for games and
fi lm, I highly recommend [23]. The technology that underlies modern real-
time rendering is covered in excellent depth in [1], while [14] is well known as
the defi nitive reference guide to all things related to computer graphics. Other
great books on 3D rendering include [42], [9], and [10]. The mathematics of
3D rendering is covered very well in [28]. No graphics programmer’s library
would be complete without one or more books from the Graphics Gems series
([18], [4], [24], [19], and [36]) and/or the GPU Gems series ([13], [38], and [35]).
Of course, this short reference list is only the beginning—you will undoubt-
edly encounter a great many more excellent books on rendering and shaders
over the course of your career as a game programmer.