1 / 27

Geometry Clipmaps: Efficient Terrain Rendering Using Nested Grids

Geometry Clipmaps is a method for real-time terrain rendering, providing visual continuity without temporal pops. The primary dataset covers the United States with 20 billion samples. This approach offers concise storage, real-time frame rates of 60 fps, and no paging hick-ups. The technique involves using nested regular grids for efficient terrain synthesis and compression. By storing data in uniform 2D grids with levels of detail, the system achieves simplicity, compression, and steady rendering. The method involves clipmap updates and terrain synthesis through noise textures, while maintaining optimal rendering throughput and visual quality.

juliejones
Télécharger la présentation

Geometry Clipmaps: Efficient Terrain Rendering Using Nested Grids

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. Geometry Clipmaps:Terrain Rendering Using Nested Regular Grids Frank Losasso Stanford University Hugues Hoppe Microsoft Research

  2. Terrain Rendering Challenges Mount Rainier • Concise storage  No paging hick-ups • Real-Time frame rates  60 fps • Visual continuity  No temporal pops Primary Dataset: United States at 30m spacing20 Billion samples Olympic Mountains

  3. Previous Work • Irregular Meshes (e.g. [Hoppe 98]) • Fewest polygons • Extremely CPU intensive • Bin-trees (e.g. [Lindstrom et al 96]) • Simpler data structures / algorithms • Still CPU intensive • Bin-tree Regions (e.g. [Cignoni et al 03]) • Precomputed regions  Decreased CPU cost • Temporal continuity difficult

  4. Previous Work • Texture Clipmaps [Tanner 1998] • ‘Infinitely’ large textures • Clipped mipmap hierarchy • Modeling for the Plausible Emulation of Large Worlds [Dollins 2002] • Quadtree LOD around viewer • Terrain synthesis

  5. Geometry Clipmaps • Store data in uniform 2D grids • Level-of-Detail from nesting of grids • Refine based on distance • Main Advantages • Simplicity • Compression • Synthesis

  6. Terrain as a Pyramid • Terrain as mipmap pyramid • LOD using nested grids Coarsest Level Finest Level

  7. Puget Sound

  8. Individual Clipmap Levels • Uniform 2D grid • Indexed triangle strip • Efficient caching • 60 M triangles/second • 255-by-255 grid • Expected Soon: • Vertex Textures

  9. Inter-Level Transitions • Between respective power-of-2 grids

  10. Inter-Level Transitions No transition Geometry transition Geometry & texture transition Gaps in geometry Gaps in texturing/shading

  11. Inter-Level Transitions • Vertex shader  blend geometry • Pixel shader  blend textures • Both are inexpensive

  12. Clipmap Update • For each level • Calculate new clipmap region • Fill new L-shaped region • Use toroidal arrays for efficiency

  13. Clipmap Update • Update levels coarse-to-fine • Use limited update budget • Only render updated data • Fine levels may be cropped • Rendering load decreases as update load becomes to large for the budget

  14. ‘Filling’ New Regions • Two Sources: • Computed on-demand  at 60 frames/second Decompressed explicit terrain Synthesized new terrain

  15. Clipmap Update • Fine level from coarse level • U is a 16 point C1 smooth interpolant • For synthesized terrain, X =Gaussian noise • For explicit terrain, X = compression residual

  16. Terrain Synthesis • Adds high frequency detail • Upsample then add Gaussian noise • Precomputed 50-by-50 noise texture • Per-octave amplitude from real terrain

  17. Texture Synthesis

  18. Subdivision Interpolant Bilinear Interpolant (C0) 16-point Interpolant (C1)

  19. Terrain Compression • Create mipmap fine-to-coarse • D found from data such that:

  20. Terrain Compression • Calculate residuals coarse-to-fine • Upsample and compute inter-level residual • Quantize and compress residual • Replace approximation  Prevent error accumulation

  21. Compression Results • U.S height map • 30m horizontal spacing • 1m vertical resolution • 216,000-by-93,600 grid • 40GB uncompressed • 350MB compressed  factor of over 100 • rms error 1.8m (6% of sample spacing)

  22. Compression Results

  23. Level-of-detail Error • Analyzed statistically  See paper • For U.S. terrain (640-by-480 resolution) • rms error = 0.15 pixels • max error = 12 pixels • 99.9th percentile = 0.90 pixels

  24. United States of America

  25. Graphics Hardware Friendly • Can be implemented in hardware • Clipmap levels as high-precision textures • Subdivision and normal calculation [Losasso et al 03] • Morphing already done in hardware • Noise from Noise() or from texture • Uploaded on-demand • Decompressed terrain

  26. Limitations • Statistical error analysis • Assumes bounded spectral density • Unnecessarily many triangles • Assumes uniformly detailed terrain but, allows for optimal rendering throughput

  27. Advantages • Simplicity • Optimal rendering throughput • Visual continuity • Steady rendering • Graceful degradation • Compression • Synthesis

More Related