3D Modeling techniques

Similar documents
Physically-Based Modeling and Animation. University of Missouri at Columbia

Shape modeling Modeling technique Shape representation! 3D Graphics Modeling Techniques

Curves and Surfaces 2

3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013

3D Modeling Parametric Curves & Surfaces

Subdivision Surfaces

Subdivision Surfaces

Introduction to the Mathematical Concepts of CATIA V5

Subdivision Surfaces. Homework 1: Last Time? Today. Bilinear Patch. Tensor Product. Spline Surfaces / Patches

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple

Subdivision curves and surfaces. Brian Curless CSE 557 Fall 2015

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018

Free-Form Deformation and Other Deformation Techniques

Subdivision Curves and Surfaces

Subdivision Surfaces

Surface and Solid Geometry. 3D Polygons

Geometric Modeling. Bing-Yu Chen National Taiwan University The University of Tokyo

Subdivision Surfaces. Homework 1: Questions on Homework? Last Time? Today. Tensor Product. What s an illegal edge collapse?

Images from 3D Creative Magazine. 3D Modelling Systems

Subdivision Surfaces. Homework 1: Questions/Comments?

Spline Surfaces, Subdivision Surfaces

CS354 Computer Graphics Surface Representation III. Qixing Huang March 5th 2018

3D Object Representation. Michael Kazhdan ( /657)

Object representation

Subdivision overview

Subdivision Curves and Surfaces: An Introduction

Curve Corner Cutting

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D

B-spline Curves. Smoother than other curve forms

Chapter 4-3D Modeling

Curves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification

Geometric Modeling Systems

MODELING AND HIERARCHY

Overview of 3D Object Representations

Computer Graphics 1. Chapter 2 (May 19th, 2011, 2-4pm): 3D Modeling. LMU München Medieninformatik Andreas Butz Computergraphik 1 SS2011

Computergrafik. Matthias Zwicker. Herbst 2010

Introduction to Geometry. Computer Graphics CMU /15-662

3D Modeling I. CG08b Lior Shapira Lecture 8. Based on: Thomas Funkhouser,Princeton University. Thomas Funkhouser 2000

Shape Modeling with Point-Sampled Geometry

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming

CHAPTER 1 Graphics Systems and Models 3

Subdivision Surfaces. Course Syllabus. Course Syllabus. Modeling. Equivalence of Representations. 3D Object Representations

Curves and Surfaces Computer Graphics I Lecture 10

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Subdivision surfaces. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

1. Introduction. 2. Parametrization of General CCSSs. 3. One-Piece through Interpolation. 4. One-Piece through Boolean Operations

Reading. Parametric surfaces. Surfaces of revolution. Mathematical surface representations. Required:

GL9: Engineering Communications. GL9: CAD techniques. Curves Surfaces Solids Techniques

Modeling 3D Objects: Part 2

Curves & Surfaces. MIT EECS 6.837, Durand and Cutler

Information Coding / Computer Graphics, ISY, LiTH. Splines

Advanced Computer Graphics

Surface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural

Design by Subdivision

Recursive Subdivision Surfaces for Geometric Modeling

Overview of 3D Object Representations

INF3320 Computer Graphics and Discrete Geometry

Sculpting 3D Models. Glossary

Implicit Surfaces & Solid Representations COS 426

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

Fall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li.

CS-184: Computer Graphics. Today

ERC Expressive Seminar

Chapter 9 3D Modeling

Geometric Modeling and Processing

CS 352: Computer Graphics. Hierarchical Graphics, Modeling, And Animation

Introduction to Computer Graphics

CS-184: Computer Graphics

Approximate Catmull-Clark Patches. Scott Schaefer Charles Loop

Mathematical Tools in Computer Graphics with C# Implementations Table of Contents

Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include

Character Modeling COPYRIGHTED MATERIAL

Free-form deformation (FFD)

Advanced Geometric Modeling CPSC789

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

G 2 Interpolation for Polar Surfaces

Honeycomb Subdivision

Local Modification of Subdivision Surfaces Based on Curved Mesh

Solid Modeling. Ron Goldman Department of Computer Science Rice University

