31
4.4. LEVEL OF DETAIL Exploration of 3D mesh level-of-detail approaches

4 . 4. Level of Detail

  • Upload
    makoto

  • View
    49

  • Download
    0

Embed Size (px)

DESCRIPTION

4 . 4. Level of Detail. Exploration of 3D mesh level-of-detail approaches. Level of Detail. Exploration of 3D mesh level-of-detail approaches. Level of Detail (LOD). - PowerPoint PPT Presentation

Citation preview

Page 1: 4 . 4. Level of Detail

4.4. LEVEL OF DETAILExploration of 3D mesh level-of-detail approaches

Page 2: 4 . 4. Level of Detail

LEVEL OF DETAILExploration of 3D mesh level-of-detail approaches

Page 3: 4 . 4. Level of Detail

Level of Detail (LOD)Level of detail (LOD) involves decreasing the complexity of a rendered object as it moves away from the viewer (or according to some other metric, e.g. importance, eye-space speed, etc.).

Using LOD, the workload on the graphical pipeline is reduced (usually in terms of vertex transformations)The reduced visual quality of the model is often unnoticed because of the small effect on object appearance when distant or moving fast.

Page 4: 4 . 4. Level of Detail

Types of LOD

Three core types of LOD technique can be defined:

• Discrete LOD: constructing a number of discrete models of varying level of detail• Continuous LOD:

encoding a continuous spectrum of detail from coarse to fine• View-dependent

LOD: adjusting detail across the model in response to the viewpoint

Page 5: 4 . 4. Level of Detail

Discrete LOD

This is the simplest approach – at run-time the appropriate LOD need only be selected and rendered.

The approach works well with current GPUs as each LOD can be stored in a GPU friendly manner (triangle strips, cache-aware vertex arrays) which render faster than the immediate-mode triangles often used in CLOD.

The downside of DLOD is the potential for popping when swapping between LODs. Also, in theory, CLOD has higher fidelity. Finally, DLOD is not particularly suitable for large objects or small object combination.

Page 6: 4 . 4. Level of Detail

Continuous LOD

Whilst DLOD builds a number of pre-processed static views of the object, continuous LOD (CLOD) builds a data structure from which a desired level of detail can be extracted at run time.

The advantages of CLOD include better fidelity (as the LOD is explicitly built, not preselected from some pre-created options). CLOD also provides better granularity (i.e. smoother transitions, visual pops are less of an issue).

Page 7: 4 . 4. Level of Detail

View-Dependent LODView-Dependent LOD can be viewed as a type of CLOD which takes into account the viewing angle, i.e. the algorithm allocates polygons where they are most needed, within as well as among objects, based on where the viewpoint is currently focussed.

The key advantage of view-dependent LOD is that is permit very large objects to have high detail for those portions close to the viewpoint and less detail for those portions far away from the camera.

Page 8: 4 . 4. Level of Detail

LOD Selection CriteriaWhen selecting which LOD to use, relevant selection criteria can include: • distance• on-screen pixel size• environment factors• view point

DistanceThe distance from the view point to the object (nearest point or simply mid point) is simple and quick to compute.

Page 9: 4 . 4. Level of Detail

LOD Selection Criteria

Size Select resolution based upon the projected screen size (or area) of an element. Objects appear smaller as they move further away. This requires a 3D to 2D projection in order to determine the screen projection.

Aside: Bounding

spheres or ellipsoids

normally used instead of boxes as

more efficient to

calculate projected

extent

Page 10: 4 . 4. Level of Detail

DLOD Preventing Popping

Different techniques can be used to lessen the visual impact of DLOD popping, including:• hysteresis (the

lagging of an effect behind its cause)• geomorphs• alpha-blending

Page 11: 4 . 4. Level of Detail

DLOD Preventing Popping

HysteresisDifferent trigger points (e.g. distances) are used to determine when to switch up/down between LODs. This reduces the effects of models continuously switching at a threshold.

Priority SchemesA priority is assigned to each object based on the semantic importance of the object (likely significance/focal point for the user). High priority objects will use a higher LOD than less significance objects.

Page 12: 4 . 4. Level of Detail

DLOD Preventing PoppingAlpha-BlendingBy blending between two LODs (in image space) it provides a means of fading in the new LOD whilst fading out the old LOD, thereby reducing the visual impact of changing LOD from a visual pop to a more gradual morph.

Page 13: 4 . 4. Level of Detail

Other areas of LOD applicationThe concept of LOD can applied to more than geometric detail.

For example, mipmapping is a form of texture based LOD which provides higher rendering quality by avoiding aliasing effects when a large texture is applied to a small screen area.

Page 14: 4 . 4. Level of Detail

