07 progressive meshes - computer...
TRANSCRIPT
Rendering Complex Meshesg
860 000 f !860 000 f !860,000 faces!860,000 faces!This was in 1996, no GPU!
2
And in 2010?
• Fast rendering is done in hardware– Prefer GPU processing to CPU processing– Discrete LOD more efficient– Latest GPUs can handle more than 1G polygons/sec
• So why should we care?Other applications efficient transmission– Other applications – efficient transmission
– Mobile devicesNice algorithm– Nice algorithm
3
Discrete Level-of-Detail
50 000 faces10 000 faces2 000 f 50,000 faces10,000 faces2,000 facespop pop
4
Progressive Meshesg
50 000 faces10 000 faces2 000 f 50,000 faces10,000 faces2,000 faces
progressive mesh representationview-independent LODlinear sequence
5
Progressive Meshesg
• Different representation of triangular meshesp g
• Simplify meshes through sequence of edgecollapse transformationscollapse transformations
• Record sequence of inverse transformations (vertex splits)
6
Simplifications: Edge Collapseg
vecol(va, vb)
vl vr
va
vb
vl vr
vb(optimization)
45673 ∆ 10100 ∆ 1024 ∆ 176 ∆45673 ∆ 10100 ∆ 1024 ∆ 176 ∆
... ... ...
... ... ...
7
ecoln-1 ecoli ecol0
Progressive Meshesg
150 152 500 13,546152 ,
base mesh original mesh
M0 … M175 …M1 Mn
original mesh
8
Progressive Meshesg
150 152 500 13,546,
b h i i l h
M0 M1 … M175 … Mn
base mesh original mesh
vuvertex split
vl vr
vt
vsvl vr
edge collapse
9
edge collapse
The PM Representation
150 152 500 13,546,
MM00
llM1 M175
ll llMMnn
l l lM0 Mn
vsplvspl00 … … vsplvsplii …… vsplvsplnn--11
progressive mesh (PM) representation
vspl0 … vspli … vspln-1
M0 MnMi
12
Application: Continuous-Resolution LOD
• From PM, extract Mi of any desired complexity
M0 vspl0 vspl1 vspli-1 vspln-11024 faces
Mi
M0 Mi Mn=M
13
Property: Vertex correspondence
Mn M0
McMf
v1 v1
Mf-1
v1
Mf-2
v1M Mv1
v2
v3
v1
v2
v3
v1
v2
v3
v1
v2
v3ecol ecol
v4
v5
v6
v4
v5
v6
ecolv4
v5
v66
v7
v8
6
v7
6
Application: Smooth transitions
Correspondence is a surjection:
v1
Mf
v1
Mc
1v2v3v
v1v2v3
Mf↔c
v4v5v6 f th
V FV6
v7v8
→ can form a smoothvisual transition: geomorph
V
Mesh Compressionvspl(vs ,vl ,vr ,
)’ ’
vvl vr vl vr
vt’ Record deltas:
v - v’
vs ,vt ,…)’ ’
vsl r l r
vs’vt - vs
vs - vs’
…Encoding of vspl records:Encoding of vspl records:
connectivity: ~ good triangle stripstt ib t ll t d lt diattributes: excellent delta-encoding
Progressive Transmissiong
Transmit records progressively:p g ytime
M0 vspl0 vspl1 vspli-1 vspln-1
M0
Mi
Receiver displays:Mi
Mn
(progressive JPEG, MPEG-4)
18
(p g , )
Selective refinement
MM00 vsplvspl00 vsplvspl11 vsplvsplii--11 vsplvsplnn--11
(e.g. view frustum)(e.g. view frustum)
PM Benefits
traditional mesh progressive mesh
V F M0lossless
vsplit
• single resolution• progressive transmission
ti l tisingle resolution • continuous-resolution• smooth LOD• geometry compression
• Optimization process– various metrics (speed vs. accuracy)
20
– typically performed off-line
View-Independent LOD: Difficulties
distant
backfacing
100 000 foutside
i f t100,000 faces view frustum
Vertex Hierarchy
0
y
PM vspl5vspl4vspl3vspl2vspl1vspl0
M0
M0PM:
v1v10 v11
v1
v8 v9
v3
v
v2
v4 v5
M0 v2v1 v3
vv12 v13
1010 11 v8 v9
v6 v7
5
v4 v5
Mn
v14 v15
6
24
Selective Refinement
vspl2vspl1 vspl2 vspl3 vspl4vspl0 vspl5vspl4vspl3vspl0 vspl1M0 vspl2
v v
v3
v v v
v3
v
v1
v2
v v v
v3
vvv v
v1
v
v2
v v
v2v1 v3M0
v8 v9
v6 v7
v5 v8 v9v11
v4 v8 v9
v7
v5
v12 v13
v10
v6
v10 v11
v12 v13
v10 v4 v5
6 7712 13
v14 v15
612 13
selectively refined mesh
Restrictions?
25
Restrictions?
Runtime algorithmv1 v2 v3
gM0 v3
v5v10 v11 v4 v8 v9v10 v11v10 v11 v4v4 v8 v9v8v8 v9v9v11v10 v4 v8 v9
v7v12 v13 v6v12 v13v12 v6v6 v7v7v7
v14 v15v14 v15v14 v15v15 new meshv14 v15previous mesh
Refinement Criteria
• 3 criteria:– view frustum– surface orientationsurface orientation– screen-space geometric error
27
(1) View Frustum( )
too high too far rightview is unchanged
29
too high too far rightview is unchanged
(3) Screen-space Geometric Error
tolerance=0.5 pixelstolerance 0.5 pixels
refinement near silhouette coarser in distance
31