Advanced RenderMan

Creating CGI for Motion Pictures


  • Anthony Apodaca, Pixar Animation Studios, Emeryville, CA, U.S.A.
  • Larry Gritz, Exluna/Nvidia, Berkeley, California, U.S.A.

Advanced RenderMan: Creating CGI for Motion Pictures is precisely what you and other RenderMan users are dying for. Written by the world's foremost RenderMan experts, it offers thoroughly updated coverage of the standard while moving beyond the scope of the original RenderMan Companion to provide in-depth information on dozens of advanced topics. Both a reference and a tutorial, this book will quickly prove indispensable, whether you're a technical director, graphics programmer, modeler, animator, or hobbyist.

View full description


Book information

  • Published: December 1999
  • ISBN: 978-1-55860-618-0

Table of Contents

ForwardPrefaceColor PlatesPart I Introduction1. Photosurrealism1.1 Making Movies1.2 Altered Reality1.3 Production Requirements1.4 Enter RenderMan1.5 Sign Me Up!2. Review of Mathematics and Computer Graphics Concepts2.1 Trigonometry and Vector Algebra2.2 Geometry2.3 Physics and Optics2.4 Computer GraphicsFurther ReadingPart II Scene Description3. Describing Models and Scenes in RenderMan3.1 Scene Description API3.2 Structure of a Scene Description3.3 Rendering Options3.4 Primitive Attributes3.5 Other Shading Attributes3.6 Lights3.7 External Resources3.8 Advanced Features3.9 The Rest of the Story4. Geometric Primitives4.1 Primitive Variables4.2 Parametric Quadrics4.3 Polygons and Polyhedra4.4 Parametric Patches4.5 NURBS4.6 Subdivision Meshes4.7 Reference Geometry4.8 Constructive Solid Geometry5. Handling Complexity in Photorealistic Scenes5.1 Procedural Primitives5.2 Lightweight Primitives5.3 Level of Detail6. How PhotoRealistic RenderMan Works6.1 History6.2 Basic Geometric Pipeline6.3 Enhanced Geometric Pipeline6.4 Rendering Attributes and Options6.5 Rendering ArtifactsPart III Shading7. Introduction to Shading Language7.1 Shader Philosophy7.2 Shading Language Data Types7.3 Shading Language Variables7.4 Statements and Control Flow7.5 Simple Built-in Functions7.6 Writing SL FunctionsFurther Reading8. Texture Mapping and Displacement8.1 Texture Access in Shading Language8.2 Displacement and Bump Mapping8.3 Texture ProjectionsFurther Reading9. Illumination Models and Lights9.1 Built-in Local Illumination Models9.2 Reflections9.3 Illuminance Loops, or How diffuse ( ) and spcular ( ) work9.4 Identifying Lights with Special Properties9.5 Custom Material Descriptions9.6 Light SourcesFurther Reading10. Pattern Generation10.1 Proceduralism versus Stored Textures10.2 Regular Patterns10.3 Irregular Patterns: noise ( )10.4 Fractional Brownian Motion and Turbulence10.5 Cellular PatternsFurther Reading11. Shader Antialiasing11.1 Sources of Aliasing in Shading11.2 Facilities for Filter Estimation11.3 Analytic Antialiasing11.4 Antialiasing by Frequency Clamping11.5 Conclusions and CaveatsFurther Reading12. A Gallery of Procedural Shaders12.1 Shader Strategy12.2 Aside: Shading Spaces and Reference Meshes12.3 Ceramic Tiles12.4 Wood Grain12.5 Wood Planks12.6 Smoke: A Volume Shader12.7 Lens Flare and "Clipping Plane" ShadersPart IV Tricks of the Trade13. Storytelling through Lighting, a Computer Graphics Perspective13.1 Introduction13.2 Objectives of Lighting13.3 Directing the Viewer's Eye-The Study of Composition13.4 Creating Depth13.5 Conveying Time of Day and Season13.6 Enhancing Mood, Atmosphere, and Drama13.7 Revealing Character Personality and Situation13.8 Continuity13.9 Film Considerations13.10 ConclusionFurther Reading14. Lighting Controls for Computer Cinematography14.1 Introduction14.2 The Lighting Model14.3 Implementation Notes14.4 ExamplesFurther Reading15. Volumetric Shaders for Visual Effects15.1 Using Textured Geometry for Volume Effects15.2 Ray Marching Techniques15.3 In the Real World (Volumetric Effects for Production)15.4 Conclusion16. Nonphotorealistic Rendering with RenderMan16.1 Introduction16.2 Alternate Camera Models16.3 Shading Nonphotorealistically16.4 Indirect Rendering with RenderMan16.5 ConclusionFurther Reading17. Ray Tracing in PRMan 17.1 Introduction17.2 Background: DSO Shadeops in PRMan17.3 A Ray Server17.4 New Functionality17.5 Ray Tracing for Reflections and Refractions17.6 Using the Ray Server17.7 Implementation NotesFuther ReadingAfterwordGlossary