Top Banner
Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford
18

Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Dec 18, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Subdivision Surfaces

Introduction to Computer Graphics

CSE 470/598Arizona State University

Dianne Hansford

Page 2: 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

Page 3: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

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

Page 4: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Advantages

• Easy to make complex geometry

• Rendering very efficient

• Animation tools “easily” developed

Pixar’s A Bug’s Life first feature film to usesubdivision surfaces.(Toy Story used NURBS.)

Page 5: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Disadvantages

• Precision difficult to specify in general

• Analysis of smoothness very difficult to determine for a new method

• No underlying parametrizationEvaluation at a particular point difficult

Page 6: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Chaiken’s AlgorithmChaiken published in ’74

An algorithm for high speed curve generation

a corner cutting method on each edge: ratios 1:3 and 3:1

Page 7: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

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 schemesDoo-SabinCatmull-Clark

Page 8: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Doo-Sabin

Input: polyhedral mesh

one-levelofsubdivision

many levelsofsubdivision

Page 9: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

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

Input: Polyhedral meshAlgorithm: 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

Page 10: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

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

Page 11: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Catmull-Clark

Input: polyhedral mesh

one-levelofsubdivision

many-levelsof subdivision

Page 12: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Catmull-Clark ‘78

Input: Polyhedral meshAlgorithm:1) Form F-vertices: centroid

of face’s vertices2) 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

Generalization of Chaiken’s idea to bicubic B-spline surfaces

Page 13: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

CC - Extraordinary

Valence not = 41) Input mesh had valence not = 42) Face with n>4 sides

Creates extraordinary vertex (in limit)(Remember: smoothness less there)

Page 14: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

Let’s compare D-S

C-C

Page 15: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

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

Page 16: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

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!

Page 17: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

ExtensionsMany schemes have been developed since....

more control (notice sharp edges)

See NYU reference for variety of schemes

interpolation(butterfly scheme)

Pixar: tailored for animation

Page 18: Subdivision Surfaces Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford.

References• Ken Joy’s class notes

http://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