Top Banner
Progressive Meshes Progressive Meshes Hugues Hoppe Hugues Hoppe Computer Graphics Group Computer Graphics Group Microsoft Research Microsoft Research SIGGRAPH 96 SIGGRAPH 96 S
22

Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Mar 26, 2015

Download

Documents

Charles Maynard
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Progressive MeshesProgressive Meshes

Hugues HoppeHugues HoppeComputer Graphics GroupComputer Graphics Group

Microsoft ResearchMicrosoft Research

SIGGRAPH 96SIGGRAPH 96

SS

Page 2: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Complex meshesComplex meshes

43,000 faces43,000 faces43,000 faces43,000 faces lots of faces!lots of faces!lots of faces!lots of faces!

Challenges:Challenges:- rendering- rendering- storage- storage- transmission- transmission

Page 3: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

ContributionsContributions

New mesh simplification procedureNew mesh simplification procedure preserve preserve appearanceappearance (colors, normals, …) (colors, normals, …)

New representation: New representation: progressive meshprogressive mesh losslesslossless continuous-resolutioncontinuous-resolution efficientefficient progressiveprogressive

Page 4: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Traditional mesh representationTraditional mesh representation

VV FF

(appearance attributes:(appearance attributes: normals, colors, textures, ...normals, colors, textures, ...))

mesh mesh MM

Vertex 1 xVertex 1 x11 y y11 z z11

Vertex 2 xVertex 2 x22 y y22 z z22

……

Face Face 11 2 3 2 3Face 3 2 4Face 3 2 4Face 4 2 7Face 4 2 7……

Page 5: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

PreviousPreviousWorkWork Mesh simplificationMesh simplification

13,00013,000[Schroeder-etal92][Schroeder-etal92][Turk92][Turk92][Hoppe-etal93][Hoppe-etal93][Rossignac-Borrel93][Rossignac-Borrel93][Cohen-etal96][Cohen-etal96]......

1,0001,000 200200

??

Page 6: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

PreviousPreviousWorkWork Level-of-detail (LOD)Level-of-detail (LOD)

[Clark76][Clark76][Funkhouser93][Funkhouser93]distancedistance

from viewer?from viewer?distancedistance

from viewer?from viewer?

closeclose farfar

10,00010,000 2,0002,000 1,0001,000 500500 250250

Concern: transitions may “pop”Concern: transitions may “pop”

would like smooth LOD would like smooth LOD

Page 7: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

New mesh simplification procedureNew mesh simplification procedure

Idea: apply sequence of edge collapses:Idea: apply sequence of edge collapses:

ecol(vecol(vs s ,v,vt t , , vvss ))

vvll vvrr

vvtt

vvss

vvssvvll vvrr

(optimization)(optimization)

’’

SS

’’

Page 8: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Simplification processSimplification process

13,54613,546 500500 152152 150150

MM00MM11MM175175

ecolecol00ecolecoliiecolecoln-1n-1

M=MM=Mnn^̂

Page 9: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Invertible!Invertible!

Vertex split transformation:Vertex split transformation:

vvssvvll vvrr

vspl(vvspl(vs s ,v,vl l ,v,vr r , , vvss ,,vvtt ,…),…)

vvll vvrr

vvtt

vvss

SS

’’ ’’’’

’’

attributesattributes

Page 10: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Reconstruction processReconstruction process

150150

MM00 MM11

vsplvspl00

152152

MM175175

500500

… … vsplvsplii … …

13,54613,546

vsplvspln-1n-1

MMnn=M=M̂̂

progressive mesh (PM)progressive mesh (PM) representation representation

vsplvspl00 … … vsplvsplii … … vsplvspln-1n-1

MM00 MMnn=M=M̂̂

SS VV

Page 11: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Application: Continuous-resolution LODApplication: Continuous-resolution LOD

From PM, extract From PM, extract MMii of any desired complexity. of any desired complexity.

MM00 vsplvspl00 vsplvspl11 vsplvspli-1i-1 vsplvspln-1n-1

MMii

3,478 faces?3,478 faces?3,4783,478

MM00 MMnn=M=M̂̂MMii

100K100K faces/sec! faces/sec!200K200K faces/sec! faces/sec!(166 MHz Pentium)(166 MHz Pentium)

