Real-Time
Rendering related books
What follows is a list
of some books we think are worthwhile for real-time rendering and computer graphics
in general. On our main web page we have attempted to
list the most recent books available, but without comment.
Here we have tried to pick what we feel are the best in each class.
Introductory Texts:
- Interactive
Computer Graphics: A Top-Down Approach with OpenGL, Third Edition,
by Edward Angel, Addison-Wesley, 2002. This is not a book for learning OpenGL.
Rather, it uses OpenGL to teach the fundamentals of computer graphics. A solid,
modern text, and recommended as a precursor for our own book.
- Computer
Graphics with OpenGL, Third Edition, by Donald Hearn and M. Pauline Baker, Prentice
Hall, 2003. A standard college text on the topic. Not focused on real-time
rendering, it covers the field of computer graphics in general. Additional
information and an OpenGL supplement can be found at the book's
web site.
- Computer
Graphics Using OpenGL, Second Edition, by F.S. Hill, Jr., Prentice Hall, 2000. Sample
chapters and source
code are available.
- 3D
Computer Graphics, 3rd Edition, by Alan Watt, Addison-Wesley, 1999.
Another good introduction to the subject, though older and it has relatively
little about interactive rendering. There is a fair
amount of overlap between this book and Watt & Watt's Advanced Animation
and Rendering Techniques book, so buying the Advanced book is perhaps
a better bet if you can afford only one.
- Computer
Graphics: Principles and Practice, Second Edition, by J.D. Foley,
A. van Dam, S.K. Feiner, and J.H. Hughes, Addison-Wesley, 1996. Old around
the edges, but a large, wide ranging book. It is a good place to learn the
basics on a topic and find references to more information. We look forward
to a new edition someday. An errata
page is available.
Advanced Texts:
- GPU Gems, edited by
Randima Fernando,
GPU Gems 2, edited by Matthew Pharr, and
GPU Gems 3, edited by Hubert Nguyen,
Addison-Wesley, 2004, 2005, 2007.
Fine edited collections of articles on interactive graphics in all-color books. These books were edited
by NVIDIA employees, so there is a high level of NVIDIA participation. See the respective websites for
the first, second, and
third books for sample articles and more information.
-
ShaderX6,
ShaderX5,
ShaderX4, and
ShaderX3,
(and out of print: ShaderX2: Introductions and Tutorials,
ShaderX2: Tips and Tricks).
edited by
Wolfgang Engel et al.
These books are also edited collections of articles dealing with new graphics techniques that use vertex and pixel shaders. Some are nuts and bolts practical, others are about new techniques in development. See the ShaderX6, ShaderX5, ShaderX4, ShaderX3, ShaderX2, and ShaderX websites for more information, samples, etc.
- Real-Time Collision Detection, by Christer Ericson, Morgan Kaufmann, 2004. A new book on collision detection techniques.
Solid theory coupled with the author's own practical experience makes this book an excellent choice for practitioners in the field. In addition to describing a wide range of relevant algorithms, the author also discusses optimization, numerical precision, robustness, and other topics critical in creating a workable interactive system.
See the author's web site for more information.
- Geometric
Tools for Computer Graphics, by Philip Schneider and David Eberly, Morgan Kaufmann,
2002. An incredible volume focused on practical computational geometry. It includes
a wide array of object/object intersection methods and other common algorithms. It also
gives a solid grounding in much of the mathematics behind the methods. The book has a
companion web site.
- 3D
Game Engine Design: A Practical Approach to Real-Time Computer Graphics,
by David Eberly, Morgan-Kaufmann, 2000. A book dealing with a wide variety
of real-time related topics, with solid theory and code. Somewhat math intensive
at times, but we prefer this to hand-waving. This book offers the author's
way of implementing various algorithms; do not expect a survey of techniques,
but rather in-depth coverage of a particular solution. Pure gold (though a little dated by now), and the
related web site is a (inter)national
treasure.
- Game
Programming Gems, Game
Programming Gems 2, and Game
Programming Gems 3 by Mark DeLoura (Editor), Charles River Media, 2000, 2001, 2002.
A wide range of Graphics Gems-like articles (with which it is not affiliated),
it has many articles on subjects relevant to real-time rendering. There are
tidbits on intersection calculations, collision detection, LOD and progressive
meshes, texture mapping effects, sprite effects, shadows, vertex and pixel shader tricks,
and much more. There
is also material on modelling, skinning, and animation. About a quarter or more of each book
is on artificial intelligence and other topics, so the focus is not entirely on computer graphics.
- Level
of Detail for 3D Graphics, by David Luebke et al., July 2002. This book covers a wide
range of topics in the area, by experts in the field. It discusses such aspects as
mesh simplification, terrain rendering, and many algorithmic methods for
accelerating image generation.
The book has a companion web site.
- Advanced
Animation and Rendering Techniques: Theory and Practice, Alan Watt
and Mark Watt, Addison-Wesley, 1992. An excellent book about more advanced
algorithms in computer graphics. Covers a wide range of topics with some depth,
with good references to more information. Quite old at this point, and not at all a good
book about interactive rendering, but it has a lot of information about the field otherwise.
- Graphics Gems series,
Academic Press. Old, but with useful algorithms. A series of 5 books with a wide
range of algorithms for all
sorts of areas of computer graphics; visit the
web site for a listing of articles and for the latest code.
- Jim
Blinn's Corner: A Trip Down the Graphics Pipeline, by Jim Blinn, Morgan-Kaufmann,
1996. A collection of columns from IEEE Computer Graphics and Applications,
these talk about all sorts of nitty gritty details and algorithms not covered
in other texts. Admittedly, most people will not need to implement software
rendering algorithms, but there are still useful tidbits here.
- Jim
Blinn's Corner: Dirty Pixels, by Jim Blinn, Morgan-Kaufmann, 1998.
A second collection of columns, in some ways more useful in this hardware
accelerated world, as topics in pixel arithmetic and signal processing are
covered.
Mathematics and Theory:
- Practical Linear Algebra: A Geometry Toolbox, Gerald E. Farin and Dianne
Hansford, A.K. Peters Ltd., 2004. A pleasant introduction to various elements
of 2D and 3D analytical geometry and linear algebra. You have to love a book
with a chapter called "Eigen Things". Sample
chapters are available online.
- Computational
Geometry: Algorithms and Applications, Mark deBerg, Van Kreveld, Overmars, and
Schwarzkopf, Springer Verlag, 2000. A new extensive book on computational geometry, with a focus
on presenting algorithms that are useful. Well researched, well written, well referenced.
No source code, but such code can often be found elsewhere.
- Principles
of Digital Image Synthesis, Andrew S. Glassner, Morgan-Kaufmann, 1995.
An expensive and huge tome (actually two volumes), the theory behind computer
graphics is (almost) all here. This book is not about algorithms, but rather covers
much of the relevant physics, optics, signal processing, and psychological
theory about how light and materials interact and how we perceive them. A
must for researchers attempting to simulate reality. Much additional
information and errata is available at the author's website.
API Guides:
- OpenGL
Programming Guide, Fourth Edition, Mason Woo, Jackie Neider, Tom Davis,
Dave Shreiner, and the OpenGL Architecture Review Board, Addison-Wesley, 2003.
The Red Book, it's the favored guide for understanding OpenGL. The 1.1 (2nd
Edition) version of this book is online.
- OpenGL
Reference Manual, Fourth Edition, Dave Shreiner (Editor) and the Opengl
Architecture Review Board, Addison-Wesley, 2004. The Blue Book, it's the definitive
reference for OpenGL. An older version of the contents of this book is online.
- OpenGL
SuperBible, Third Edition, by Richard S. Wright Jr., Benjamin Lipchak, Sams
Press, 2004. If the Red Book fails you, this is a second place to go.
- Introduction
to 3D Game Programming with DirectX 9.0, by Frank D. Luna, June 2004. We haven't seen it, but it's one
of the better-rated DirectX books.
There are many other good computer graphics texts; these listed are just the ones
with the most general interest. For more books, search our references
page (search on "Amazon" to find books in particular).
We also maintain a list of recent books (without reviews or comment).
Other sites with recommended book lists: Gamasutra, GameDev.net,
flipcode (and by flipcode's readers), and Brian Hook (this last is dated,
but still useful).
webslaves: Eric Haines
/ erich@acm.org
Tomas Akenine-Möller / tompa@acm.org
Last change: January 19, 2008