190 likes | 465 Views
Subdivision Surfaces. Introduction to Computer Graphics CSE 470/598 Arizona State University. Dianne Hansford. Overview. What are subdivision surfaces in a nutshell ? Advantages Chaiken’s algorithm The curves that started it all Classic methods Doo-Sabin and Catmull-Clark
E N D
Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford
Overview • What are subdivision surfaces in a nutshell ? • Advantages • Chaiken’s algorithm The curves that started it all • Classic methods Doo-Sabin and Catmull-Clark • Extensions on the concept
What is subdivision? http://www.multires.caltech.edu/teaching/demos/java/chaikin.htm
Advantages • 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.)
Disadvantages • 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 ’74An algorithm for high speed curve generation a corner cutting method on each edge: ratios 1:3 and 3:1
Chaiken’s Algorithm Riesenfeld (Utah) ’75Realized 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 of subdivision Doo-Sabin Input: polyhedral mesh many levels of subdivision
Doo-Sabin ‘78 Generalization of Chaiken’s ideato 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 subdivision Input: polyhedral mesh many-levels of subdivision
Catmull-Clark ‘78 Generalization of Chaiken’s idea to bicubic B-spline surfaces Input: Polyhedral mesh Algorithm: • Form F-vertices: centroid of face’s vertices • Form E-points: combo of edge vertices and F-points • Form V-points: average of edge midpoints • 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 = 42) 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.... interpolation(butterfly scheme) more control (notice sharp edges) See NYU reference for variety of schemes Pixar: tailored for animation
References • Ken Joy’s class noteshttp://graphics.cs.ucdavis.edu • Gerald Farin & DCHThe Essentials of CAGD, AK Petershttp://eros.cagd.eas.asu.edu/~farin/essbook/essbook.html • Joe Warren & Heinrik Weimer www.subdivision.org • NYU Media Labhttp://www.mrl.nyu.edu/projects/subdivision/ • CGW articlehttp://cgw.pennnet.com/Articles/Article_Display.cfm?Section=Articles&Subsection=Display&ARTICLE_ID=196304