- Shopping Bag ( 0 items )
Advanced Animation and Rendering Techniques, by Alan Watt and Mark Watt, is on the bookshelves of most graphics programmers I have worked with. It is the book to go for when you need a basis for an algorithm or to look up a special effect or technique. On the other hand, it does not cover the nuances of Windows, OpenGL, PEX, or any particular package other than (briefly) Pixar's RenderMan.
The color plates are inspiring and the combination of effects (such as the caustics effect) and commercial end products (such as Hong Kong airport simulation and the cola product) demonstrate the authors' contact with real-world applications in the industry as well as the artistry of good academic graphics. The plates are directly relevant to sections of the book as examples of techniques.
The book provides an excellent balance of mathematics, sample code, and theory. It is best to understand the theory before looking at the source code. Colleagues have pointed out flaws in some of the source code. Of course, it is difficult to provide good source in a book like this, what with machine endianess and differences in left-handed and right-handed coordinate systems differentiate the authors and readers systems. I suspect that the endianess makes it more appropriate for RISC workstation users than Intel PC-based readers.
I have seen Advanced Animation and Rendering Techniques on only a few syllabi for graphics courses. This is probably a comment on the quality of teaching rather the usefulness of this book as a standard text, especially at the postgraduate level. The code is in C. It is clean and well commented, but in a common indentation style I don't agree with; otherwise, it is easy to read.
Part 1, "Rendering Polygonal Objects" (Chapter 1) covers hidden surface removal and about enough material to consider a primitive game engine. Books on Direct-3D and OpenGL are a better reference.
Part 2 consists of "The Theory and Practice of Light/Object Interaction" (Chapter 2), which explains enough about light models to give a foundation for the ray tracing material in Part 3. "The Theory and Practice of Parametric Representation Techniques" (Chapter 3) covers enough for you to get a handle on algorithmic description of objects and "The Theory and Practice of Anti-aliasing Techniques" (Chapter 4) contains various approaches to combating steps in images or "jaggies."
The biggest section is Part 3, "Advanced Rendering Techniques," which contains the majority of algorithms useful as a basis for a ray tracer (such as "BeRays: A Ray Tracer for BeOS," DDJ, November 1999). It provides a core armory of ray tracing algorithms: "Shadow Generation Techniques" (Chapter 5), and "Mapping Techniques: Texture and Environment Mapping" (Chapter 6).
Chapters 8, 9, and 10 are devoted to ray tracing. "Radiosity Methods" (Chapter 11) has algorithms for producing the diffuse haze that prevents images looking too clean, plastic, and otherwise fake. "Global Illumination Models" (Chapter 12) combines ray tracing and radiosity.
"Procedural Texture Mapping and Modeling" (Chapter 7), deals with fractal terrain, turbulence (such as clouds, flames, marble and smoke), Fourier synthesis in modeling and texture patterns, and the beauty of evolutionary procedural modeling such as the genotypes in the color plates.
Volume rendering techniques (Chapter 13) contains enough detail to provide a foundation for scientific visualization. "Advanced Rendering Interfaces: Shading Languages and RenderMan" (Chapter 14) gives guidance about the usability of rendering engines and details the technique of texture trees.
The concluding part barely justifies the "animation" claim in the title with Part 5 "Advanced Animation." Chapter 15 "Overview and Low-level Motion Specification" talks about motion paths and keyframes that makes sense of what the 3DS Max modelers talk about. Chapter 16 "Animating Articulated Structures" introduces kinematics and inverse kinematics as methods of keeping an object solid, connected, and responsive to the laws of physics. Chapter 17 "Soft Object Animation" provides methods for effects to produce rubbery figures. Chapter 18 "Procedural Animation" provides coverage of mostly Fourier-based animation techniques such as particle set, behavioral procedural, analytical model, and scripted animal movement animation.
Overall, Advanced Animation and Rendering Techniques provides a wealth of information that assists in developing specialized renderers and analyzing the needs of modelers.
— Electronic Review of Computer Books