Uploaded June 2024 | Updated September 2026, 2 hours ago
This is the project video of Amar Tabakovic's bachelor thesis at the Computer Science Department of the Bern University of Applied Sciences in the spring semester of 2024.
Terrains are an important part of various practical computer graphics applications, such as video games, flight simulators, and geographical information systems. Since terrains are expensive to render, special rendering optimizations, such as level of detail (LOD). Besides the rendering performance, another important aspect of terrain rendering is the management of terrain data. Terrain datasets that are too large to fit entirely in memory must be streamed in from the disk or over the network and streamed out of memory.
This thesis describes the implementation of StreamingATLOD, a large-scale terrain rendering system with LOD capable of rendering the Earth by streaming in height data and satellite imagery from web APIs based on the XYZ tiling scheme. StreamingATLOD is currently built around the data and APIs from the company MapTiler, which serves height data tiles and satellite imagery tiles. Both layers come projected in the Web Mercator projection and are used up to zoom level 14, corresponding to a precision of 9.5 meters per pixel.
The implemented terrain LOD algorithm is mainly based on Chunked LOD. The terrain is organized as a quadtree, where each quadtree node represents a section of the terrain at the resolution of the node’s depth. Each node gets rendered with heightmap displacement in the vertex shader followed by a projection onto the globe. To hide cracks between adjacent nodes, skirts are rendered. The Web Mercator projection cuts off at a latitude of 85.05◦, resulting in holes at the North and South Pole. These holes get covered with a circular pole mesh. Terrain sections that are not visible are culled with view-frustum culling and horizon culling.
For more information see: github.com/AmarTabakovic/bachelor-thesis
This is the project video of Amar Tabakovic's bachelor thesis at the Computer Science Department of the Bern University of Applied Sciences in the spring semester of 2024.
Terrains are an important part of various practical computer graphics applications, such as video games, flight simulators, and geographical information systems. Since terrains are expensive to render, special rendering optimizations, such as level of detail (LOD). Besides the rendering performance, another important aspect of terrain rendering is the management of terrain data. Terrain datasets that are too large to fit entirely in memory must be streamed in from the disk or over the network and streamed out of memory.
This thesis describes the implementation of StreamingATLOD, a large-scale terrain rendering system with LOD capable of rendering the Earth by streaming in height data and satellite imagery from web APIs based on the XYZ tiling scheme. StreamingATLOD is currently built around the data and APIs from the company MapTiler, which serves height data tiles and satellite imagery tiles. Both layers come projected in the Web Mercator projection and are used up to zoom level 14, corresponding to a precision of 9.5 meters per pixel.
The implemented terrain LOD algorithm is mainly based on Chunked LOD. The terrain is organized as a quadtree, where each quadtree node represents a section of the terrain at the resolution of the node’s depth. Each node gets rendered with heightmap displacement in the vertex shader followed by a projection onto the globe. To hide cracks between adjacent nodes, skirts are rendered. The Web Mercator projection cuts off at a latitude of 85.05◦, resulting in holes at the North and South Pole. These holes get covered with a circular pole mesh. Terrain sections that are not visible are culled with view-frustum culling and horizon culling.
For more information see: github.com/AmarTabakovic/bachelor-thesis







