Painterly Rendering for Animation Barbara J. Meier Walt Disney Feature Animation

advertisement
Painterly Rendering for
Animation
Barbara J. Meier
Walt Disney Feature Animation
SIGGRAPH 96
Introduction
• Motivation: render animations in a
painterly style
• Goals
– Eliminate “shower door” effect
– Provide frame-to-frame coherence
Painting Concepts
• Character of brush strokes
• Creating areas of interest
– Exaggerate lighting
– Vary level of detail
– Vary brush stroke size, texture and direction
provide rhythm to direct the viewer’s eye
• Vary object edge definition
Painterly Rendering Concepts
• Stills should look like paintings
– Details abstracted by shorthand strokes
– Roundness conveyed by stroke direction
– Color should break boundaries of the object
• Objects should not have “gift-wrapped”
appearance
• Provide an energetic quality lacking in
standard rendering
Related Work
• Paint by Numbers
– Obtain images from a
collection of brush strokes
and get their position, color,
size, and orientation from
reference images
[Haeberli 1990]
• Hairy Brushes
– Models brush strokes with
splines and accounts for
trajectory of position and
pressure, dip and
composition of the brush
[Strassman 1986]
Painterly Rendering for Animation
• To maintain frame-to-frame coherence,
represent object surfaces with points and
map strokes to these points
Painterly Rendering for Animation
create particles to represent geometry
for each frame of animation
create reference pictures using geometry, surface
attributes, and lighting
transform particles based on animation parameters
sort particles by distance from viewpoint
for each particle, starting with furthest from viewpoint
transform particle to screen space
determine brush stroke attributes from
reference pictures or particles and randomly
perturb them based on user-selected parameters
composite brush stroke into paint buffer
end (for each particle)
end (for each frame)
Generating Particles
• Start with parametric surface and n
particles
• Tessellate to triangle mesh
• Distribute pn particles within each triangle
• Optional: store additional information with
the particles such as color, size, and
orientation
• Optional: perturb points by some function
Specifying and Applying Brush
Attributes
• Each brush stroke must have an image, color,
orientation, size, and position.
• Image: color image
with alpha, typically
uniform in all channels
• Orientation, size and color: obtained
from attributes in particles or
reference image
Reference Pictures
• Encode information about surface
geometry and lighting
• Typically rendered images of particle
set or geometry
• Color reference: smooth-shaded
with lighting
• Orientation reference: normals
encoded in color channels
• Size reference: scalar values
linearly interpolated from user
specified range
Overview
Animating Parameters and
Randomness
• Randomness is important
to achieve natural look in
the painting
• Perturb stroke positions
and orientations
• Image must maintain
temporal coherence
• Solution: associate seed
with particles
Results
Results
Results
Creative Techniques
• Render subsets of particles in layers
– Rough underpainting with large strokes
– Small strokes to convey detail
– Layers of color to define form
• Use image processing to isolate highlights
and shadows for separate layers
• Add several semi-transparent strokes to
the same particle to achieve painterly look
• Render objects as separate layers
Creative Techniques
• Use one light source to maintain focus in
the composition
• Use exaggerated hue and value variations
to distinguish light and shadow area
Layering
Technical Considerations
• Use image processing techniques to “grow” out
the object in the reference image to prevent
looking up into unrendered or anti-aliased
regions
• Blur orientation and size reference images
slightly to prevent jittering from frame to frame
• Encode orientation in relation to the surface (u,v)
position, not orientation after camera
transformation
Technical Considerations
• Storing attributes in the particles prevents
aliasing problems from looking up values
in the reference images
• Back-facing particles must be rendered to
prevent popping as orientation changes
• Particles are depth-sorted, so strokes will
pop, but the effect can be minimized by
careful selection of brush stroke size and
transparency
Future Work
• Incorporate painterly rendering into
traditional scenes
• Handle object size changes and
deformation in an automated manner
• Better particle placement in relation to
both geometry and screen space
• Implement longer, deformable brushes
that can follow curves
Conclusion
• Brought together two previous rendering
methods
– Using reference images to define 2d brush stroke
attributes
– Using particles to define locations of brush strokes
• Solved two problems of previous painterly
rendering techniques
– Images are coherent over time
– Brush strokes stick to geometric surfaces, not the
view-plane
Download