One would think that the title of Tomas Moller's and Eric Haines's book, Real-Time Rendering, would be a contradiction in terms. How can such a computationally intensive process as rendering computer graphics ever hope to be done on the fly, in the blink of an eye, without delay--in short, in real time?
The term rendering, as it applies to computer graphics, refers to the mathematically intensive process of creating a picture or sequence of frames based on geometry. The duration of this process is dependent on the complexity of the scene (a forest with many trees and thousands of leaves will take much longer to render than a scene consisting of a white box over a gray background) and the speed of the hardware doing the calculations.
When Pixar's Toy Story was first released, the computer animation community was all abuzz with how it was done, and someone at Pixar mentioned that over 100 SGI workstations were used for rendering the frames over the course of almost two years. Someone else extrapolated this data and figured out that the same movie could have been rendered on one contemporary PC over the course of about 80 years.
The authors deftly answer the question, not only asserting that it can be done, but since this book is a programmer's guide, they list snippets of programming algorithms that help outline how it can be done.
Because the software and hardware is constantly and rapidly evolving due to the insatiable need for more realistic and complex graphics, the book avoids getting too specific. To quote the authors, "The field is rapidly evolving, and so it is a moving target." This lack of specificity doesn't detract from the usefulness of the book, though. Instead, it works at a higher, more abstract level, describing approaches to rendering techniques using generic algorithms. It is up to the programmer to apply these methods to the specific program or system on which it is to be implemented.
Real-Time Rendering describes some very complex methods, and this book is not for the average computer graphics creator. However, if you are working in an industry that depends on real-time rendered animation--like the gaming, medical, or military fields--or you are building the next-generation real-time render engine, this book will offer insight and concepts you can use to build some impressive software. --Mike Caputo
Building on the success of Real-Time Rendering, this completely revised and updated second edition addresses new developments in rendering realistic three-dimensional images in a fraction of a second. It discusses the latest graphics hardware capabilities, while also presenting theoretical underpinnings and algorithms of lasting value.
The book contains chapters as diverse as:
Advanced shading techniques (new chapter)
Curved surfaces (new chapter)
With topics including: