modeling n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Modeling PowerPoint Presentation
Download Presentation
Modeling

Loading in 2 Seconds...

play fullscreen
1 / 66

Modeling - PowerPoint PPT Presentation


  • 138 Views
  • Uploaded on

Modeling. Aaron Bloomfield CS 445: Introduction to Graphics Fall 2006 (Slide set originally by Greg Humphreys). Outline. Acquisition Seashells Fractals Volumes Constructive Solid Geometry Modeling Programs. Model Construction. Interactive modeling tools CAD programs

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Modeling' - peta


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
modeling

Modeling

Aaron Bloomfield

CS 445: Introduction to Graphics

Fall 2006

(Slide set originally by Greg Humphreys)

outline
Outline
  • Acquisition
  • Seashells
  • Fractals
  • Volumes
  • Constructive Solid Geometry
  • Modeling Programs
model construction
Model Construction
  • Interactive modeling tools
    • CAD programs
    • Subdivision surface editors :)
  • Scanning tools
    • CAT, MRI, laser, magnetic, robotic arm, etc.
  • Computer vision
    • Stereo, motion, etc.
interactive modeling tools
Interactive Modeling Tools
  • User constructs objects with drawing program
    • Menu commands, direct manipulation, etc.
    • CSG, parametric surfaces, quadrics, etc.

Cosmoworlds, SGI

interactive modeling tools1
Interactive Modeling Tools
  • Example: Mechanical CAD

H&B Figure 9.9

model construction1
Model Construction
  • Interactive modeling tools
    • CAD programs
    • Subdivision surface editors :)
  • Scanning tools
    • Laser, magnetic, robotic arm, etc.
  • Computer vision
    • Stereo, motion, etc.
scanning tools
Scanning tools
  • Acquire geometry of objects with active sensors
    • CAT/MRI
    • Laser range scanner
    • Magnetic sensor
    • Robotic arm
    • etc.

Lorensen

Stanford Graphics Laboratory

scanning tools1

Xp

(Xc,Yc)

Scanning tools
  • Acquire geometry of objects with active sensors
    • CAT/MRI
    • Laser range scanner
    • Magnetic sensor
    • Robotic arm
    • etc.

Color

Depth

laser range scanning
Laser Range Scanning
  • Example: 70 scans
    • Volumetric reconstruction

Stanford Graphics Laboratory

scanning tools2
Scanning tools
  • Acquire geometry of objects with active sensors
    • CAT/MRI
    • Laser range scanner
    • Magnetic sensor
    • Robotic arm
    • etc.
scanning tools3
Scanning tools
  • Acquire geometry of objects with active sensors
    • CAT/MRI
    • Laser range scanner
    • Magnetic sensor
    • Robotic arm
    • etc.
computer vision
Computer Vision
  • Infer 3D geometry from images
    • Stereo
    • Motion
    • Constraints
    • etc.
computer vision1
Computer Vision
  • Infer 3D geometry from images
    • Stereo
    • Motion
    • Constraints
    • etc.
computer vision2
Computer Vision
  • Infer 3D geometry from images
    • Stereo
    • Motion
    • Constraints
    • etc.

Debevec96

procedural modeling
Procedural Modeling
  • Goal:
    • Describe 3D models algorithmically
  • Best for models resulting from ...
    • Repeating processes
    • Self-similar processes
    • Random processes
  • Advantages:
    • Automatic generation
    • Concise representation
    • Parameterized classes of models
outline1
Outline
  • Acquisition
  • Seashells
  • Fractals
  • Volumes
  • Constructive Solid Geometry
  • Modeling Programs
example seashells
Example: Seashells
  • Create 3D polygonal surface models of seashells

“Modeling Seashells,”

Deborah Fowler, Hans Meinhardt,

and Przemyslaw Prusinkiewicz,

Computer Graphics (SIGGRAPH 92),

Chicago, Illinois, July, 1992, p 379-387.

Fowler et al. Figure 7

example seashells1
Example: Seashells
  • Sweep generating curve around helico-spiral axis

Helico-spiral definition:

Fowler et al. Figure 1

example seashells2
Example: Seashells
  • Connect adjacent points to form polygonal mesh

Fowler et al. Figure 6

