07 progressive meshes - computer...

37
Progressive Meshes Based on slides by H. Hoppe

Upload: hoangkhue

Post on 19-Apr-2018

221 views

Category:

Documents


3 download

TRANSCRIPT

Progressive Meshes

Based on slides by H. Hoppe 

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 M1 M175 MMnn

10

The PM Representation

11

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

Smooth transitions

• Movie

16

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

View-dependent LOD

29 400 f29,400 faces different LOD’s coexistover surface

Parent-child Vertex Relations

vs

vsplit

vt vu

23

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( )

28

(1) View Frustum( )

too high too far rightview is unchanged

29

too high too far rightview is unchanged

(2) Surface Orientation( )

oriented awayview is unchanged

30

oriented awayview is unchanged

(3) Screen-space Geometric Error

tolerance=0.5 pixelstolerance 0.5 pixels

refinement near silhouette coarser in distance

31

All Three Criteria Togetherg

69,473 faces → 10,528 faces

32

1.9 frame/sec → 6.7 frame/sec

Video

33

Extensions: Progressive Deforming Meshes

34

Progressive Deforming Meshesg g

35

Progressive Deforming Meshesg g

Video

36

References• “Progressive meshes”, H. Hoppe, Siggraph ’96

• “View-dependent refinement of progressive meshes”, H. Hoppe, Siggraph ’97

• “Progressive multiresolution meshes for deforming surfaces”, Kircher et al., SCA ‘05

37