Tessellation based Terrain Rendering
Abstract
Modern Graphics Processing Units (GPU) exhibit a high degree of parallelism and over the years have grown to adopt an increasing number of techniques to speed-up photorealistic rendering. One such technique is tessellation, i.e. the recursive subdivision of object elements into finer or coarser parts with the aim of achieving the appropriate amount of detail. The aim of this thesis is an adaptive tessellation algorithm for terrain rendering which can highlight important parts of the terrain while maintaining reasonable performance. This algorithm needs to be crack-free to avoid pixel faults between adjacent patches. A prototype was created in OSG, with GLSL shaders. The adaptive tessellation used three tessellation selection factors based on distance, a tessellation map and normals. An OSG program with five GLSL shaders (vertex, tessellation control, tessellation evaluation, geometry and fragment) was created for the tessellation of the terrain. The greatest advantage of tessellation is the reduced bandwidth between memory and GPU. Tessellation improves FPS, because it's faster to control vertices on the GPU than on the CPU.