3D Terrain Engine
Uses a LOD technique similar to geo-mimaps; has custom vector and matrix library with hierarchical bounding boxes and frustum culling.
The sample is 512 * 512 on P4 2.4C on Radeon 9500 Pro. (9800 Pro was state of the art back then.) Yellow lines show where the LOD changes. Requires DX9 and VC 7.0 runtime.
It pre-computes terrain tiles; each tile rendered as a single tri-strip - which by itself speeds up the rendering of a tile by more than 5x. Combined with fast quad-tree frustum culling and progressive mesh refinement, it can render extremely large number of triangles - as can be seen by the dense mesh closer to the camera. For texturing, it uses a base and a detail texture.
The controls in the demo are not polished. The goal was to get a LOD rendering working without cracks in the mesh. Also, the camera model allows you to pan the scene as well as orbit it. At any orbit point, you can do a complete 360 degrees in the vertical plane. Basically you can cover complete rho, theta and phi range.
You have to reset the scene after startup by pressing the space key
and then zoom out using shift + mouse move
. Then you can see the terrain. The zip file contains a document html file for controls.