Part I Introduction
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.3 Physics and Optics
2.4 Computer Graphics
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.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.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.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
8. Texture Mapping and Displacement
8.1 Texture Access in Shading Language
8.2 Displacement and Bump Mapping
8.3 Texture Projections
9. Illumination Models and Lights
9.1 Built-in Local Illumination Models
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
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
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
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.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.9 Film Considerations
14. Lighting Controls for Computer Cinematography
14.2 The Lighting Model
14.3 Implementation Notes
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)
16. Nonphotorealistic Rendering with RenderMan
16.2 Alternate Camera Models
16.3 Shading Nonphotorealistically
16.4 Indirect Rendering with RenderMan
17. Ray Tracing in PRMan
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
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.
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.
- No. of pages:
- © Morgan Kaufmann 2000
- 15th December 1999
- Morgan Kaufmann
- eBook ISBN:
- Paperback ISBN:
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.
Pixar Animation Studios, Emeryville, CA, U.S.A.
Larry Gritz is a co-founder of Exluna, www.exluna.com, 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.
Exluna/Nvidia, Berkeley, California, U.S.A.