Advanced RenderMan

Advanced RenderMan

Creating CGI for Motion Pictures

1st Edition - December 8, 1999

Write a review

  • Authors: Anthony Apodaca, Larry Gritz
  • Paperback ISBN: 9781558606180

Purchase options

Purchase options
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


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.

Key Features

Explore the Power of RenderMan

  • Use the entire range of geometric primitives supported by RenderMan.
  • Understand how and when to use procedural primitives and level of detail.
  • Master every nuance of the Shading Language.
  • Write detailed procedural shaders using texture, displacement, pattern generation, and custom reflection models.
  • Write shaders for special effects relating to volumes, custom lighting, and non-photorealistic media.
  • Use antialiasing to ensure that your shaders are free of artifacts.
  • Minimize the expense of rendering scenes by optimizing input.

Other Features from Advanced RenderMan

  • Offers expert advice and instruction applicable to any RenderMan-compliant renderer.
  • Filled with technical illustrations and many full-color representations of effects supported by the RenderMan standard.
  • Includes a chapter reviewing key math and computer graphics concepts.

Table of Contents

  • Part I Introduction

    1. Photosurrealism

    1.1 Making Movies

    1.2 Altered Reality

    1.3 Production Requirements

    1.4 Enter RenderMan

    1.5 Sign Me Up!

    2. Review of Mathematics and Computer Graphics Concepts

    2.1 Trigonometry and Vector Algebra

    2.2 Geometry

    2.3 Physics and Optics

    2.4 Computer Graphics

    Further Reading

    Part II Scene Description

    3. Describing Models and Scenes in RenderMan

    3.1 Scene Description API

    3.2 Structure of a Scene Description

    3.3 Rendering Options

    3.4 Primitive Attributes

    3.5 Other Shading Attributes

    3.6 Lights

    3.7 External Resources

    3.8 Advanced Features

    3.9 The Rest of the Story

    4. Geometric Primitives

    4.1 Primitive Variables

    4.2 Parametric Quadrics

    4.3 Polygons and Polyhedra

    4.4 Parametric Patches

    4.5 NURBS

    4.6 Subdivision Meshes

    4.7 Reference Geometry

    4.8 Constructive Solid Geometry

    5. Handling Complexity in Photorealistic Scenes

    5.1 Procedural Primitives

    5.2 Lightweight Primitives

    5.3 Level of Detail

    6. How PhotoRealistic RenderMan Works

    6.1 History

    6.2 Basic Geometric Pipeline

    6.3 Enhanced Geometric Pipeline

    6.4 Rendering Attributes and Options

    6.5 Rendering Artifacts

    Part III Shading

    7. Introduction to Shading Language

    7.1 Shader Philosophy

    7.2 Shading Language Data Types

    7.3 Shading Language Variables

    7.4 Statements and Control Flow

    7.5 Simple Built-in Functions

    7.6 Writing SL Functions

    Further Reading

    8. Texture Mapping and Displacement

    8.1 Texture Access in Shading Language

    8.2 Displacement and Bump Mapping

    8.3 Texture Projections

    Further Reading

    9. Illumination Models and Lights

    9.1 Built-in Local Illumination Models

    9.2 Reflections

    9.3 Illuminance Loops, or How diffuse ( ) and spcular ( ) work

    9.4 Identifying Lights with Special Properties

    9.5 Custom Material Descriptions

    9.6 Light Sources

    Further Reading

    10. Pattern Generation

    10.1 Proceduralism versus Stored Textures

    10.2 Regular Patterns

    10.3 Irregular Patterns: noise ( )

    10.4 Fractional Brownian Motion and Turbulence

    10.5 Cellular Patterns

    Further Reading

    11. Shader Antialiasing

    11.1 Sources of Aliasing in Shading

    11.2 Facilities for Filter Estimation

    11.3 Analytic Antialiasing

    11.4 Antialiasing by Frequency Clamping

    11.5 Conclusions and Caveats

    Further Reading

    12. A Gallery of Procedural Shaders

    12.1 Shader Strategy

    12.2 Aside: Shading Spaces and Reference Meshes

    12.3 Ceramic Tiles

    12.4 Wood Grain

    12.5 Wood Planks

    12.6 Smoke: A Volume Shader

    12.7 Lens Flare and "Clipping Plane" Shaders

    Part IV Tricks of the Trade

    13. Storytelling through Lighting, a Computer Graphics Perspective

    13.1 Introduction

    13.2 Objectives of Lighting

    13.3 Directing the Viewer's Eye-The Study of Composition

    13.4 Creating Depth

    13.5 Conveying Time of Day and Season

    13.6 Enhancing Mood, Atmosphere, and Drama

    13.7 Revealing Character Personality and Situation

    13.8 Continuity

    13.9 Film Considerations

    13.10 Conclusion

    Further Reading

    14. Lighting Controls for Computer Cinematography

    14.1 Introduction

    14.2 The Lighting Model

    14.3 Implementation Notes

    14.4 Examples

    Further Reading

    15. Volumetric Shaders for Visual Effects

    15.1 Using Textured Geometry for Volume Effects

    15.2 Ray Marching Techniques

    15.3 In the Real World (Volumetric Effects for Production)

    15.4 Conclusion

    16. Nonphotorealistic Rendering with RenderMan

    16.1 Introduction

    16.2 Alternate Camera Models

    16.3 Shading Nonphotorealistically

    16.4 Indirect Rendering with RenderMan

    16.5 Conclusion

    Further Reading

    17. Ray Tracing in PRMan

    17.1 Introduction

    17.2 Background: DSO Shadeops in PRMan

    17.3 A Ray Server

    17.4 New Functionality

    17.5 Ray Tracing for Reflections and Refractions

    17.6 Using the Ray Server

    17.7 Implementation Notes

Product details

  • No. of pages: 560
  • Language: English
  • Copyright: © Morgan Kaufmann 1999
  • Published: December 8, 1999
  • Imprint: Morgan Kaufmann
  • Paperback ISBN: 9781558606180

About the Authors

Anthony Apodaca

Tony Apodaca is Director of Graphics R&D at Pixar Animation Studios, co-creator of the RenderMan Specification, and lead engineer of the PhotoRealistic RenderMan. His film credits include Tin Toy, Knick-knack, Toy Story, and A Bug’s Life. In 1993, Tony and five other engineers received a Scientific and Technical Academy Award from the Academy of Motion Picture Arts and Sciences for work on PhotoRealistic RenderMan.

Affiliations and Expertise

Pixar Animation Studios, Emeryville, CA, U.S.A.

Larry Gritz

Larry Gritz is a co-founder of Exluna,, part of Nvidia, where he is a co-designer and the current technical lead of the Entropy renderer. Prior to joining Exluna, Larry was the head of the rendering research group at Pixar Animation Studios and editor of the RenderMan Interface 3.2 Specification, as well as serving as a lighting and shading TD on film and commercial projects. His film credits include Toy Story, A Bug's Life, Toy Story 2, and Monsters, Inc. Larry has a B.S. degree from Cornell University and M.S. and Ph.D. degrees from the George Washington University. Prior to joining Pixar in early 1995, Larry was the original creator of BMRT. Larry's research interests include global illumination, shading languages and systems, and rendering of hideously complex scenes.

Affiliations and Expertise

Exluna/Nvidia, Berkeley, California, U.S.A.

Ratings and Reviews

Write a review

There are currently no reviews for "Advanced RenderMan"