L3DT documentation
Large 3D terrain generator

L3DTVi2 algorithms

General

L3DTVi2 is written in Delphi using the GLScene library. To render terrain, L3DTVi2 uses GLScene's terrain renderer, which includes a hybrid ROAM - brute force tessellation method that gives distant horizons while maintaining moderate triangle counts.

Rendering water

Water is rendered in L3DTVi2 as a second heightfield, which allows multi-level and non-flat water.

techshot6.jpg
Screenshot from L3DT viewer (forerunner of L3DTVi2), showing water
rendered as a heightfield. Note lakes at different altitude to sea.

Detail map

Most 3D terrain renderers modulate the ground textures with a high-resolution greyscale 'detail map' to provide the illusion of highly detailed textures. In L3DTVi2 this is done twice at different resolutions using a vertex shader program, which provides even greater detail.

high_detail.jpg
Pretty foreground in L3DTVi2 thanks to detail map.

The detail map used in L3DTVi2 is shown below:

detailmap.jpg
The greyscale detail-map.

 
l3dtvi2/algorithms.txt · Last modified: 2017/08/31 06:38 (external edit)
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki