Download Presentation
## Subdivision Surfaces

- - - - - - - - - - - - - - - - - - - - - - - - - - - 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