Subdivision Surfaces 고려대학교 컴퓨터 그래픽스 연구실 cgvr.korea.ac.kr.

Slides:



Advertisements
Similar presentations
Planar Subdivision Induced by planar embedding of a graph. Connected if the underlying graph is. edge vertex hole in f face f disconnected subdivision.
Advertisements

COMP 175 | COMPUTER GRAPHICS Remco Chang1/6103b – Shapes Lecture 03b: Shapes COMP 175: Computer Graphics February 3, 2015.
Bicubic G1 interpolation of arbitrary quad meshes using a 4-split
Discrete Differential Geometry Planar Curves 2D/3D Shape Manipulation, 3D Printing March 13, 2013 Slides from Olga Sorkine, Eitan Grinspun.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 14: Review / Subdivision Ravi Ramamoorthi Slides courtesy.
Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 10 Ravi Ramamoorthi
Classic Subdivision Schemes. Schemes Catmull-Clark (1978) Doo-Sabin (1978) Loop (1987) Butterfly (1990) Kobbelt (1996) Mid-edge (1996 / 1997)
On Triangle/Quad Subdivision Scott Schaefer and Joe Warren TOG 22(1) 28 – 36, 2005 Reporter: Chen zhonggui
Subdivision Curves & Surfaces and Fractal Mountains. CS184 – Spring 2011.
Graphics Graphics Korea University cgvr.korea.ac.kr 3D Object Representation 고려대학교 컴퓨터 그래픽스 연구실.
CS Peter Schröder Subdivision I: The Basic Ideas.

