CS 551/651: Advanced Computer Graphics

17
David Luebke 1 06/19/22 CS 551/651: Advanced Computer Graphics Regulating Level of Detail

description

CS 551/651: Advanced Computer Graphics. Regulating Level of Detail. Level of Detail. Problem: even after visibility, model may contain too many polygons Idea: reduce complexity further by managing level of detail (LOD) A.k.a. multiresolution modeling A.k.a. polygonal simplification - PowerPoint PPT Presentation

Transcript of CS 551/651: Advanced Computer Graphics

Page 1: CS 551/651:  Advanced Computer Graphics

David Luebke 1 04/22/23

CS 551/651: Advanced Computer Graphics

Regulating Level of Detail

Page 2: CS 551/651:  Advanced Computer Graphics

David Luebke 2 04/22/23

Level of Detail

Problem: even after visibility, model may contain too many polygons

Idea: reduce complexity further by managing level of detail (LOD)

A.k.a. multiresolution modeling A.k.a. polygonal simplification

My favorite ter

Page 3: CS 551/651:  Advanced Computer Graphics

David Luebke 3 04/22/23

LOD In A Nutshell

Create levels of detail (LODs) of each object in a preprocess:

50 Vertices 500 Vertices 2000 Vertices

Model courtesy of InfoGraphica

Page 4: CS 551/651:  Advanced Computer Graphics

David Luebke 4 04/22/23

LOD In A Nutshell

Distant objects use coarser LODs:

Page 5: CS 551/651:  Advanced Computer Graphics

David Luebke 5 04/22/23

Creating LODs

How to create LODs of a polygonal object? Where should we simplify the object and where

should we preserve detail? What mechanism to generate a version of the

object with fewer polygons?

Page 6: CS 551/651:  Advanced Computer Graphics

David Luebke 6 04/22/23

Creating LODs

What criteria should we try to preserve in the simplified object? A: Its visual appearance

Silhouettes matter (so what do we do?) Large flat regions can be simplified Watch for distortion of texture/color/normals

We often measure fidelity with geometric criteria: Volume swept out by displaced surface Distance from old surface to new surface

Can use this to estimate silhouette distortion in screenspace

Page 7: CS 551/651:  Advanced Computer Graphics

David Luebke 7 04/22/23

Creating LODs

How to generate a version of the object with fewer polygons? Four basic mechanisms:

Sample-and-reconstruct Decimation Vertex-merging Adaptive subdivision

Page 8: CS 551/651:  Advanced Computer Graphics

David Luebke 8 04/22/23

Creating LODs: Mechanism

Sample and reconstruct Scatter surface with sample points, then recreate

using fewer sample points than original surface had vertices

Where to put the sample points? One answer: scatter at random, then let them repel

each other How to recreate surface from samples? A: Good question! (interesting, hot topic)

Page 9: CS 551/651:  Advanced Computer Graphics

David Luebke 9 04/22/23

Creating LODs: Mechanism

Decimation Iteratively remove faces or vertices, retriangulating

hole created in current surface during the process (draw it)

Triangulation: well understood problem One common algorithm: Loop splitting

Pick which face/vertex to remove based on important criteria

Curvature, size of associated triangles

Page 10: CS 551/651:  Advanced Computer Graphics

David Luebke 10 04/22/23

Creating LODs: Mechanism

Vertex merging Collapse multiple vertices together and remove

degenerate triangles Edge collapse: Specific form of vertex merge

operating on exactly two vertices that share an edge

Removes exactly two (adjacent) triangles Why might this be preferable? Why not?

Page 11: CS 551/651:  Advanced Computer Graphics

David Luebke 11 04/22/23

Creating LODs: Mechanism

Adaptive subdivision Create a very simple base model that represents the

model Selectively subdivide faces of base model until

fidelity criterion met (draw) Big potential application: multiresolution modeling

Page 12: CS 551/651:  Advanced Computer Graphics

David Luebke 12 04/22/23

Algorithm 1: Rossignac-Borrel

Rossignac and Borrel, 1992 Apply a uniform 3D grid to the object Collapse all vertices in each grid cell to single

most important vertex, defined by: Curvature (1 / maximum edge angle) Size of polygons (edge length)

Filter out degenerate polygons

Page 13: CS 551/651:  Advanced Computer Graphics

David Luebke 13 04/22/23

Rossignac-Borrel

Resolution of grid determines degree of simplification Coarse grid lots of simplification Fine grid little simplification

Representing degenerate triangles Edges use OpenGL line primitive Points use OpenGL point primitive

Page 14: CS 551/651:  Advanced Computer Graphics

David Luebke 14 04/22/23

Rossignac-Borrel

Low and Tan, 1997 Refinement of Rossignac-Borrel

Use cos(max edge angle/2) for curvature Floating-cell clustering Thick lines and dynamic shading

Page 15: CS 551/651:  Advanced Computer Graphics

David Luebke 15 04/22/23

Rossignac-Borrel

Pros Fast, very fast Robust (topology-insensitive)

Cons Difficult to specify simplification degree Low fidelity (topology-insensitive) Underlying grid creates sensitivity to model

orientation in Rossignac-Borrel

Page 16: CS 551/651:  Advanced Computer Graphics

David Luebke 16 04/22/23

Rossignac-Borrel

Rossignac-Borrel examples:

10,108 polys 1,383 polys 474 polys 46 polys

Courtesy IBM

Page 17: CS 551/651:  Advanced Computer Graphics

David Luebke 17 04/22/23

The End