Other areas of LOD applicationLOD techniques can also be applied to shader management to reduce the render cost of distance pixels, e.g. bump mapping, etc. can be removed, multiple textures can be reduced to a single texture (or even colour), etc.

Page 15: 4 . 4. Level of Detail

Improved LOD using normal mappingOriginal model

(250k triangles)

Page 16: 4 . 4. Level of Detail

Improved LOD using normal mappingPhong Shading

(8k triangles)15 pixel error

Page 17: 4 . 4. Level of Detail

Improved LOD using normal mappingNormal Mapping

(8k triangles)15 pixel error

Page 18: 4 . 4. Level of Detail

Improved LOD using normal mappingPhong Shading

(1k triangles)78 pixel error

Page 19: 4 . 4. Level of Detail

Improved LOD using normal mappingNormal Mapping

(1k triangles)78 pixel error

Page 20: 4 . 4. Level of Detail

TERRAIN LOD TECHNIQUESExploration of different terrain LOD techniques

Page 21: 4 . 4. Level of Detail

Terrain LOD Techniques

Terrain rendering provids an obvious target for LOD techniques given the typical terrain size and the need to provide up-close detail alongside far-off terrain features.

Development of terrain LOD algorithms has included:• ROAM• Geomipmaps• Chunked LOD• Geometry clipmaps

Page 22: 4 . 4. Level of Detail

Real-time optimally adapting mesh (ROAM)

ROAM is a CLOD algorithm for terrain meshes.

It uses pre-processed bintree triangles alongside a split and merge process to construct the terrain mesh.

ROAM is CPU intensive and, for current hardware, the cost benefit of using ROAM to reduce the number of polygons sent to be rendered is typically not justified (i.e. it is faster to save CPU time and send some unneeded polygons to the GPU).

Page 23: 4 . 4. Level of Detail

GeomipmapsGeomipmaps applies the notion of a image mipmap to a geometric representation (typically using a heightmap texture)

The heightmap (or a square portion of the height map) is scaled down to provide coarser representations (parallel image mipmapping).

At run time, the geomipmap is selected based on the on-screen LOD error using the current viewport.

Geomorphing is often used (morphing from one LOD to another) to avoid the visual ‘popping’ of terrain when the selected LOD fragment changes.

Page 24: 4 . 4. Level of Detail

Chunked LODChunked LOD extends geoclipmaps by constructing a quad-tree of terrain chunks, which provides more detail as the leaves of the tree are approached.

Chunked LOD improves upon geomipmapping as it reduces the number of individual mesh renders that must be performed.

Page 25: 4 . 4. Level of Detail

Geometry clipmapsGeometry clipmaps (which parallel texture clipmaps) use a set of nested regular grids centered about the viewer.

The grids are stored in video memory as vertex buffers and contain filtered versions of the terrain at power-of-two resolutions. As the viewpoint moves, the clipmap levels shift and are incrementally refilled with data

Page 26: 4 . 4. Level of Detail

Video not available in on-line slides

Page 27: 4 . 4. Level of Detail

DIRECTED READINGDirected reading concerning LOD and terrain rendering

Directed

reading

Page 28: 4 . 4. Level of Detail

Directed reading: General LODDirected

reading

• Read Chapter 2 (Mesh Simplification) from Level of Detail for 3D Graphics – for general mesh LOD techniques• Read Chapter 3

(Simplification Error Metrics) from Level of Detail for 3D Graphics – for information on how to measure LOD differences• Read Chapter 4 (Runtime

Frameworks) from Level of Detail for 3D Graphics – for information on how LOD can be implemented at runtime

Page 29: 4 . 4. Level of Detail

Directed reading: Terrain LOD Directed

reading

• Read ROAMing Terrain: Real-time Optimally Adapting Meshes – for information on ROAM• Read Fast Terrain Rendering

Using Geometrical MipMappings – exploring geomipmapping• Read Rendering Massive

Terrains Using Chunked Level of Detail Control – explore chunked LOD• Read Geometry Clipmaps:

Terrain Rendering Using Nested Regular Grids – for information on geoclipmaps

Page 30: 4 . 4. Level of Detail

Directed reading: Terrain LOD Directed

reading

• Read Survey on Semi-Regular Multiresolution Models for Interactive Terrain Rendering – for a comparative review of some terrain LOD techniques.• Read GPU Gems 2 - Terrain

Rendering Using GPU-Based Geometry Clipmaps – for more information on geoclipmaps• Read Terrain Rendering

using Spherical Clipmaps – for a spherical approach to geoclipmaps

Page 31: 4 . 4. Level of Detail

Summary

To do:Read the directed

readingThink if you would like

to explore mesh or terrain LOD techniques for your project

Today we explored:

Different types mesh LOD technique

Terrain LOD techniques