example seashells3
Example: Seashells
  • Model is parameterized:
    • Helico-spiral: z0, lz, r0, lr, Nq, Dq
    • Generating curve: shape, Nc, lc

Fowler et al. Figure 1

example seashells4
Example: Seashells
  • Generate different shells by varying parameters

Different helico-spirals

Fowler et al. Figure 2

example seashells5
Example: Seashells
  • Generate different shells by varying parameters

Different generating curves

Fowler et al. Figure 3

example seashells6
Example: Seashells

Generate many interesting shells

with a simple procedural model!

Fowler et al. Figures 4,5,7

outline2
Outline
  • Acquisition
  • Seashells
  • Fractals
  • Volumes
  • Constructive Solid Geometry
  • Modeling Programs
fractals
Fractals
  • Defining property:
    • Self-similar with infinite resolution

Mandelbrot Set

H&B Figure 10.100

fractals1
Fractals
  • Useful for describing natural 3D phenomenon
    • Terrain
    • Plants
    • Clouds
    • Water
    • Feathers
    • Fur
    • etc.

H&B Figure 10.80

fractal generation
Fractal Generation
  • Deterministically self-similar fractals
    • Parts are scaled copies of original
  • Statistically self-similar fractals
    • Parts have same statistical properties as original
deterministic fractal generation
Deterministic Fractal Generation
  • General procedure:
    • Initiator: start with a shape
    • Generator: replace subparts with scaled copy of original

H&B Figure 10.68

deterministic fractal generation1
Deterministic Fractal Generation
  • Apply generator repeatedly

Koch Curve

H&B Figure 10.69

deterministic fractal generation2
Deterministic Fractal Generation
  • Useful for creating interesting shapes!

Mandelbrot Figure X

deterministic fractal generation3
Deterministic Fractal Generation
  • Useful for creating interesting shapes!

Mandelbrot Figure 46

deterministic fractal generation4
Deterministic Fractal Generation
  • Useful for creating interesting shapes!

H&B Figures 75 & 109

fractal generation1
Fractal Generation
  • Deterministically self-similar fractals
    • Parts are scaled copies of original
  • Statistically self-similar fractals
    • Parts have same statistical properties as original
statistical fractal generation
Statistical Fractal Generation
  • General procedure:
    • Initiator: start with a shape
    • Generator: replace subparts with a self-similar random pattern

Random Midpoint Displacement

statistical fractal generation1
Statistical Fractal Generation
  • Example: terrain

H&B Figure 10.83b

statistical fractal generation2
Statistical Fractal Generation
  • Useful for creating mountains

H&B Figure 10.83a

statistical fractal generation3
Statistical Fractal Generation
  • Useful for creating 3D plants

H&B Figure 10.82

statistical fractal generation4
Statistical Fractal Generation
  • Useful for creating 3D plants

H&B Figure 10.79

outline3
Outline
  • Acquisition
  • Seashells
  • Fractals
  • Volumes
  • Constructive Solid Geometry
  • Modeling Programs
solid modeling
Solid Modeling
  • Represent solid interiors of objects
    • Surface may not be described explicitly

SUNY Stony Brook

Visible Human

(National Library of Medicine)

motivation 1
Motivation 1
  • Some acquisition methods generate solids
    • Example: CAT scan

Stanford University

motivation 2
Motivation 2
  • Some applications require solids
    • Example: CAD/CAM

Intergraph Corporation

solid modeling representations
Solid Modeling Representations
  • What makes a good solid representation?
    • Accurate
    • Concise
    • Affine invariant
    • Easy acquisition
    • Guaranteed validity
    • Efficient boolean operations
    • Efficient display

Lorensen

voxels
Voxels
  • Partition space into uniform grid
    • Grid cells are called a voxels (like pixels)
  • Store properties of solid object with each voxel
    • Occupancy
    • Color
    • Density
    • Temperature
    • etc.

FvDFH Figure 12.20

voxel acquisition
Voxel Acquisition
  • Scanning devices
    • MRI
    • CAT
  • Simulation
    • FEM

Stanford University

SUNY Stony Brook

voxel storage
Voxel Storage
  • O(n3) storage for nxnxn grid
    • 1 billion voxels for 1000x1000x1000
