1 free-form deformations dr. scott schaefer. 2/28 deformation
TRANSCRIPT
1
Free-Form Deformations
Dr. Scott Schaefer
2/28
Deformation
3/28
Deformation
4/28
Deformation Applications
Toy Story © Disney / Pixar
5/28
Challenges in Deformation
Large meshes – millions of polygons Need efficient techniques for computing and
specifying the deformation
Digital Michelangelo Project
6/28
Deformation Handles
Low-resolution auxiliary shape controls deformation of high-resolution model
7/28
Deformation Handles
Low-resolution auxiliary shape controls deformation of high-resolution model
8/28
Deformation Handles
Low-resolution auxiliary shape controls deformation of high-resolution model
9/28
Deformation Handles
Low-resolution auxiliary shape controls deformation of high-resolution model
10/28
FFD Contributions
Smooth deformations of arbitrary shapes Local control of deformation Performing deformation is fast
Widely usedGame/Movie industryPart of nearly every 3D modeler
11/28
Free-Form Deformations
Embed object in uniform grid Represent each point in space as a weighted
combination of grid vertices
0x 1x 2x 3x
v
i
iixwv
12/28
Free-Form Deformations
Embed object in uniform grid Represent each point in space as a weighted
combination of grid vertices Assume xi are equally spaced and use
Bernstein basis functions
0x 1x 2x 3x
v
ii
iid
iii xtt
i
dxwv )1(
13/28
Free-Form Deformations
Embed object in uniform grid Represent each point in space as a weighted
combination of grid vertices Assume xi are equally spaced and use
Bernstein basis functions
0x 1x 2x 3x
v0 3
132 1
txtti
dxwv
ii
iid
iii
)1(
14/28
Free-Form Deformations
Embed object in uniform grid Represent each point in space as a weighted
combination of grid vertices Assume xi are equally spaced and use
Bernstein basis functions
0x 1x 2x 3x
v0 3
132 1
iidi vv
i
dw
)1(
15/28
2D Example
16/28
2D Example
0 1
0
1
17/28
2D Example
0 1
0
1
32
54 ,
18/28
2D Example
0 1
0
1
32
54 , 3
2
54
v
u
19/28
2D Example
32
54 , 3
2
54
v
u
22 )1()1( vu 2)1()1(2 vuu 22 )1( vu
22vu22)1( vu 2)1(2 uvu
vvu )1()1(2 2 vvu )1(2 2 vvuu )1()1(4
20/28
2D Example
32
54 , 3
2
54
v
u
2251
2258
22516
2254
22532 225
64
2254
22532
22564
21/28
Applying the Deformation
jip ,
v
ji
jiji pwv,
,,
22/28
Applying the Deformation
jip ,
v
ji
jiji pwv,
,,
jip ,ˆ
23/28
Applying the Deformation
jip ,
v
ji
jiji pwv,
,,
jip ,ˆ
ji
jiji pwv,
,, ˆˆ
v̂
24/28
Smoothness of Deformation
Constraining Bezier control points controls smoothness
1C
0C
1C
2C
Image taken from “Free-form Deformations of Solid Geometric Models”
25/28
Volume Preservation
Must ensure that the jacobian of the deformation is 1 everywhere
),,(),,,(),,,(ˆ,ˆ,ˆ zyxHzyxGzyxFzyx
1
zH
yH
xH
zG
yG
xG
zF
yF
xF
Images taken from “Free-form Deformations of Solid Geometric Models”
26/28
Advantages
Smooth Deformation of arbitrary shapes Local control of deformations Computing the deformation
is easy Deformations are very fast
27/28
Disadvantages
Must use cubical cells for deformation Restricted to uniform grid Deformation warps space… not surface
Does not take into account geometry/topology of surface
May need many FFD’s to achieve a simple deformation
28/28
Summary
Widely used deformation technique Fast, easy to compute Some control over volume
preservation/smoothness
Uniform grids are restrictive