parameterization of catmull-clark subdivision surfaces
DESCRIPTION
Parameterization of Catmull-Clark Subdivision Surfaces. CAI Hongjie | Nov 19, 2008. Catmull-Clark Subdivision Surface. parameterization. Motivations. Future GPU pipeline tessellation. Vertex Processing. Patch Assembly. Tessellation. Pixel Processing. Motivations. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/1.jpg)
Parameterization of Catmull-Clark Subdivision Surfaces
CAI Hongjie | Nov 19, 2008
![Page 2: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/2.jpg)
Catmull-Clark Subdivision Surface
parameterization
![Page 3: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/3.jpg)
Motivations
• Future GPU pipeline
tessellation
VertexProcessing
PatchAssembly Tessellation Pixel
Processing
![Page 4: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/4.jpg)
Motivations
• Displacement Mapping
Adaptive tessellation is needed to produce micropolygons
![Page 5: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/5.jpg)
Papers List
• J. Stam. 1998 Exact Evaluation of Catmull-Clark Subdivision S
urfaces at Arbitrary Parameter Values• C. Loop, S. Schaefer. 2008 Approximate Catmull-Clark Subdivision Surfaces
with Bicubic Patches• H. Biermann, A. Levin, D. Zorin. 2000 Piec
ewise Smooth Subdivision Surfaces with Normal Control
![Page 6: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/6.jpg)
Origin of Catmull-Clark Surface
• E. Catmull & J. Clark. 1978Recursively Generated B-spline Surface on Arbi
trary Topological Meshes• D. Doo. 1978
A Subdivision Algorithm for Smoothing down Irregularly Shaped Polyhedrons
• D. Doo & M. Sabin. 1978Analysis of the Behavior of Recursive Division S
urfaces Near Extraordinary Points
![Page 7: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/7.jpg)
Knot Insertions of Uniform Bicubic B-Spline
4 4
,4 ,41 1
4 5 4 5
( , ) ( ) ( ), 1,
[ , ] [0,1], [ , ] [0,1].
ij i j i ji j
u v N u N v u v
u u u v v v
P P
5 5
,4 ,41 1
4 6 4 6
( , ) ( ) ( ), 0.5,
[ , ] [0,1], [ , ] [0,1].
ij i j i ji j
u v N u N v u v
u u u v v v
P P
u4 u5 u6
v4
v6
v5
u4 u5 u6u3 u7
v7
v6
v5
v4
v3
3 21,4 2,4 3,4 4,4
4 5
1 3 3 13 6 3 01( ( ), ( ), ( ), ( )) ( , , ,1)3 0 3 06
1 4 1 0 [ , ] [0,1]
N t N t N t N t t t t
t t t
![Page 8: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/8.jpg)
Generating Control Points
51P
Face Point
Edge Point
Vertex Point
11P
31P
41P
21P
42P 43P 44P
24P
12P 13P 14P
32P 33P
23P22P
34P
21P
55P
22P
11P
21P
![Page 9: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/9.jpg)
Masks for New Points21 22
1111 12
1/ 4 1/ 4
1/ 4 1/ 4
P PP
P P
31 32 33
22 2321 22
1311 12
1/ 64 3/ 32 1/ 64 3 / 32 9 /16 3/ 32
1/ 64 3/ 32 1/ 64
P P P
P PP PPP P
Face Point:
21 22 2312
11 12 13
1/16 3/ 8 1/16
1/16 3/ 8 1/16
P P PP
P P PEdge Point:
Vertex Point:
Vertex Point of valence n:
an bn
cnbncn
cn
bn
bn
2
2
714
321
4
n
n
n
an
bn
cn
![Page 10: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/10.jpg)
Continuity Around Extraordinary Point
01 1
1 0 -1 0
( , , ,..., , )
, =
Tn n
i i m m m
P v e f e f
P SP P S P T TP
2 3 2 1
0 0
0 0 3 / 8, 1/16, 1/ 4
(1, , , , ), 1, 2.
n n n n n n
n i
a b c b b cd d e e e ef f f f
f f f fd e fdiag i
S
v e1
f1e2
f3
e3
e4
f2
en fn
21 1
( , , , ) ,1 ( , 4,1,4,1, , 4,1) ( , , , , , ) .
( 5)
T
Tn nn
n n
P v v v
v v e f e f
![Page 11: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/11.jpg)
Exact Evaluation of Catmull-Clark Subdivision Surfaces at
Arbitrary Parameter Values
Jos Stam
Proceedings of SIGGRAPH 1998
![Page 12: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/12.jpg)
Jos Stam• Curriculum vitae
89-95 University of Toronto 95-96 INRIA 96-97 VTT 97-06 Alias | Wavefront 06-now Autodesk
• Awards SIGGRAPH Computer Graphics Achievement Award Academy Award for Technical Achievement (2005) Academy Award for Technical Achievement (2008)
![Page 13: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/13.jpg)
Neighborhood of Extraordinary Points
![Page 14: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/14.jpg)
Mathematical Setting
0 0,1 0,2 0,
1 1,1 1,2 1, 1 1 1, 1 1, 2 1, 9
( , ,..., ) , 2 8,
( , ,..., ) , ( , , ,..., )
TK
T T TK K K K
K N
C c c c
C c c c C C c c c
11 0 1 0 1 0 1 0, ; , .n n
n n n n
C AC C AC A C C AC C AC AA C
11 1211 12
21 22
,
00
SS
S SA AS S
S S
![Page 15: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/15.jpg)
Extended Subdivision Matrices
9 3, 16 321 3, 64 81 1,
16 4
a b
c d
e f
11 12
7 (2 1)
0 0 0 0 0 00 0 0 0 0 0 0 0 00 0 0 0 0 0
,0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0
0 0 0 0 0 00 0 0 0 0 0 0 0 0N
c b a b c b c b ce e d d e eb c b a b c c b ce d d e e ee d d e e eb c b a b c c b ce e d d e e
S S
21 22
9 (2 1)
0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0
,0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0N
f f f fd e e d e ef f f fe d e e d e
f f f fe d e e d ef f f f
e d e e d ef f f f
S S
![Page 16: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/16.jpg)
Domain Branching
, , 1, 2,3.k n k n k B P C
, ,
1 2 16
( 1)%4,4 ( 1) / 4,4
( , ) ( , ) ( , )
( , ) [0,1] [0,1].
( , ) ( ( , ), ( , ), , ( , )) . ( , ) ( ) ( ), 1,...,16.
T T Tk n k n n k
T
i i i
u v u v u v
u v
u v b u v b u v b u vb u v N u N v i
s B b C P b
b
1, 2, 3,( , ) (2 1,2 ), ( , ) (2 1, 2 1), ( , ) (2 ,2 1)n n n n n nn n nu v u v u v u v u v u v t t t
• Control Points
• Branching Surfaces
• Branching Domain1 2 31 1 1 1
1 1 1 1 1 1 1 1 1 1[ , ] [0, ], [ , ] [ , ], [0, ] [ , ]2 2 2 2 2 2 2 2 2 2
n n nn n n n n n n n n n
, ,( , ) | ( ( , )), ( , ) [0,1] [0,1]nk
k n k nu v u v u v s s t
![Page 17: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/17.jpg)
Eigen Analysis
, ,( , ) ( , ) ( , ), 1,2,3. 1,2,...T T Tk n k n n ku v u v u v k n s B b C P b
1
-1 1 1 1 10 0 0 0 0 1 2 2 8
1 1, 0 0
ˆ ˆ, ( , ,..., )ˆ ˆ( , ) ( ) ( , ) ( , , ), 1, 2,3. 1, 2,...
n n n Tn N
T n T T nk n ku v u v u v k k n
A V V
C AA C AV V C AV C C V C p p p
s C P AV b C x
• Branching surfaces
• Eigen structure of subdivision surface
• Basis functions2 8 2 8
1,
1 1
1,
( , ) | ( ) ( ( , ), ) = ( , )
( , ) | ( ) ( ( , ), ), 1,..., 2 8.
( / 2, / 2) ( , )
nk
nk
N Nn
i i k n i i ii i
ni i i k n
i i i
u v x u v k u v
basis functions u v x u v k i N
u v u v
s t p p
t
![Page 18: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/18.jpg)
Illustrations of Basis Functions
• The last seven functions3 3 3 3 3 2 3 3 2 3
2 2 2 81 1 1 1 1 1 1( ,..., ) ( , , , , , , )36 6 6 2 6 6 2N N u v u u v u v v uv u v
![Page 19: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/19.jpg)
Results
![Page 20: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/20.jpg)
More Results
![Page 21: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/21.jpg)
Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches
Charles Loop & Scott Schaefer
ACM Transactions on Graphics, 2008
![Page 22: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/22.jpg)
Authors
• Charles Loop University of Utah, Master, 1987 “Smooth Subdivision Surfaces based on Triangles”
University of Washington, PhD,1992 Microsoft Corporation
• Scott Schaefer Rice University, Master, 2003 Rice University, PhD, 2006 Texas A&M University, C.S. Assistant Professor
![Page 23: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/23.jpg)
Drawbacks of Stam’s Method
• Can’t evaluate patches with more than one extraordinary points
• One level subdivision is needed which increases memory and transfer bandwidth
• Unfitted for animation
![Page 24: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/24.jpg)
Geometry Patches4 4 3 3
3 3,4 ,4
1 1 0 0
( , ) ( ) ( ), ( , ) ( ) ( )
( , ) [0,1] [0,1]
ij i j ij i ii j i j
u v N u N v u v B u B v
u v
P P B b
11P
31P
41P
21P
42P
24P
12P 13P 14P
32P 33P
23P22P
34P
43P44P
00b
20b
30b
10b
31b
13b
01b 02b 03b
21b 22b
12b11b
23b
32b 33b
![Page 25: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/25.jpg)
Exchange of Basis functions
3 2 3 31,4 4,4 0 3
1 3 3 1 1 4 1 03 6 3 0 0 4 2 01 1( ( ),..., ( )) ( , , ,1) ( ( ),..., ( )) 3 0 3 0 0 2 4 06 6
1 4 1 0 0 1 4 1
N t N t t t t B t B t
[0,1]t
4 4
,4 ,41 1
311 12 13 14 0
321 22 23 243 3 1
0 331 32 33 34
41 42 43 44
( , ) ( ) ( )
1 4 1 0 1 0 0 0 ( )0 4 2 0 4 4 2 1 ( )1 1 ( ( ),..., ( ))0 2 4 0 1 2 4 46 60 1 4 1 0 0 0 1
ij i ji j
u v N u N v
B vB v
B u B uB
P P
P P P PP P P PP P P PP P P P
3233
3 33 3
0 0
( )( )
( ) ( ) ( , )ij i ji j
vB v
B u B v u v
b B
![Page 26: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/26.jpg)
Masks for Bicubic Uniform B-Spline
• Interior point:
• Edge point:
• Corner point:
2 114 29
2 11 8 4
182 1
1 4 11 4 16 4
361 4 1
![Page 27: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/27.jpg)
Generalized Masks
• Interior point:
• Edge point:
• Corner point:
2 1125 nn
2 11 2 4
2 102 1n
n
1( 5)n n
n2 4
141
4
4
1
![Page 28: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/28.jpg)
Tangent Patches
2 3 2 32 3 2 3
1,0 0 0 0
3 2 3 23 2 3 2
, 10 0 0 0
( , ) ( ) ( )3( ) ( ) ( )
( , ) ( ) ( )3( ) ( ) ( )
i j i j ij i j iji j i j
i j i j ij i j iji j i j
u v B u B v B u B vu
u v B u B v B u B vv
B b b u
B b b v
As geometry patches can only meet with C0, so boundaries of tangent patches must be modified
![Page 29: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/29.jpg)
Masks for Tangent Patch Corners
u00
0
e0f0
en-1
e1
e2
f1fn-1
2
2
1 cos( / )( ) cos(2 / ),4 cos ( / )1 )cos((2 ) / ), 0,1,..., 1.
4 cos ( / )
i
i
ne i nn n n
f i n i nn n
![Page 30: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/30.jpg)
Tangent Patch Edges
22
00
3 33 3
0 00 0
( ) ( )
ˆ ˆ( ) ( ) , ( ) ( )
i ii
i i i ii i
t B t
t B t t B t
u u
v v v v
Purpose: G1 smooth along boundary curve u(t)
0 1
10 0 10 1 00
10 0 10 1 00 11 10
ˆ((1 ) ) ( ) ( ( ) ( )) / 2cos(2 / ), 0,1.
(2 ) / 3 ,ˆ (2 ) / 3 , 3( ).
i i
t c tc t t tc n i
c cc c
u v v
v u u xv u u x x b b
![Page 31: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/31.jpg)
Results
![Page 32: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/32.jpg)
More Results
![Page 33: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/33.jpg)
Comparisons with other Methods
two subdivisions
PN Triangles: Valchos et al.2001
PCCM: Peters, J. 2000
![Page 34: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/34.jpg)
More Comparisons
one subdivision
![Page 35: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/35.jpg)
Piecewise Smooth Subdivision Surfaces with Normal Control
Henning Biermann Adi Levin Denis Zorin New York University Tel Aviv University New York University
Proceedings of SIGGRAPH 2000
![Page 36: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/36.jpg)
Problems of Previous Subdivision Rules
• No suitable C1 rules for boundary
• Folds may result on concave corners
![Page 37: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/37.jpg)
Eigen analysis
2 10
,1 ,2 ,31
2 10
1 1 1 1 11
, ( , , ).
, ( , ,..., ) .
n
i i i i i ii
nm m m T
i i ii
a a a
P a x a
P S P a x P a x a a a
0 11 1
1
2 3 2
( , , ,..., , ) , , 1,..., 2 1.
1, (1,1,...,1) ;
; 1, 4.
T i in n
i i i
Ti
i
i n
i
P v e f e f P SPSx x
xv e1
f1e2
f3
e3
e4
f2
en fn
2 1
2 2 2 3 31 4 2 2 3 3
2 11 2 2 3 3
2 2 2 3 34
( ), 2,..., 2 1.
( )
nm j j m j
m j ji i ij im n j j
m j j m jji i i
i
x x xx x j nx xx x x
a a aP a a aP a a aa a a
![Page 38: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/38.jpg)
Tagged Meshes
• Edge tags: edges are tagged as crease edges to control the behavior of meshes
• Vertex tags Crease vertex Corner vertex Dart vertex
• Sector tags Convex sector Concave sector
![Page 39: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/39.jpg)
Subdivision Rules• Masks for vertex points
Untagged and dart vertices: standard Crease vertex: 1/8 —— 3/4 ——1/8 Corner vertex: interpolated
• Masks for face points: standard
an bn
cnbncn
bn
bn2
2
714
321
4
n
n
n
an
bn
cn
![Page 40: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/40.jpg)
Subdivision Rules
• Masks for Edge point Untagged edge: standard Crease edge: midpoint One end tagged edge:
1163
4
116
116
116
3 1( ) cos8 4
2 / (dart); / (crease); / ( corner).
k k
k k kk
![Page 41: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/41.jpg)
Flatness and Normal Modification
• Flatness modification for concave corners
• Normal modification
0 01 1 2 2 3 3(1 ) ( )
0 1, flatness parameters s
s
P P a x a x a x
0 02 2 2 3 3 3
ˆ (( ) ( ) ) 0 1. ( , ) , is a prescribed normal direction.i i i
tt
N N N
P P a a x a a x
a a a
![Page 42: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/42.jpg)
Results
![Page 43: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/43.jpg)
Normal Interpolation
![Page 44: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/44.jpg)
More Results
![Page 45: Parameterization of Catmull-Clark Subdivision Surfaces](https://reader036.vdocuments.site/reader036/viewer/2022062323/56815bd4550346895dc9c681/html5/thumbnails/45.jpg)
Thanks!