subdivision surfaces in character animation tony derose - michael kass - tien truong - pixar...

30
Subdivision Surfaces in Character Animation Tony DeRose - Michael Kass - Tien Truong - Pixar Animation Studios - Pierce Groover March 4 th , 2003

Post on 20-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Subdivision Surfaces in Character AnimationTony DeRose - Michael Kass -

Tien Truong- Pixar Animation Studios -

Pierce Groover

March 4th, 2003

Agenda•Background of subdivision

surfaces•Reasons for use•Methods and implementation•Pixar developments•Conclusion and Geri’s Game

Background

•NURBS (Nonuniform

Rational B-Splines)

•Easy and Available

Background•Problems

– Trimming NURBS is expensive and can have numerical errors

– When used in animation, very hard to hide seams

•These problems can be fixed with Subdivision

Background•Subdivision

–No Trimming–Connectivity and smoothness guaranteed•No hacks needed

•Did not have development like NURBS

•Pixar needed to develop tools–Semi-sharp creases

•Based on infinitely sharp creases (Hoppe)

–Physical simulation (ie: clothing)–Collision detection–Texture mapping

Background

Background•But First…

–What is Subdivision?

Subdivision•Construct a

surface from an arbitrary polyhedron– Subdivide each face

of the polyhedron

•The limit will be a smooth surface

Subdivision•How to subdivide a

face?–Divide each edge in half–Average the centroids of each adjacent edge

–Reconnect the two edges with the new vertex

•Three main methods–Catmull-Clark (quadrilaterals)

–Loop’s method (triangles)–Butterfly method (triangles)

Subdivision

•Chose Catmull-Clark–Generalize B-Splines

•Easier to implement with existing software

–Quadrilaterals are better at describing human body parts•Tube-like arms, legs, fingers, etc…

Subdivision

Subdivision – Catmull-Clark

• Same as methods as in 2-D– Start with control mesh

•Split all faces into quadrilaterals

– Apply subdivision rules– Limit surface is

tangent plane smooth no matter where the control vertices are placed

Subdivision

Pixar Developments•Semi-sharp creases•Physical simulation •Efficient collision detection•Texture mapping

•Pioneered by Hoppe–Very useful

•Simply mark a subset of the edges as “sharp” and apply a different set of governing rules

•Easy to model

Sharp Creases

•But…–Real world objects cannot have infinitely sharp creases

–Sometimes necessary to have tightly curved edges

–So…..

Sharp Creases

•Pixar developed a generalization (semi-sharp)–Controllable sharpness–Sharpness (s) = 0, smooth

–Sharpness (s) = inf, sharp–Achievable through hybrid subdivision

Semi-Sharp Creases

Semi-Sharp Creases

Semi-Sharp Creases

•Model kinematic/dynamic objects–Specifically, but not limited to, clothing

•Must define an “energy functional”–Finite difference approach–Use springs to model clothing

Physical Simulation

•Model kinematic/dynamic objects–Specifically, but not limited to, clothing

•Must define an “energy functional”–Finite difference approach–Use springs to model clothing

Physical Simulation

•Simple solution–Test each geometric element against all others

–Not practical (N2 = Bad)

•Use 2-d or 3-d structure to represent objects–They used 2-d

•Hierarchy fixed, storage is static, never need rebalance

Collision Detection

•Done mostly in preprocessing•Hierarchy is made from bottom up

–Start at leaves with control mesh–Get more detailed as move up–Root is final surface

•Only need update control vertices positions

Collision Detection

•Solid color painting is easy, already defined

•Texturing is not so easy–Using polygonal methods can result in distortion

Texture mapping

•Treat texture coordinates in same way as geometric coordinates and use subdivision

•These are scalar fields–Used in Geri’s jacket, ears, nostrils

•Procedural shaders use scalar values to determine colors

Texture mapping

•Scalar values are determined by using interpolation at control points using Laplacian smoothing

•Sometimes even done manually

Texture mapping

Conclusion•Subdivision > NURBS

–More control, accuracy

•Pixar = sweet–Developments make subdivision surfaces very practical and useful

–Now part of Renderman

•First definitive work with subdivision

•Crazy old man playing chess against himself

•Enjoy!

• http://www.pixar.com/shorts/gg/theater/short_320.html

Geri’s game

•Pictures and references from:– http://www.subdivision.org– http://www.3dgraphicsoutpost.com/

subdivisionsurfacesintro.htm– http://www.cs.princeton.edu/courses/

archive/fall02/cs526/lectures/subdivision.pdf

– http://www.pixar.com/– http://www.scg.uwaterloo.ca/~hqle/

subdivision/images/Loop/Loop1.html

Thank You