Fractal Mountains, Splines, and Subdivision Surfaces Jordan Smith UC Berkeley CS184.
Subdivision Surfaces in Character Animation Tony DeRose - Michael Kass - Tien Truong - Pixar Animation Studios - Pierce Groover March 4 th, 2003.
Polygonal Mesh – Data Structure and Smoothing
Visualization and graphics research group CIPIC January 30, 2003Multiresolution (ECS 289L) - Winter MAPS – Multiresolution Adaptive Parameterization.
Normal based subdivision scheme for curve and surface design 杨勋年
Content Subdivision First some basics (control point polygon, mesh)
Polygonal Meshes 3D Object Representation -Tyler Abrams.
1 Subdivision Surfaces CAGD Ofir Weber. 2 Spline Surfaces Why use them?  Smooth  Good for modeling - easy to control  Compact (complex objects are.
Subdivision Overview Subdivision is a two part process Control Mesh
Subdivision Primer CS426, 2000 Robert Osada [DeRose 2000]
11/08/00 Dinesh Manocha, COMP258 Subdivision Curves & Surfaces Work of G. de Rham on Corner Cutting in 40’s and 50’s Work of Catmull/Clark and Doo/Sabin.
Scott Schaefer Joe Warren A Factored, Interpolatory Subdivision for Surfaces of Revolution Rice University.
Introduction to Subdivision Surfaces. Subdivision Curves and Surfaces 4 Subdivision curves –The basic concepts of subdivision. 4 Subdivision surfaces.
11/30/04© University of Wisconsin, CS559 Fall 2004 Last Time More modeling: –Hierarchical modeling –Instancing and Parametric Instancing –Constructive.
Ziting (Vivien) Zhou1 Drawing Graphs By Computer Graph from
Subdivision surfaces Construction and analysis Martin Reimers CMA/IFI, University of Oslo September 24th 2004.
Compressing Multiresolution Triangle Meshes Emanuele Danovaro, Leila De Floriani, Paola Magillo, Enrico Puppo Department of Computer and Information Sciences.
Subdivision/Refinement Dr. S.M. Malaek Assistant: M. Younesi.
C O M P U T E R G R A P H I C S Stuff Jian Chen January 15, 2010 Transformations 1/10 Describing Shape By Andries van Dam.
3D Object Representations 2005, Fall. Course Syllabus Image Processing Modeling Rendering Animation.
Graphics Graphics Korea University cgvr.korea.ac.kr Creating Virtual World I 김 창 헌 Department of Computer Science Korea University
4/15/04© University of Wisconsin, CS559 Spring 2004 Last Time More modeling: –Hierarchical modeling –Instancing and Parametric Instancing –Constructive.
Graphics Graphics Korea University cgvr.korea.ac.kr Solid Modeling 고려대학교 컴퓨터 그래픽스 연구실.
Mesh Data Structure. Meshes Boundary edge: adjacent to 1 face Regular edge: adjacent to 2 faces Singular edge: adjacent to >2 faces Mesh: straight-line.
1 Manifolds from meshes Cindy Grimm and John Hughes, “Modeling Surfaces of Arbitrary Topology using Manifolds”, Siggraph ’95 J. Cotrina Navau and N. Pla.
Planar Subdivision Induced by planar embedding of a graph. Connected if the underlying graph is. edge vertex disconnected subdivision Complexity = #vertices.
Subdivision Schemes Basic idea: Start with something coarse, and refine it into smaller pieces for rendering –We have seen how subdivision may be used.
Non-Uniform Rational B-Splines NURBS. NURBS Surfaces NURBS surfaces are based on curves. The main advantage of using NURBS surfaces over polygons, is.
Solid Modeling Ref. Mantyla. Introduction Aim of modeling: The search of a media of communication.
CSE554ContouringSlide 1 CSE 554 Lecture 4: Contouring Fall 2015.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Surface Rendering Methods 고려대학교 컴퓨터 그래픽스 연구실.
Vertices, Edges and Faces By Jordan Diamond. Vertices In geometry, a vertices is a special kind of point which describes the corners or intersections.
Automatic Construction of Quad-Based Subdivision Surfaces using Fitmaps Daniele Panozzo, Enrico Puppo DISI - University of Genova, Italy Marco Tarini DICOM.
Lee Byung-Gook Dongseo Univ.
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Subdivision Surfaces Greg Humphreys University of Virginia CS 445, Fall 2003.
Subdivision Surfaces Dr. Scott Schaefer.
1/57 CS148: Introduction to Computer Graphics and Imaging Geometric Modeling CS148 Lecture 6.
University of Texas at Austin CS384G - Computer Graphics Fall 2008 Don Fussell Subdivision surfaces.
Graphics Graphics Korea University cgvr.korea.ac.kr Mathematics for Computer Graphics 고려대학교 컴퓨터 그래픽스 연구실.
CS559: Computer Graphics Lecture 33: Shape Modeling Li Zhang Spring 2008.
Solid Modeling Dr. Scott Schaefer.
Subdivision Schemes. Center for Graphics and Geometric Computing, Technion What is Subdivision?  Subdivision is a process in which a poly-line/mesh is.
CENG 789 – Digital Geometry Processing 04- Mesh Data Structures
Constructing Objects in Computer Graphics
Advanced Computer Graphics
Advanced Computer Graphics
Daniil Rodin for CAGD course, 2016
Smooth Surfaces Dr. Scott Schaefer.
Constructing Objects in Computer Graphics By Andries van Dam©
The Variety of Subdivision Schemes
Subdivision and Simplification
Patch-based Tessellation for Dual Subdivision on GPU
(c) University of Wisconsin
Multiresolution Meshes for 3-D Object Description
Jeff Ballard Nick Rasmussen
3D Object Representation
Jeff Ballard Nick Rasmussen
Last Time B-splines Project 3 was made available
Presentation transcript:

Subdivision Surfaces 고려대학교 컴퓨터 그래픽스 연구실 cgvr.korea.ac.kr

Subdivision How do You Make a Smooth Curve? cgvr.korea.ac.kr

Subdivision Surfaces Coarse Mesh & Subdivision Rule Define smooth surface as limit of sequence of refinements cgvr.korea.ac.kr

Key Questions How Refine Mesh? How Store Mesh? Aim for properties like smoothness How Store Mesh? Aim for efficiency for implementing subdivision rules cgvr.korea.ac.kr

Loop Subdivision Scheme How Refine Mesh? Refine each triangle into 4 triangles by splitting each edge and connecting new vertices cgvr.korea.ac.kr

Loop Subdivision Scheme How Position New Vertices? Choose locations for new vertices as weighted average of original vertices in local neighborhood cgvr.korea.ac.kr

Loop Subdivision Scheme Different Rules for Boundaries: cgvr.korea.ac.kr

Loop Subdivision Scheme Limit Surface Has Provable Smoothness Properties cgvr.korea.ac.kr

Subdivision Schemes There are different subdivision schemes Different methods for refining topology Different rules for positioning vertices Interpolating versus approximating Face Split Vertex Split Triangular Meshes Quad. Meshes Doo-Sabin, Midege (C1) Approximating Loop (C2) Catmull-Clark (C2) Biquartic (C2) Interpolating Mod. Butterfly (C1) Kobbelt (C1) cgvr.korea.ac.kr

Subdivision Schemes Loop Butterfly Catmull-Clark Doo-Sabin cgvr.korea.ac.kr

Subdivision Schemes Loop Butterfly Catmull-Clark Doo-Sabin cgvr.korea.ac.kr

Key Questions How Refine Mesh? How Store Mesh? Aim for properties like smoothness How Store Mesh? Aim for efficiency for implementing subdivision rules cgvr.korea.ac.kr

Polygon Meshes Mesh Representations Independent faces Vertex and face tables Adjacency lists Winged-Edge cgvr.korea.ac.kr

Independent Faces Each Face Lists Vertex Coordinates Redundant vertices No topology information (x4, y4, z4) (x3, y3, z3) F2 F3 F1 (x5, y5, z5) (x2, y2, z2) (x1, y1, z1) Face Table F1 F2 F3 (x1, y1, z1) (x2, y2, z2) (x3, y3, z3) (x2, y2, z2) (x4, y4, z4) (x3, y3, z3) (x2, y2, z2) (x5, y5, z5) (x4, y4, z4) cgvr.korea.ac.kr

Vertex & Face Tables Each Face Lists Vertex References Shared vertices Still no topology information (x4, y4, z4) (x3, y3, z3) F2 F3 F1 (x5, y5, z5) (x2, y2, z2) (x1, y1, z1) Vertex Table Face Table V1 V2 V3 V4 V5 x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4 x5 y5 z5 F1 F2 F3 V1 V2 V3 V2 V4 V3 V2 V5 V4 cgvr.korea.ac.kr

Adjacency Lists Store all Vertex, Edge, and Face Adjacencies Efficient topology traversal Extra storage V2 V4 V3 V2 V3 E5 E4 E3 E1 E4 E2 E5 E6 V4 E4 V3 F3 F1 F1 F2 F2 E7 E3 E1 E5 F3 F1 V5 V2 E6 V1 E2 V5 V4 V3 V1 E6 E5 E3 E2 F3 F2 F1 cgvr.korea.ac.kr

Winged Edge Adjacency Encoded in Edges All adjacencies in O(1) time Little extra storage (fixed records) Arbitrary polygons {Fi} {Vi} {Ei} 1 2 4 v1 v2 f1 f2 e21 e22 e11 e12 cgvr.korea.ac.kr

Winged Edge Example (x4, y4, z4) (x3, y3, z3) F2 F3 F1 (x5, y5, z5) Vertex Table Edge Table Face Table 11 12 21 22 V1 V2 V3 x1, y1, z1 x2, y2, z2 x3, y3, z3 x4, y4, z4 x5, y5, z5 E1 E6 E3 E5 E1 E2 E3 E4 E5 E6 E7 V1 V3 V1 V2 V2 V3 V3 V4 V2 V4 V2 V5 V4 V5 E2 E2 E4 E3 E1 E1 E3 E6 E2 E5 E1 E4 E1 E3 E7 E5 E3 E6 E4 E7 E5 E2 E7 E7 E4 E5 E6 E6 F1 F2 F3 e1 e3 e5 cgvr.korea.ac.kr

Summary Advantages: Difficulties: Simple method for describing complex surfaces Relatively easy to implement Arbitrary topology Smoothness guarantees Multiresolution Difficulties: Intuitive specification Parameterization Intersections cgvr.korea.ac.kr