Game Development Reference
In-Depth Information
GPU Terrain Subdivision
and Tessellation
Benjamin Mistal
This paper presents a GPU-based algorithm to perform real-time terrain subdi-
vision and rendering of vast detailed landscapes. This algorithm achieves smooth
level of detail (LOD) transitions from any viewpoint and does not require any
preprocessing of data structures on the CPU.
There are a lot of existing terrain rendering and subdivision algorithms that
achieve fantastic results, and fast frame rates. Some of these algorithms, however,
are limited. They can require the preprocessing of large data sets, constant
transferring of large data sets from the CPU to the GPU, limited viewing areas,
or complex algorithms to merge together meshes in efforts to avoid cracks and
seams as a result of various LOD subdivision techniques.
The GPU-based algorithm we developed addresses all of the above mentioned
limitations, and presents a simple alternative to render highly detailed landscapes,
without significant impact on the CPU. Figure 1.1 shows an example of this
algorithm and also shows the generated underlying wire-frame mesh partially
We describe a GPU-based algorithm to create a subdivided mesh with distance-
based LOD that can be used for terrain rendering. Data amplification and multi-
ple stream-out hardware capability are utilized to repeatedly subdivide an area to
achieve a desired LOD. In addition, culling is also performed at each iteration of
the algorithm, therefore avoiding a lot of unnecessary processing or subdivision of
areas outside of the viewing frustum. Because the resulting data is retained and
refined on the GPU, the CPU is mostly left available to perform other tasks. To
show a practical use of this technique, we also utilize a smooth LOD transition-
ing scheme, and use a procedural terrain generation function to provide real-time
rendering of a highly detailed and vast landscape.
Search Nedrilad ::

Custom Search