VV

Page 12: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Property: Vertex correspondenceProperty: Vertex correspondence

MMnn MM00MMccMMff

vv11

vv22

vv33

vv44

vv55

vv66

vv77

vv88

vv11

vv22

vv33

MMf-1f-1

vv11

vv22

vv33

vv44

vv55

vv66

vv77

ecolecol

MMf-2f-2

vv11

vv22

vv33

vv44

vv55

vv66

ecolecol ecolecol

Page 13: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Application: Smooth transitionsApplication: Smooth transitions

Correspondence is a surjection:Correspondence is a surjection:

vv11

vv22

vv33

vv44

vv55

vv66

vv77

vv88

MMff

vv11

vv22

vv33

MMcc

can form a smoothcan form a smooth visual transition: visual transition: geomorphgeomorph

VV FF

MMffcc

VV

VV

Page 14: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Space overhead of PM ?!Space overhead of PM ?!Application: Mesh compressionApplication: Mesh compression

vvssvvll vvrr

vvll vvrr

vvtt’’

vvss’’

Record deltas:Record deltas: vvtt - v - vss vvs s - v- vss ……

’’’’

Encoding of Encoding of vsplvspl records: records: connectivity: ~ good triangle stripsconnectivity: ~ good triangle strips attributes: excellent delta-encodingattributes: excellent delta-encoding

[Deering95][Deering95]

vspl(vvspl(vs s ,v,vl l ,v,vr r ,,

vvss ,,vvtt ,…),…)’’ ’’

Page 15: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Application: Progressive transmissionApplication: Progressive transmission

Transmit records progressively:Transmit records progressively:

MM00 vsplvspl00 vsplvspl11

ReceiverReceiver displays: displays:

timetime

MM0 0

vsplvspli-1i-1

MMii

vsplvspln-1n-1

MM̂̂(~ progressive JPEG)(~ progressive JPEG)

Page 16: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Application: Selective refinementApplication: Selective refinement

MM00 vsplvspl00 vsplvspl11 vsplvspli-1i-1 vsplvspln-1n-1

(e.g. view frustum)(e.g. view frustum)

SS

Page 17: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

How to select edge collapses?How to select edge collapses?

Preserve Preserve appearanceappearance:: geometric shapegeometric shape scalar fieldsscalar fields (e.g. color) (e.g. color)

discontinuity curvesdiscontinuity curves

E e e dA e dLshape scalars disc ( ) ( )face areas disc. edges

pointspoints pointspoints

SS

Page 18: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Selecting edge collapsesSelecting edge collapses

Greedy algorithm: always collapse edge Greedy algorithm: always collapse edge resulting in smallest resulting in smallest EE

Simplification rates: ~ 30 faces/secSimplification rates: ~ 30 faces/sec off-line processoff-line process could use simpler heuristicscould use simpler heuristics

Page 19: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

PreviousPreviousWorkWork Multiresolution analysisMultiresolution analysis (MRA) (MRA)

[Lounsbery-etal93] [Eck-etal95] [Certain-etal96][Lounsbery-etal93] [Eck-etal95] [Certain-etal96]

base meshbase meshbase meshbase mesh

wavelet coefficients (detail)wavelet coefficients (detail)wavelet coefficients (detail)wavelet coefficients (detail)

SS

Page 20: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

Comparison with MRAComparison with MRA

Advantages of MRAAdvantages of MRA encodes geometry & color independentlyencodes geometry & color independently supports multiresolution editingsupports multiresolution editing

Advantages of PMAdvantages of PM losslesslossless more accuratemore accurate captures discrete attributescaptures discrete attributes captures discontinuitiescaptures discontinuities

Page 21: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

SummarySummary

PMPM

VV FF

MM̂̂

MM00

vsplvspl

continuous-resolutioncontinuous-resolution smooth LODsmooth LOD space-efficientspace-efficient progressiveprogressive

losslesslossless

single resolutionsingle resolution

SS VV

Page 22: Progressive Meshes Hugues Hoppe Computer Graphics Group Microsoft Research SIGGRAPH 96 S.

DemoDemo

166 MHz Pentium166 MHz Pentium

3D Labs graphics card (~$250)3D Labs graphics card (~$250)

Windows 95 + DirectXWindows 95 + DirectX