2D Spline Curves. CS 4620 Lecture 13

3D Modeling: Surfaces

INSTRUCTIONAL PLAN L( 3 ) T ( ) P ( ) Instruction Plan Details: DELHI COLLEGE OF TECHNOLOGY & MANAGEMENT(DCTM), PALWAL

CHARMS: A Simple Framework for Adaptive Simulation SIGGRAPH Presented by Jose Guerra

CATIA Surface Design

Lecture 4b. Surface. Lecture 3 1

UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati

Surfaces for CAGD. FSP Tutorial. FSP-Seminar, Graz, November

In this course we will need a set of techniques to represent curves and surfaces in 2-d and 3-d. Some reasons for this include

Modeling Technology Group

Constructive Solid Geometry and Procedural Modeling. Stelian Coros

Subdivision surfaces for CAD: integration through parameterization and local correction

Level of Details in Computer Rendering

Extrude & Revolve Maya 2013

Curves and Surfaces 1

CS 465 Program 4: Modeller

A 3-Dimensional Modeling System Inspired by the Cognitive Process of Sketching

CSG obj. oper3. obj1 obj2 obj3. obj5. obj4

Distance Functions 1

Subdivision. Outline. Key Questions. Subdivision Surfaces. Advanced Computer Graphics (Spring 2013) Video: Geri s Game (outside link)

Bezier Curves, B-Splines, NURBS

Transcription:

3D Modeling techniques 0. Reconstruction From real data (not covered) 1. Procedural modeling Automatic modeling of a self-similar objects or scenes 2. Interactive modeling Provide tools to computer artists

Shape modeling: 2 viewpoints Modeling technique Shape representation Reconstruction of real objects Procedural modeling Interactive modeling Surface representation (B-Rep) Volume representation meshes parametric surfaces (splines) voxels implicit surfaces 2

Interactive Modeling Goal: enable artists to create shapes as easily as in real Quickly define a rough shape Refine it through deformations Assemble different parts Advantages of virtual design Store, undo/redo, cut, copy/paste, refine, deform, edit at any scale 3

Interactive Modeling Industrial software Maya, 3DSmax, Blender, Autocad, Catia Years of training Complex interfaces Need to understand DoF (splines, NURBS, subdivision surfaces ) Little creation through gesture: sometimes spoils creativity! 4

Interactive Modeling Practice in the industry Computers are not much used for conceptual design! [ Geri s game] Grand challenge (Rob Cook scientific director Pixar - 2008) Make tools as transparent to the artists, as the special effects were made transparent to the general public 5

Interactive modeling Good shape representation? 1. Easily create smooth shapes 2. Real-time display after each interaction 3. No restriction on the created shape Geometry: holes, branches, details Topology: any genius, allow topological changes 4. Avoid unnecessary degrees of freedom Ex: closed objects: volumes vs. surfaces 5. Allow long modeling sessions Complexity function of shape, not of user gestures! 6. Local & global, constant volume deformations 6

Main shape representations Boundary representations (surfaces) Meshes (discrete surfaces) Splines, NURBS (parametric surfaces) Subdivision & multi-resolution surfaces Volumetric representations Voxels (discrete volumes) CSG (Constructive Solid Geometry) Implicit surfaces (smooth volumes) 7

Boundary representations Meshes Explicit enumeration of faces Many required to be smooth! Smooth deformation??? Smooth surfaces Compact representation Will remain smooth After zooming After any deformation! Converted into faces for rendering Better adapted to interactive design 8

Parametric curves and surfaces Defined by a parametric equation Curve: C(u) Surface: S(u,v) u Advantages Easy to compute points v Easy to discretize Parametrization u 9

Splines curves Most important models Interpolation P 1 P 2 Hermite curves C 1, cannot be local if C 2 Cardinal spline (Catmull Rom) P 3 Approximation Bézier curves Uniform, cubic B-spline Generalization to NURBS P 1 P 2 P 3 10

11 Cubic splines: matrix equation P 1 P 2 P 3 P 4 P 4 P 2 P 3 P 1 Q i (u) = (u 3 u 2 u 1) M spline [P i-1 P i P i+1 P i+2 ] t Cardinal spline B-spline 0 0 2 0 0 1 0 1 1 4 5 2 1 3 3 1 2 1 M Catmull 0 1 4 1 0 3 0 3 0 3 6 3 1 3 3 1 6 1 M Bspline

