subdivision surfaces - fabio pellacinipellacini.di.uniroma1.it/.../10_subdivisionsurfaces... ·...

of 26 /26
computer graphics • subdivision surfaces © 2006 fabio pellacini • 1 subdivision surfaces

Author: others

Post on 18-Jul-2020

1 views

Category:

Documents


0 download

Embed Size (px)

TRANSCRIPT

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 1

    subdivision surfaces

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 2

    subdivision curves

    • start with a piecewise linear curve• apply recursively subdivision rule

    [Zorin and Schröder,2000]

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 3

    subdivision surfaces

    • start with polygon mesh• apply recursively subdivision rule

    [Zor

    inan

    d Sc

    hröd

    er,2

    000]

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 4

    subdivision surfaces

    • subdiv.: limit surface of subdivision process– provably smooth surface! (i.e. continuous function)– subdiv. process: input is mesh, output is refined mesh

    – limit surface)(1 ii f MM =+

    iiMS

    ∞→= lim

    [DeRose et al.,1998]

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 5

    subdivision schemes

    • two stages• mesh subdivision new topology

    – create new vertices and faces

    • vertex placement new geometry– compute vertex position

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 6

    subdivision schemes

    • different schemes available– depend on input/output topology and geometry

    • quadrilaterals input: – Catmull-Clark

    • triangles input: – Loop

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 7

    loop subdivision scheme

    • new topology: new faces– split each triangle in 4 triangles

    [Zor

    inan

    d Sc

    hröd

    er,2

    000]

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 8

    loop subdivision scheme

    • new geometry: new vertex positions– need rules for even/odd (white/black) vertices

    [Zor

    inan

    d Sc

    hröd

    er,2

    000]

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 9

    loop subdivision rules

    • new vertex pos: weighted average of neighbors

    [Zor

    inan

    d Sc

    hröd

    er,2

    000]

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 10

    boundaries and creases

    • rules on boundaries– only consider vertices along the boundary

    • creases: mark edges sharp– only consider vertices along a crease

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 11

    extraordinary vertices

    • vertices with non-standard num. of neighbors– unavoidable for complex topology– make subdivision ideal for this case

    [Zor

    inan

    d Sc

    hröd

    er,2

    000]

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 12

    loop subdivision rules

    [Zor

    inan

    d Sc

    hröd

    er,2

    000]

    ⎟⎟⎠

    ⎞⎜⎜⎝

    ⎛⎟⎠⎞

    ⎜⎝⎛ +−=

    22cos41

    83

    851

    nnπβ

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 13

    Catmull-Clark subdivision rules

    [Zor

    inan

    d Sc

    hröd

    er,2

    000]

    kk 4/1;2/3 == γβ

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 14

    determining subdivision rules

    • how to determine subdivision rule?– analyze property of limit surface– goal: smoothness

    • limit surface has provable smoothness!– C1 at extraordinary points– C2 everywhere else

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 15

    subdivision schemes comparison

    [Zorin and Schröder,2000]

    Loop Catmull-Clark

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 16

    subdivision schemes comparison

    [Zorin and Schröder,2000]

    Loop Catmull-Clark

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 17

    subdivision schemes comparison

    [Zorin and Schröder,2000]

    Loop Catmull-ClarkControl Mesh

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 18

    subdivision schemes comparison

    [Zorin and Schröder,2000]

    Loop Catmull-Clark

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 19

    subdivision surface manipulation

    • manipulate original mesh, while displaying subdiv

    [Zor

    inan

    d Sc

    hröd

    er,2

    000]

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 20

    subdivision surface manipulation

    • manipulate original mesh, while displaying subdiv

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 21

    subdivision surface manipulation

    • add crease for sharp features– on edges

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 22

    subdivision surface manipulation

    • add crease for sharp features– on vertices

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 23

    subdivision surface manipulation

    • add crease for sharp features– on edges and vertices

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 24

    subdivision surfaces

    • heavily used in Computer Graphics– old algorithms but practicalities introduced recently– works well with animation

    • arbitrary topology, no stitching

    – Pixar’s Geri’s Game 1998• Catmull-Clark subdiv• complex control mesh• heavy use of creases

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 25

    surface representation comparison

  • computer graphics • subdivision surfaces © 2006 fabio pellacini • 26

    representation comparison

    polygonmeshes

    implicitsurfaces

    parametricsurfaces

    subdivisionsurfaces

    accurate no yes yes yes

    concise no yes yes yes

    intuitive specification no no yes no

    local support yes no yes yes

    affine invariant yes yes yes yes

    arbitrary topology yes no no yes

    guaranteed continuity no yes yes yes

    parameterization no no yes no

    efficient display yes no yes yes

    efficient intersection no yes no no

    [based on Finkelstein 2004]

    subdivision surfacessubdivision curvessubdivision surfacessubdivision surfacessubdivision schemessubdivision schemesloop subdivision schemeloop subdivision schemeloop subdivision rulesboundaries and creasesextraordinary verticesloop subdivision rulesCatmull-Clark subdivision rulesdetermining subdivision rulessubdivision schemes comparisonsubdivision schemes comparisonsubdivision schemes comparisonsubdivision schemes comparisonsubdivision surface manipulationsubdivision surface manipulationsubdivision surface manipulationsubdivision surface manipulationsubdivision surface manipulationsubdivision surfacessurface representation comparisonrepresentation comparison