1 / 17

CS 551/651: Advanced Computer Graphics

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

rachel
Télécharger la présentation

CS 551/651: Advanced Computer Graphics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS 551/651: Advanced Computer Graphics Regulating Level of Detail David Luebke 17/26/2014

  2. 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 David Luebke 27/26/2014

  3. 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 David Luebke 37/26/2014

  4. LOD In A Nutshell • Distant objects use coarser LODs: David Luebke 47/26/2014

  5. 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? David Luebke 57/26/2014

  6. 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 David Luebke 67/26/2014

  7. Creating LODs • How to generate a version of the object with fewer polygons? • Four basic mechanisms: • Sample-and-reconstruct • Decimation • Vertex-merging • Adaptive subdivision David Luebke 77/26/2014

  8. 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) David Luebke 87/26/2014

  9. 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 David Luebke 97/26/2014

  10. 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? David Luebke 107/26/2014

  11. 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 David Luebke 117/26/2014

  12. 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 David Luebke 127/26/2014

  13. 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 David Luebke 137/26/2014

  14. 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 David Luebke 147/26/2014

  15. 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 David Luebke 157/26/2014

  16. Rossignac-Borrel • Rossignac-Borrel examples: 10,108 polys 1,383 polys 474 polys 46 polys Courtesy IBM David Luebke 167/26/2014

  17. The End David Luebke 177/26/2014

More Related