Displacements

Unleashing the full power of shaders ...

Because RenderMan is built around the REYES algorithm, it is extremely efficient at rendering displacement. With displacement mapping we're able to keep our scene geometry as simple and lightweight as possible, and add fine details at render time. Displacements in RenderMan are a powerful production tool.

Displacements in WALL-E

Creating Complexity

In Pixar's feautre animation, WALL•E, a key challenge was creating hundreds of shots for a world covered in debris. The trick was to add visual complexity as easily as possible. One solution was a displacement shader that could generate small garbage. This one shader was used in many scenes and could generate many types of looks.

WALL•E lives in a world of complexity

A flat plane

The flat plane has little detail

Here's a plane. Imagine that it's a scene that has to be populated with trash and garbage. One strategy would be to physically place trash by adding many different models to the scene, but that would also make the scene geometrically heavy and hard to alter quickly.

 

Parameters can be tweaked

The density of the trash can be tweaked

Because the trash is generated with a shader, we can add parameters to easily change the appearance of the trash. Here one parameter can be adjusted to control the density of the garbage in the ground.

Displacements can be layered

Layering shaders can create many looks

A powerful technique is layering displacement shaders with many types of effects. In this case other layers add different types of trash and grime. Each layer can be easily controlled to quickly generate many different types of looks. If the director wants to remove some grime in one place and add more blue trash in another, making the changes is straightforward.

With a displacement shader

The plane is transformed by the displacement

Here's that same scene populated with garbage. Notice that all the trash on the ground has been generated by a displacement shader. Once the shader is created it becomes very easy to add it to any scene that requires garbage. By creating the detail in the displacement the scene remains lightweight.

Control maps are helpful

The trash is placed using control maps

One issue with procedural patterns is being able to control their placement. A solution is to use control maps which artists can paint onto surfaces, and in this case painting where the trash would appear.

Other layers add grime and hills

The final shader, ready for production

Here we see the final shader on the right. The final shader is complex with layers controlling the creation of hills, how crushed the garbage is, how the garbage looks, how much dust has settled on top, etc. With the shader finished it is simple to use it in production, where it can be attached to any plane or surface and create a wide range of looks blessed for production.

More About Displacements

Pixar's RenderMan handles displacements fast and efficiently

A plane with displacement

Versatile

Displacement shaders offer many interesting possibilities. In the image above data from an actual geographic survey was used to create the displacement of a canyon. In the image of the head on the right, ZBrush was used to generate a 32-bit displacement map. The limit is really your own imagination.

Make displaced animation

Displacements can be animated to achieve a wide variety of special effects, including facial articulation.

Global Illumination

Displacements can be efficiently rendered with effects like ambient occlusion, color bleeding, and image based lighting. By using Pixar's innovative point based methods for generating these effects (which are much faster than attempting to ray trace these same effects on displaced surfaces) you can combine displacements and global illumination techniques in real-world productions.

Model on right with displaced details

Advanced work flows

High-polygon sculpting packages, like Autodesk's MudBox and Pixologic's Zbrush, give modelers unprecedented control over surface detail, and these complex details can be rendered as 32-bit displacement maps. Pixar's RenderMan is capable of rendering extremely high resolution displacement maps, which makes it possible to model high-polygon models in MudBox or ZBrush, and then render complex displacements with RenderMan. In the example above, the model on the left is a low-polygon model and the model on the right is the same model with a displacement map created in ZBrush.

Controllable

Of course displacements have many different knobs to control their behavior and prevent artifacts, but properly used they are an incredibly useful tool, a welcome addition to any TD's bag of tricks.

TM & © 1986 - Pixar. All Rights Reserved.