1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng...
-
Upload
kristopher-wheeler -
Category
Documents
-
view
225 -
download
4
Transcript of 1 Subdivision Depth Computation for Catmull-Clark Subdivision Surfaces Fuhua (Frank) Cheng...
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
2
Outline:
1. Introduction
2. Subdivision depth computation for regular
CCSS patches
3. For extra-ordinary CCSS patches
4. Examples
5. Concluding Remarks
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)
4
Graphical Modeling
Games
Animation
5
• Pixar’s Renderman
• Alias|Wavefront’s Maya
• Nichimen’s Mirai
• Newtek’s Lightwave 3D
Used as primary representation scheme in:
6
What is a
subdivision surface?
Triangular
Loop Butterfly
QuadrilateralCatmull-Clark Doo-Sabin
7
• Repeatedly refining the given control mesh to get M0,M1,M2,M3, limit surface (subdivision surface)
M0
M1
M2
M3
S = M∞
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
9
Why is One Piece Representation™ Good?
Data Management: Simpler
Rendering: More efficient
Machining: More precise
Animation: Crack free
10
Graphic Modeling
Games
Animation
What is missing?CAD/CAM
11
Why?
1. No parameterization2. No error control3. No adaptive tessellation
12
• Without error controlNo CAD/CAM applications
• Without parameterizationDifficult to perform picking, rendering,
texture mapping
• Without adaptive tessellationToo expensive to use
13
What is What is errorerror control? control?
14
Error Control: Given ε > 0, when would Mn - S< ε ?
M0
M1
M2
Mn
S = M∞
Cross-Sectional View
Limit Surface
εε
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
16
] VVV2 , VVV2 [ max6
1 )t(C)t(L 312261
Cubic B-spline Curve Segment
17
Bicubic B-spline Surface Patch
]uV V u)-(1 [ v ] V u V u)-(1 [ v)-(1 v)(u,L 22122111
18
Bicubic B-spline Surface Patch
VVV2 , VVV2 maxM
M3
1 )v,u(S)v,u(L
1j,i1j,ij,ij,1ij,1ij,i
19
Recurrence Formula
0k
kmn
kmn
kmn
M )4
1(
3
1
M3
1
)v,u(S)v,u(L
20
)3
M(log k 4
Hence, for
We need
M )4
1(
3
1 k
Subdivision Depth
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
22
Subdivision of a Extra-ordinary patch
23
13
12
11 S S S subpatches of vertices Control ,,
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
25
have e
n D max
if Then
k
)v,u(L)v,u(S
w
n
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:
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 :
28
S of norm orderfirst :G
n on dependingconstant
) 2
7G ( log
n finding in is key the , Therefore
:
n
29
Examples:
d
0.25 1
0.2 3
0.1 9
0.01 24
0.001 40
0.0001 56
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
31
Acknowledgement:
• Research work presented here is supported by NSF (DMS-0310645,
DMI-0422126).