Terragen

From Sirikata Wiki
Revision as of 18:49, 29 August 2011 by Ben.christel (talk | contribs) (created page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Terragen is a web-based terrain generation utility created by Ben Christel. It can be found here. It is designed to produce very-large-scale terrain (large islands and small continents) suitable for virtual worlds.

Using Terragen

Terragen has several parameters that can be set by the user to produce different types of terrain. After setting the parameters, the user clicks a button to generate a 2D map of the terrain which doubles as the texture if the user wishes to create a mesh of the terrain. Terragen can output Collada (.dae) meshes, albeit hackishly. The Terragen page contains instructions for exporting Collada.

Parameters

The key function of Terragen is to produce a heightmap, which is essentially a 2D grid, each vertex of which has a numeric value which represents the height of the terrain at that point. Once the heightmap has been produced, it is relatively simple to draw the terrain map and create the 3D model of the terrain. The algorithm that produces the heightmap can take several parameters as input. Following is a description of each of them.

Scale

The Scale parameter must be greater than 0. A large Scale results in a zoomed-in, detailed map of a small area, while a small Scale produces a zoomed-out view of a large region.

Continental Shelf Height

The Continental Shelf Height must be between 0 and 10, inclusive. It specifies how high the continents are above the sea floor. More accurately, it controls the maximum amplitude of the function that determines the continental shelf height at every point on the plane. See the section on Algorithms for a description of this function.

Noise

The Noise parameter controls the amount of random noise that is added to the heightmap. Its value must be between 0 and 10, inclusive.