Document Sample

```					Subdivision Surfaces
Introduction to Computer
Graphics
CSE 470/598
Arizona State University

Dianne Hansford
Overview
• What are subdivision surfaces in a nutshell ?
• Chaiken’s algorithm
The curves that started it all
• Classic methods
Doo-Sabin and Catmull-Clark
• Extensions on the concept
What is subdivision?
Input:        polygon or
polyhedral mesh

Process:      repeatedly refine
(subdivide) geometry

Output:       “smooth” curve
or surface

http://www.multires.caltech.edu/teaching/demos/java/chaikin.htm
• Easy to make
complex geometry
• Rendering very
efficient
• Animation tools
“easily” developed
Pixar’s A Bug’s Life
first feature film to use
subdivision surfaces.
(Toy Story used NURBS.)
• Precision difficult to specify in general
• Analysis of smoothness very difficult to
determine for a new method
• No underlying parametrization
Evaluation at a particular point difficult
Chaiken’s Algorithm
Chaiken published in ’74
An algorithm for high speed curve generation

a corner cutting method    on each edge: ratios 1:3 and 3:1
Chaiken’s Algorithm
Riesenfeld (Utah) ’75
Realized Chaiken’s algorithm an evaluation method
for quadratic B-spline curves (parametric curves)

Theoretical foundation sparked more interest in idea.

Subdivision surface schemes
Doo-Sabin
Catmull-Clark
one-level
Doo-Sabin               of
subdivision

Input: polyhedral mesh

many levels
of
subdivision
Doo-Sabin ‘78
Generalization of Chaiken’s idea to biquadratic B-spline surfaces

Input: Polyhedral mesh
Algorithm:
1) Form points within each face
2) Connect points to form new faces:
F-faces, E-faces, V-faces
Repeat ...
Output: polyhedral mesh;
mostly 4-sided faces
except some F- & V-faces;
valence = 4 everywhere
Doo-Sabin
Repeatedly subdivide ... Math analysis will say that a
subdivision scheme’s smoothness tends to be the same
everywhere but at isolated points.

extraordinary points

Doo-Sabin: non-four-sided patches become
extraordinary points
Catmull-Clark            one-level
of
Input: polyhedral mesh   subdivision

many-levels
of
subdivision
Catmull-Clark ‘78 surfaces
Generalization of Chaiken’s idea to bicubic B-spline

Input: Polyhedral mesh
Algorithm:
1) Form F-vertices: centroid
of face’s vertices
2) Form E-points: combo of
edge vertices and F-points
3) Form V-points: average of
edge midpoints
4) Form new faces (F-E-V-E)
Repeat....
Output: mesh with all 4-sided
faces but valence not = 4
CC - Extraordinary
Valence not = 4
1) Input mesh had valence not = 4
2) Face with n>4 sides

Creates extraordinary vertex (in limit)
(Remember: smoothness less there)
Let’s compare
D-S

C-C
Convex Combos
Note: D-S & C-C use convex combinations !
(Weighting of each point in [0,1])

Guarantees the following properties:
 new points in convex hull of old
 local control
 affinely invariant

(All schemes use barycentric combinations)

See references at end for exact equations
Data Structures
 Each scheme demands a slightly different
structure to be most efficient

 Basic structure for mesh must exist plus more
info

 Schemes tend to have bias – faces, vertices,
edges .... as foundation of method

 Lots of room for creativity!
Extensions
Many schemes have been developed since....

more control (notice sharp edges)              interpolation
(butterfly scheme)

See NYU reference for variety of schemes   Pixar: tailored for animation
References
•   Ken Joy’s class notes
http://graphics.cs.ucdavis.edu

•   Gerald Farin & DCH
The Essentials of CAGD, AK Peters
http://eros.cagd.eas.asu.edu/~farin/essbook/essbook.html

•   Joe Warren & Heinrik Weimer
www.subdivision.org

•   NYU Media Lab
http://www.mrl.nyu.edu/projects/subdivision/

•   CGW article
http://cgw.pennnet.com/Articles/Article_Display.cfm?Section=Articles&Subsection=Display&
ARTICLE_ID=196304

```
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
 views: 11 posted: 9/14/2012 language: English pages: 18