Download presentation

Presentation is loading. Please wait.

Published byZoe Monroe Modified over 3 years ago

1
Geometry Clipmaps: Terrain Rendering Using Nested Regular Grids Frank Losasso Stanford University Frank Losasso Stanford University Hugues Hoppe Microsoft Research Hugues Hoppe Microsoft Research

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

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 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 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 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 Coarsest Level Finest Level Terrain as mipmap pyramid LOD using nested grids Terrain as mipmap pyramid LOD using nested grids

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 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 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 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 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 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 C 1 smooth interpolant For synthesized terrain, X = Gaussian noise For explicit terrain, X = compression residual Fine level from coarse level U is a 16 point C 1 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 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 (C 0 ) 16-point Interpolant (C 1 )

19
Terrain Compression Create mipmap fine-to-coarse D found from data such that: 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 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) 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 LOD scheme Number of samples Runtime space Bytes per sample Hoppe [98] 8 M50 MB6.0 Lindstrom [02] 256 M5.0 GB19.5 Cignoni et al [02] 64 M115 MB1.8 Geometry Clipmaps 20 G375 MB0.02

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.9 th percentile = 0.90 pixels Analyzed statistically See paper For U.S. terrain (640-by-480 resolution) –rms error = 0.15 pixels –max error = 12 pixels –99.9 th 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 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 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 Simplicity Optimal rendering throughput Visual continuity Steady rendering Graceful degradation Compression Synthesis

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google