1 Free-Form Deformations Dr. Scott Schaefer. 2/28 Deformation

Preview:

Citation preview

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,

,, ˆˆ

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

Recommended