Splines surfaces «Tensor product»: product of spline curves in u and v Q i,j (u, v) = (u 3 u 2 u 1) M [P i,j ] M t (v 3 v 2 v 1) Exercice Order of smoothness of the surface? Locality of deformations? How to convert spline surfaces into meshes? Historic example «Utah teapot» 12

Interactive modeling with splines Make it intuitive? Inspire from real shape design! Iterative shape design 1. Create simple shapes ( primitives ) 2. Deform them locally or globally 3. Assemble them Iterate! 13

Step 1: Creating primitives Difficult to specify 3D data with a mouse! Idea: create shapes mostly from 2D input 1. Surfaces of revolution Rotation of a planar profile around an axis Mesh: grid of control points Exercise: define the control points required to generate this shape. Is your surface C1 everywhere? How can you ensure this? 14

Step 1: Creating primitives 2. Lofting Data: a planar section, an axis Translated instances of the section Generalization Sweeping gesture Exercise: how would you create this C0 only cross section? 15

Step 1: Creating primitives 3. Extrusion (also called Free-form Sweeping ) Data: A planar cross section A skeleton (3D curve) A planar profile The section is swept along the skeleton The profile is used as a scaling factor 16

Step 1: Creating primitives 3. Extrusion Place instances of the section regularly along the skeleton? Does not work properly! 17

Step 1: Creating primitives Create offsets of the skeleton Curves at fixed distance from skeleton, fixed angle / normal Adapt the offset distance using the profile d B N 18

Step 1: Creating primitives Issue : Offsets are NOT translated curves Translated copies of the skeleton Offsets Note: offsets of splines curves are NOT spline curves In practice, approximated using the same number of control points! 19

Step 2: Deform locally or Globally OK for local deformation, but is locality controllable? Exercise: If we add the yellow control point, will deformation be the same when pulling the red point? 20

Step 2: Deform locally or Globally Answer: controlling the range of deformation is difficult A full line of control points needs to be added. Consequences Difficult to get details where needed! (example: a face) Large scale editing is difficult once details have been added 21

Step 2: Deform locally or Globally Hierarchical Spline Surfaces [Forsey, Bartels SIGGRAPH 88] Tree-structure of control-point grids Local coordinated for points : P = G + O, G = S i (u 0,v 0 ) closest point on parent surface O offset vector, expressed in the local frame of the parent 22

Step 2: Deform locally or Globally Hierarchical Spline Surfaces [Forsey, Bartels SIGGRAPH 88] Compact: 24 editable control points instead of > 1000 Large scale deformations while keeping details! 23

Step 3: Assembly Fitting 2 surfaces : same number of control points? 24

Step 3: Assembly Closed surfaces can be modeled Generalized cylinder by duplicating rows of control points Closed extremity (with a degenerated spline surface) But, can we blend shapes together?? 25

Step 3: Assembly? Branches? 5 sided patch? joint between 5 patches? 26

Advanced bibliography Generalized B-spline Surfaces of Arbitrary Topology [Charles Loop & Tony DeRose, SIGGRAPH 1990] n-sided generalization of Bézier surfaces: Spatches 27

Subdivision Surfaces Topology defined by the control polygon Progressive refinement (interpolation or approximation) Butterfly Loop Catmull-Clark 28

Subdivision Curves & Surfaces Start with a control polygon or mesh progressive refinement rule (similar to B-spline) Smooth? use variance reduction! corner cutting Chaikin 29

How Chaikin s algorithm works? Q i = ¾ P i + ¼ P i+1 R i = ¼ P i + ¾ P i+1 30

Subdivision Surfaces Benefits Arbitrary topology & geometry (branching) Approximation at several levels of detail (LODs) Drawback: No parameterization, some unexpected results Loop 31

Advanced bibliography Subdivision Surfaces in Character Animation [Tony DeRose, Michael Kass, Tien Truong, Siggraph 98] Keeping some sharp creases where needed 32