# 3D Models 3D Models… by huanghengdong

VIEWS: 14 PAGES: 36

• pg 1
```									   Models…
3D Models
Where does the data come from?
Sources of 3D d t
S        f    data
1.
1                            Three-Dimensional
Directly specifying the Three Dimensional data

y                (-1, -1, -1)
1, 1, 1)
( 1 -1 -1)
Fine for this:              x =       ( 1, 1, -1)
(-1 1 -1)
( 1, 1, 1)
z                          (-1, -1, 1)
1 1,
( 1, -1 1)
( 1, 1, 1)
(-1 1 1)
( 1, 1,
... But not for this!
Sources of 3D data
1. Directly specifying the Three-Dimensional data
2 Transforming data found in other forms into
2.
surfaces or volumes – e.g. taking molecule data
and transforming it into spheres and cylinders
Sources of 3D data
1. Directly specifying the Three-Dimensional data
2 Transforming data found in other forms
2.
3. Writing programs that create such data – this is
modelling.
called procedural modelling
g
Procedural Modeling of Cities
(Parish and Mueller, SIGGRAPH 2001)
g           g
Procedural Modeling of buildings
(Mueller et al., SIGGRAPH 2006)
g                          g
(Mueller et al., SIGGRAPH 2007)
g
Procedural Modelling of Natural Sceneries
(Guerraz et al., CASA 2003)
Sierpinski s
Sierpinski’s
Triangle:
Self similarity
Self-similarity common
in nature
p
Fractal Landscape
L-systems are defined as a tuple:

G = {V, S, ω, P}

V - The alphabet, a set of symbols (variables)
S - A set of symbols containing elements that remain
fixed (constants)
ω - A string of symbols from V defining the initial state of
the system (axiom or initiator)
P - A set of rules defining the way variables can be
replaced with combinations of constants and other
variables
Sierpinski triangle drawn using an L-system:

variables: A B (draw forward)
constants:                "turn   by
constants + − (+ means "t rn left b angle“)
start: A
B−A−B),(B
rules: (A → B A B) (B → A+B+A)
angle: 60° (angle changes sign at each iteration)

Evolution for n = 2, n = 4, n = 6, n = 9
L-systems
L systems for plant modelling
Prusinkiewicz
Sources of 3D data
1. Directly specifying the Three-Dimensional data
2 Transforming data found in other forms
2.
3. Writing programs that create such data – this is
modelling.
called procedural modelling
4. Using a modelling program, e.g. Blender, Maya,
3ds Max, Auto CAD, Softimage etc
Sources of 3D data
1.   Directly specifying the Three-Dimensional data
2
2.   Transforming data found in other forms
3.   Writing programs that create such data – this is
modelling.
called procedural modelling
4.   Using a modelling program, e.g. Blender, Maya,
3ds Max, Auto CAD, Softimage etc
5.   Photogrammetric techniques – reconstruction
object.
from photos of a real object
Photogrammetry
Find corresponding points in a series of images
Triangulate to find their location in space
From photos, extract models using
image information:

y
… later you can
texture and even
relight
g

Oh et al. SIGGRAPH 2001
Recover 3D model from a stereo pair of digital still
images (Dimensional Imaging)

Capture

Processing

Polygonisation

Merging

http://www.di3d.com/
g               g
Examples of Image-Based Modeling

1997                                1999

http://www.debevec.org/Campanile/
htt //     d b        /C     il /   http://www.debevec.org/FiatLux/
htt //     d b        /Fi tL /
Sources of 3D data
1. Directly specifying the Three-Dimensional data
g
2. Transforming data found in other forms
3. Writing programs that create such data – this is
called procedural modelling.
p                    g
4.   Using a modelling program, e.g. Blender, Maya, 3D
5.   Photogrammetric techniques – reconstruction from
photos of a real object.
6.   Use 3D scanner or digitizers, which gather depth
information
g             g       j
The Digital Michelangelo project
http://www-graphics.stanford.edu/projects/mich/
j
The Parthenon project
http://www.debevec.org/Parthenon/
Gives an awful lot of data!!!!
Sources of 3D data
1.   Directly specifying the Three-Dimensional data
2.   Transforming data found in other forms
3.   Writing programs that create such data – this is called
modelling.
procedural modelling
4.   Using a modelling program, e.g. Blender, Maya, 3D
5.   Photogrammetric techniques – reconstruction from
photos of a real object.
6.   Use 3D scanner or digitizers, which gather depth
information
7.
7    Other S
Oth Sources:
•   Implicit surfaces,
•             scans, e.g. CT,
Medical scans e g CT MRI
Terminator 2, J d
T                 t Day
i t 2 Judgment D (2001)

Implicit Surfaces – blobby objects that can merge and deform
Usually defined by an equation of the form f(x,y,z)=0
Volumetric data can be derived from CT or MRI scans
Representing 3D objects
x2 + y2 + z2 = r2

Polygonal               Implicit
3D Models

x = sin 4θ
y = cos 2θ

Parametric          ?               Particles
What representation?
Graphics scenes contain all kinds of objects: terrain,
trees, rocks buildings characters rain          etc
trees rocks, buildings, characters, rain, cloth etc..
No one method that will describe objects that will
characteristics…
be suited to their very different characteristics
So, How do we ...
Represent 3D objects in a computer?
Construct these objects quickly?
Manipulate them with the computer?
The algorithms depend on the representation.
Representation schemes
R       t ti     h
Two broad categories (but not everything fits
neatly into one or the other):

y   p             (B-
Boundary Representations (
reps)
d
and
Space-partitioning
Space partitioning
p
Representations
Boundary R
B   d            t ti
Representations
B-reps
B reps describe a 3D object as a set of surfaces
that separate the object interior from the
environment
environment.
Examples:
Polygon Meshes
Subdivision Surfaces
Implicit Surfaces
Parametric/spline patches
Constructive Solid Geometry
Polygonal
Model

Tessellation or polygonisation

p yg                  p
A polygon mesh is a B-rep or boundary representation model
y p
Geometry defined by the sub-space bounded by sets of planes and surfaces.
Space-partitioning
S        titi i

Space-partitioning representations are used to
objects.
describe interior properties of solid objects
They typically partition a region containing an object
small, non overlapping,            solids,
into a set of small non-overlapping contiguous solids
such as cubes or tetrahedra.
Examples:
Voxels
O t
Octrees
BSP-trees (Binary Space Partition)
Kd-trees (k-dimensional)
CSG ?
p      p         g     p              p
Space-partitioning is important in computer
graphics where it is used to organise objects.
g    j        p     p
Storing objects in space-partitioned data
structures makes it easy to perform geometry
queries:
Determining which objects are close to each other
(Collision Detection)
Determining if a ray intersects with an object
(Ray Tracing)
Volumetric model.
CSG –                           3D Object is a collection of
constructive solid geometry               volume elements or voxels
g p           p
which flag spatial occupancy y
Objects defined
3D Obj t d fi d as b l              ti
boolean operations
on solid primitives.             in a discrete region.
Operations in CSG

Boolean            Boolean         oo ea
Boolean
Union            Difference   Intersection
Materials
M t i l
Visual appearance of objects depends on their
material properties
The representation of materials depends on the
rendering technique used
Realistic techniques require physical parameters
(albedo, reflectance)
(                     )
Often, intermediate information is used (“colour”)
Eventually:y
Volumetric, parameters are f(x,y,z)
Surface based, parameters are f(u,v) (“Texture
”)
maps”)

```
To top