Terrain LOD on Spherical Grids
Square heightfields are fine for many purposes, but eventually some applications need spherical
surfaces like the earth.
- one possibility: apply the same kind of RTIN approach as the conventional
CLOD algorithms to a spherical tessellation composed of right triangles, e.g.
- the tetrakishexahedron (vrml),
basically a cube with its faces split into 4 right triangles, though it
could also be thought of as a tetrahedron with each face split into 6 equal
- however, the triangles do not remain perfect right triangles after the
- Stephen Hugg's Exoflight
- space simulator for the real planets of the solar system
- has paging and CLOD for the planet elevations and textures!
- he describes: "I have multiple-level texture and elevation blocks. The
bottom level is 256x128, after that all tiles are 254x254 + a 1 pixel border.
I use separate passes for the color and bumpmapping, which are loaded/generated
in a background thread. Mapping is cylindrical, and all tiles are optional
(you can leave out high-detail tiles at the poles, for instance)."
- "The algorithm is ROAM with a octahedron mesh. The vertex
coordinates are generated from the texture coordinates. The first 5 or so
levels are precomputed in a 128KB tree. Vertex coords are float, tex coords
Gerstner. Multiresolution Compression and Visualization of Global Topographic
- academic paper describing a ROAM-like tessellation of the globe based
on regular geographic coordinates
- oceans are depressed to preserve coastlines
- a global error values allows decimation (compression) of the whole dataset
before runtime, the tree structure allows high-resolution insets (their
example uses the city of Bonn)
ROAM to a Sphere by Sean O'Neil, on Gamasutra
- article describing a simple extension of ROAM to a spherical set of
- Sean chose to use a triangulated cube as his starting point, but it
should work as well, or better, to use any polyhedron with more faces
- Radon Labs "Nebula Device" engine
- has notes online describing their terrain engine:
- "The renderer is based on Thatcher Ulrich's adaptive LOD terrain
renderer featured in Gamasutra, with the following changes:
- its wrapped around a sphere
- uses double buffered vertex buffers, and reuses shared vertices
- other extensions, look for "Thatcher" under "Release Notes" for
Vectory has pages about their
- Based on an icosahedron with recursive subdivision
- Claims to efficiently page so that only a few MB are ever in memory
- The described algorithm is a lot like spherical ROAM, with splitting
priorities and neighbor criteria for LODs
- In 2007, they published an SDK (ovPlanet) of their planetary terrain engine,
closed-source but free for non-commercial use.
- Dr. Typo's planet engine
- A planetary rendering demo (closed source) which shows spherical LOD,
bump mapping, noise detail texture, atmospheric glow. Demo datasets
of Mars and Earth.
- Apparently last updated in 2003, no current contact for author.
Spherical Earth, Continuous LOD and Paging of Elevation and Texture
Very little software is yet capable of doing all of these things together.
Here are the currently known implementations:
- Autometric EDGE (closed, high-end application; seems to have vanished when
Boeing bought Autometric)
- VGIS (possibly discontinued
TerraVision/T-Vision (from 1994-96, now possibly discontinued project)
are many schemes for subdividing and indexing feature on a sphere. Not
directly related to LOD, but more likely useful for other operations such as
optimized geographical queries.
- A Seamless Global
Terrain Model in the Hipparchus System
- proposes a pseudoregular global "grid" of Voronoi polygons as the basis
for producing seamless global TINs
- Hierarchical Triangular Mesh (HTM)
- The approach uses an octahedron at its base, then subdivides in the
normal geodesic way.
- Described in two 2005 papers by Jim Gray et al.: