Physically Based Rendering is a terrific book. It covers all the
marvelous math, fascinating physics, practical software engineering, and
clever tricks that are necessary to write a state-of-the-art
photorealistic renderer. All of these topics are dealt with in a clear
and pedagogical manner without omitting the all-important practical
details.
pbrt is not just a "toy" implementation of a ray tracer, but a general and
robust full-scale global illumination renderer. It contains many important
optimizations to reduce execution time and memory consumption for complex
scenes. Furthermore, pbrt is easy to extend to experiment with other
rendering algorithm variations.
This book is not only a textbook for students, but also a useful
reference book for practitioners in the field. The second edition has
been extended with sections on Metropolis light transport, subsurface
scattering, precomputed light transport, and more.
—Per Christensen, Senior Software Developer, RenderMan Products, Pixar Animation Studios
Looking for a job in research or high end rendering? Get your
kick-start education and start your own project with this book that
comes along with both theory and real examples, meaning real
code.
With their second edition, Matt Pharr and Greg Humphreys provide easy
access to even the most advanced rendering techniques like Metropolis
light transport and quasi-Monte Carlo methods. In addition the
framework lets you skip the bootstrap pain of getting data into and out
of your renderer.
The holistic approach of literate programming results in a clear
logic of an easy-to-read text. If you are serious about graphics, there
is no way around this unique and extremely valuable book that is
closest to the state of the art.
—Alexander Keller, Chief Scientist, Mental Images.
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 also 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, Assistant Professor, Department of Computer Science
and Engineering,
The Ohio State University
|