Subdivision Surfaces - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

Subdivision Surfaces

Description:

Use vertex normal information to help 'guess' about neighboring polygons. ... Progressive Geometry Compression. Andrei Khodakovsky, Peter Schr der and Wim Sweldens ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 35
Provided by: natha7
Category:

less

Transcript and Presenter's Notes

Title: Subdivision Surfaces


1
Subdivision Surfaces
CS 230
2
Introduction
  • 3D Subdivision example

3
Introduction
Geris Game (1998) Pixar Animation Studios
4
Goals of Subdivision Surfaces
Introduction
  • How do we represent curved surfaces in the
    computer?
  • Efficiency of Representation
  • Continuity
  • Affine Invariance
  • Efficiency of Rendering
  • Why use subdivision rather than Bezier patches?

vs
5
Introduction
  • Create Curve Surface through an Iterative
    Refinement Process.

6
Introduction Chaikens Algorithm
7
Surface evolution
Surface evolution with subdivision level
Limit surface
8
Types of Subdivision
  • Interpolating Schemes
  • Limit Surfaces/Curve will pass through original
    set of data points.
  • Approximating Schemes
  • Limit Surface will not necessarily pass through
    the original set of data points.

9
Types of Subdivision
  • Approximation Schemes
  • Catmull-Clark Subdivision
  • Doo-Sabin Subdivision
  • Loop Subdivision

10
Ordinary and Extraordinary
Catmull-Clark Subdivision Valence 4
Loop Subdivision Valence 6
  • Subdividing a mesh does not add extraordinary
    vertices.
  • Subdividing a mesh does not remove extraordinary
    vertices.
  • How should extraordinary vertices be handled?
  • Make up rules for extraordinary vertices that
    keep the surface smooth.

11
Catmull-Clark Subdivision
12
Catmull-Clark Subdivision
13
Modeling with Catmull-Clark
  • Subdivision produces smooth continuous surfaces.
  • How can sharpness and creases be controlled in
    a modeling environment?
  • ANSWER Define new subdivision rules for
    creased edges and vertices.
  • Tag Edges sharp edges.
  • If an edge is sharp, apply new sharp subdivision
    rules.
  • Otherwise subdivide with normal rules.

14
Doo-Sabin Subdivision
15
Doo-Sabin Subdivision
16
Loop Subdivision
  • Works on triangular meshes
  • Guaranteed to be smooth everywhere except at
    extraordinary vertices.

17
Loop Subdivision
18
Subdivision Boundaries
  • Subdivision for Boundary Conditions

19
Loop Subdivision
20
Comparison
Catmull- Clark Doo- Sabin Loop
21
Subdivision in a production environment.
  • Traditionally spline patches (NURBS) have been
    used in production for character animation.
  • Difficult to control spline patch density in
    character modelling.

Subdivision in Character Animation Tony Derose,
Michael Kass, Tien Troung (SIGGRAPH 98)
(Geris Game, Pixar 1998)
22
Sharp Edges
  • Tag Edges as sharp or not-sharp
  • n 0 not sharp
  • n gt 0 sharp
  • During Subdivision,
  • if an edge is sharp, use sharp subdivision
    rules. Newly created edges, are assigned a
    sharpness of n-1.
  • If an edge is not-sharp, use normal smooth
    subdivision rules.

IDEA Edges with a sharpness of n do not get
subdivided smoothly for n iterations of the
algorithm.
23
Other Subdivision Schemes
  • Complex data structures required to perform
    subdivision.
  • Every polygon ( triangle, quad, ..) must know its
    neighbors
  • Every vertex must know its neighbors
  • Can we do something simpler?
  • Use vertex normal information to help guess
    about neighboring polygons.
  • Subdivide based on the normals.

subdivision
24
PN Triangles
  • Interpolating Scheme.
  • Geom Normal

25
Local Subdivision (PN triangles)
26
Local Subdivision (PN triangles)
  • Defined from triangular bezier patches.

Curved PN Triangles Alex Vlachos Joerg
Peters Chas Boyd Jason Mitchel
27
Local Subdivision (PN triangles)
28
Subdivision
  • Advantages
  • Easy to implement
  • No complex data structures
  • Easy to integrate into existing graphics
    applications
  • Hardware amenable
  • ATI Radeon 8500
  • Looks good
  • Disadvantages
  • No guarantees on higher level continuity.
  • Is limited in the amount of curvature it can
    provide.
  • In some sense it is a hack and not as correct.

29
Adaptive Subdivision
  • Not all regions of a model need to be subdivided.
  • Idea Use some criteria and adaptively subdivide
    mesh where needed.
  • Curvature
  • Screen size ( make triangles lt size of pixel )
  • View dependence
  • Distance from viewer
  • Silhouettes
  • In view frustum
  • Careful! Must ensure that cracks arent made

crack
subdivide
View-dependent refinement of progressive meshes
Hugues Hoppe. (SIGGRAPH 87)
30
Subdivision Surfaces for Compression
?
(Refinement)-1
Progressive Geometry Compression Andrei
Khodakovsky, Peter Schröder and Wim Sweldens
(SIGGRAPH 2000)
31
Meshing from Particle Systems
  • Witkin Heckbert Siggraph 94
  • Constrain particle system to implicit surface
    (Implicit surface f 0 becomes constraint
    surface C 0)
  • Particles exert repulsion forces onto each other
    to spread out across surface
  • Particles subdivide to fill open gaps
  • Particles commit suicide if overcrowded
  • Display particle as oriented disk
  • Constrain implicit surface to particles!

32
Meshing Particles
  • Stander Hart Siggraph 97
  • Use particles as vertices
  • Connect vertices into mesh
  • Track/find critical points
  • of function to detect changes
  • in topology of implicit surface

33
Shrinkwrapping
  • Look at family of surfaces f -1(s) for s gt 0
  • For s large, f -1(s) spherical
  • Polygonize sphere
  • Reduce s to zero
  • Vertices to track surface
  • Subdivide polygons as
  • necessary when curvature
  • increases

34
Conclusions and Future Work
  • Currently there is no standard data structure for
    handling general Subdivision Surface schemes
  • Hardware (GPU) implementations do not exist
  • Subdivision of higher dimensional surfaces
Write a Comment
User Comments (0)
About PowerShow.com