voxel boolean operations
Voxel Boolean Operations
  • Compare objects voxel by voxel
    • Trivial

=

=

voxel display
Voxel Display
  • Isosurface rendering
    • Render surfaces bounding volumetric regions of constant value (e.g., density)

Isosurface Visualization

Princeton University

voxel display1
Voxel Display
  • Slicing
    • Draw 2D image resulting from intersecting voxels with a plane

Visible Human

(National Library of Medicine)

voxel display2
Voxel Display
  • Ray casting
    • Integrate density along rays through pixels

Engine Block

Stanford University

voxels1
Voxels
  • Advantages
    • Simple, intuitive, unambiguous
    • Same complexity for all objects
    • Natural acquisition for some applications
    • Trivial boolean operations
  • Disadvantages
    • Approximate
    • Not affine invariant
    • Large storage requirements
    • Expensive display
quadtrees octrees
Quadtrees & Octrees
  • Refine resolution of voxels hierarchically
    • More concise and efficient for non-uniform objects

Uniform Voxels

Quadtree

FvDFH Figure 12.21

quadtree boolean operations
Quadtree Boolean Operations

A

B

A  B

A  B

FvDFH Figure 12.24

quadtree display
Quadtree Display
  • Extend voxel methods
    • Slicing
    • Isosurface extraction
    • Ray casting

Finding neighbor cell requires traversal of hierarchy (O(1))

FvDFH Figure 12.25

outline4
Outline
  • Acquisition
  • Seashells
  • Fractals
  • Volumes
  • Constructive Solid Geometry
  • Modeling Programs
constructive solid geometry csg
Constructive Solid Geometry (CSG)
  • Represent solid object as hierarchy of boolean operations
    • Union
    • Intersection
    • Difference

FvDFH Figure 12.27

csg acquisition
CSG Acquisition
  • Interactive modeling programs
    • CAD/CAM

H&B Figure 9.9

csg boolean operations
CSG Boolean Operations
  • Create a new CSG node joining subtrees
    • Union
    • Intersection
    • Difference

FvDFH Figure 12.27

csg display analysis
CSG Display & Analysis
  • Ray casting

Union

Box

Circle

outline5
Outline
  • Acquisition
  • Seashells
  • Fractals
  • Volumes
  • Constructive Solid Geometry
  • Modeling Programs
popular rendering programs
Popular rendering programs
  • 3D Studio Max ($3.5k)
    • Made by Autodesk (makers of CAD programs)
    • Runs only on Windows (Win32 and Win64)
    • Movies made w/Max: Incredibles, X-Men, Star Wars III, etc.
  • Maya ($2k or $6k)
    • Made by Alias
      • Originally by SGI
      • Bought by Autodesk in Oct 2006
    • Runs on Windows, Linux
  • Blender (free!)
  • Others are less well known and less used
3d studio max
3D Studio Max
  • http://en.wikipedia.org/wiki/Image:3dsmax8Screenshot.jpg
slide63
Maya
  • http://en.wikipedia.org/wiki/Image:Autodesk_Maya_8.0_win32.png
blender
Blender
  • http://en.wikipedia.org/wiki/Image:Blender_node_screen_242a.jpg
comparison of renderers
Comparison of renderers
  • http://wiki.cgsociety.org/index.php/Comparison_of_3d_tools
  • And a better formatted version…
elephant s dream
Elephant’s Dream
  • Downloadable at http://orange.blender.org/
  • An open movie
    • Meaning you can download the Blender files that were used to make it
  • Made using only open-source software
    • Blender, GIMP, CinePaint, Inkscape, etc.
  • Length is 11 minutes (including 90 sec of credits)
    • That’s 19,800 frames
    • Took a 2.1 TFLOPS supercomputer cluster 125 days to render
      • Used Bowie State’s XSeed supercomputer
      • Took 9 minutes and 2.8 Gb per frame
    • An “average” high-end PC has only a “few” GFLOPS (not TFLOPS!)
      • So if you had a 3 Ghz computer w/4 Gb of RAM, it would take over 200 years to render!
      • Or 3 days per frame
      • Assuming a 3 Gz computer can do 3 TFLOPS (a generous assumption)