Physically Based Rendering book cover

Physically Based Rendering

From Theory to Implementation


Published: August 2004

Imprint: Morgan Kaufmann

ISBN: 978-0-12-553180-1


  • "One can buy dozens of books on ray-tracing and physically based rendering, but when you actually sit down to write rendering code yourself, you may suddenly realize those books are only telling you half the story. At every turn you will face design and engineering decisions about everything from data structures to sampling patterns, any one of which can impact system performance drastically. Most people who have worked in the innards of rendering systems have learned this esoterica by hearsay and a lot of trial and error. Matt Pharr and Greg Humphreys have decided to tell the rest of the story, by publishing and annotating the breadth and depth of a fully functional, physically based renderer, using the literate programming approach. Applying this approach—which interleaves source code and descriptive text—to the construction and documentation of even a simple computer program can be a daunting task, but it's application here is Herculean and quite possibly historic. In spite of their attention to engineering detail, the authors haven't skimped on their coverage of the theoretical underpinnings of physically based rendering. Their chapters on sampling theory and material models are among the best in print. However, the inclusion of a working artifact that implements the theory using corresponding notation and structure is an incomparable learning and teaching tool." —Dan Goldman, computer graphics supervisor for visual effects

    "We have been using early versions of this book and its accompanying source code in our graduate courses and in our research for the past two semesters, and we've been thrilled with them. The book has an excellent blend of the theoretical and practical information needed to build an efficient physically based renderer. Much of the information contained in the book is not available in any other reference book; an example is the description of practical methods for anisotropic filtering. The code that accompanies the book satisfies at least as great a need—it's well written, well commented, and strikes a good balance between performance and extensibility. As a result, we have already adopted the code as the software infrastructure for two different research projects within our group. I enthusiastically recommend that any researcher or practioner who works on rendering systems buy a copy of this book." —Bill Mark, Assistant Professor, University of Texas at Austin

    "This book is the only place to my knowledge where the implementation details of several advanced global illumination algorithms are actually shown. Not only details, but code! That is a tremendous benefit to the community and a major strength of the book." —Timothy Purcell, Stanford University / NVIDIA

    "Designing and implementing a production-quality ray tracer that is based on the physical principles of light transport is difficult. Writing a book that clearly explains the underlying principles and algorithms, from radiative transfer theory to Loop subdivision and photon mapping, is hard. Combining these explanations with source code using Knuth's literate programming methodology to produce a beautifully-designed, full-featured, and wonderfully extensible rendering system might seem NP-hard, but this book proves that it can be done. Whether you are a computer science student or computer graphics researcher, there is simply no better book on the topic." —Ian Ashdown, President, byHeart Consultants Limited

    "A good textbook should inspire, and inform the reader and allow him or her to go beyond the covers of the book. Matt and Greg have done a yeoman's job of creating a very comprehensive source of knowledge on the topics of global illumination and physically based rendering. The book certainly informs the reader. It does not simplify the material and that is a good thing. Rather, through careful exposition and very useful illustrations it provides several learning aids. There are several chapters on several fundamental topics replete with examples, figures and illustrations. Also, the treatment of various algorithms is simultaneously both comprehensive and in great depth. Most importantly, the book relies on a carefully developed programming environment that allows the reader to experiment. pbrt is easy to use and yet allows for rendition of complex scenes. As a result one can learn the material in a pedagogically sound way and also venture beyond the confines of the text. It is easy to be inspired by the effort. I have used a version of the book and software as a text for an advanced course in computer graphics. Both my students and I found the text very useful." —Raghu Machiraju, Associate Professor, Department of Computer Science and Engineering, The Ohio State University

    "This book is a great tool for anyone looking to get into advanced ray tracing techniques. It is the best guide to architecting a photorealistic renderer that I have seen." —Brian Budge, Ph.D. student, graphics and visualization research group, UC Davis


  • Geometry and transformations; Primitives & intersection acceleration; Camera models; Sampling and reconstruction; Film and the imaging pipeline; Reflection models; Materials; Texture; Volume scattering; Light sources; Monte Carlo Integration I & II: Improving efficiency; Light Transport I & II: Volume rendering; Summary and conclusion; Appendices, Index


advert image