1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng...

31
1 Subdivision Depth Subdivision Depth Computation Computation for for Catmull-Clark Subdivision Catmull-Clark Subdivision Surfaces Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University, Beijing, China

Transcript of 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng...

Page 1: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

1

Subdivision Depth ComputationSubdivision Depth Computationfor for

Catmull-Clark Subdivision SurfacesCatmull-Clark Subdivision Surfaces

Fuhua (Frank) Cheng

University of Kentucky, Lexington, KY

Junhai Yong

Tsinghua University, Beijing, China

Page 2: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

2

Outline:

1. Introduction

2. Subdivision depth computation for regular

CCSS patches

3. For extra-ordinary CCSS patches

4. Examples

5. Concluding Remarks

Page 3: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

3

Introduction:Introduction:

Recent focusRecent focus: Subdivision Surfaces

The de-facto standard for generating freeform curves and surfaces of arbitrary topology

(in visualization and animation application)

Page 4: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

4

Graphical Modeling

Games

Animation

Page 5: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

5

• Pixar’s Renderman

• Alias|Wavefront’s Maya

• Nichimen’s Mirai

• Newtek’s Lightwave 3D

Used as primary representation scheme in:

Page 6: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

6

What is a

subdivision surface?

Triangular

Loop Butterfly

QuadrilateralCatmull-Clark Doo-Sabin

Page 7: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

7

• Repeatedly refining the given control mesh to get M0,M1,M2,M3, limit surface (subdivision surface)

M0

M1

M2

M3

S = M∞

Page 8: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

8

What so special?

One piece representation™

(arbitrary topology)

Multi-resolution(Scalability)

Code Simplicit

y

Covers both polygon form and

surface form(Uniformity)

Numerical stability

Page 9: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

9

Why is One Piece Representation™ Good?

Data Management: Simpler

Rendering: More efficient

Machining: More precise

Animation: Crack free

Page 10: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

10

Graphic Modeling

Games

Animation

What is missing?CAD/CAM

Page 11: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

11

Why?

1. No parameterization2. No error control3. No adaptive tessellation

Page 12: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

12

• Without error controlNo CAD/CAM applications

• Without parameterizationDifficult to perform picking, rendering,

texture mapping

• Without adaptive tessellationToo expensive to use

Page 13: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

13

What is What is errorerror control? control?

Page 14: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

14

Error Control: Given ε > 0, when would Mn - S< ε ?

M0

M1

M2

Mn

S = M∞

Cross-Sectional View

Limit Surface

εε

Page 15: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

15

Subdivision Depth Computation

For Regular CCSS Patches:

2nd Order Forward Difference

]2

C A - B [ 2 C - A- B 2

B

A C

2

C A

Page 16: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

16

] VVV2 , VVV2 [ max6

1 )t(C)t(L 312261

Cubic B-spline Curve Segment

Page 17: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

17

Bicubic B-spline Surface Patch

]uV V u)-(1 [ v ] V u V u)-(1 [ v)-(1 v)(u,L 22122111

Page 18: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

18

Bicubic B-spline Surface Patch

VVV2 , VVV2 maxM

M3

1 )v,u(S)v,u(L

1j,i1j,ij,ij,1ij,1ij,i

Page 19: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

19

Recurrence Formula

0k

kmn

kmn

kmn

M )4

1(

3

1

M3

1

)v,u(S)v,u(L

Page 20: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

20

)3

M(log k 4

Hence, for

We need

M )4

1(

3

1 k

Subdivision Depth

Page 21: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

21

Subdivision Depth Computation

For Extra-Ordinary CCSS Patches:

Ω - Partition based approach

Extra-ordinary point

(0,0)

1

12

13

11

23

222

1

33323

1

1v

u

Page 22: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

22

Subdivision of a Extra-ordinary patch

Page 23: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

23

13

12

11 S S S subpatches of vertices Control ,,

Page 24: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

24

Two Regions:– Vicinity of Extra-Ordinary point– The remaining (regular) regions

(0,0)

1

12

13

11

23

222

1

33323

1

1v

u

Page 25: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

25

have e

n D max

if Then

k

)v,u(L)v,u(S

w

n

Page 26: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

26

n n when

n find Given

)v,u(L)v,u(S

,.t.s

0,0

0n

n0

For vicinity of Extra-Ordinary point:

Page 27: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

27

3 2, 1, b

k

D find

n k 1 each or

)v,u(L)v,u(S

.t.s

f

kb

kb

For the remaining part :

Page 28: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

28

S of norm orderfirst :G

n on dependingconstant

) 2

7G ( log

n finding in is key the , Therefore

:

n

Page 29: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

29

Examples:

d

0.25 1

0.2 3

0.1 9

0.01 24

0.001 40

0.0001 56

Page 30: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

30

Concluding Remarks:

1. Provides precision/error control for all tessellation based application of CCSSs2. Possible disadvantage: might generate relatively large subdivision depth for vicinity of an extra-ordinary vertex already flat

enough3. Possible improvement: use second order norm for extra-ordinary patches

Page 31: 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng University of Kentucky, Lexington, KY Junhai Yong Tsinghua University,

31

Acknowledgement:

• Research work presented here is supported by NSF (DMS-0310645,

DMI-0422126).