User Tools

Site Tools


This is an old revision of the document!


Creating Height-Maps for your Terrains

The shapes of the terrains that you can create with The New Terrain Tool are defined by height-maps. A height-map is usually a square gray-scale image whose black pixels represent the lowest heights (0%) and whose fully white pixels describe the highest heights (100%). The gray values between them represent intermediate height values – the brighter a pixel, the higher is the resulting terrain at that spot.

CaWE and Cafu support height-maps in all the image file formats that are also supported for textures (jpg, png, tga and bmp), as well as Terragen (ter) and portable graymap (pgm) files. The image file formats usually have a precision of 8 BPP (bits-per-pixel), while the ter and pgm formats have a much higher precision of 16 BPP, and are therefore the preferred choice for height-maps.

Height-maps must also meet the additional requirement of having side lengths of (2n+1) * (2n+1) pixels, where n is an integer between 1 and 15. Examples of typical height-map dimensions are 129*129, 257*257, 513*513 and 1025*1025.

Programs for Creating and Editing Height-Maps

Creating and editing high-quality height-maps can be a complicated and demanding process that typically requires the assistance of specialized software. I've intensively tested many software packages for this purpose, many of which just don't meet the requirements. Typical problems include limited or broken importers and exporters (e.g. only to and from proprietary file formats), limits in the supported high-map dimensions (e.g. only 2n * 2n, not 2n+1 * 2n+1), usability, stability (e.g. frequent crashes) and the inability to switch off the “relative height editing mode”, which seemingly allows users to dig deeper than 0% or raise terrain higher than 100% by adjusting the relative height of all other terrain.

The following lists mentions several programs that I consider useful or relevant for creating and editing height-maps. None of them is perfect or can do everything that is needed all in one program, so you might be also interested in reading the [ FIXME Link to tutorial about how the TechDemo terrain was made. ] tutorial.

CaWE

The obvious and best choice for editing the height-maps of terrain entities is CaWE.

It is possible to edit and modify height-maps directly in the 3D view of CaWE, in a “live” manner that naturally and immediately shows the interactions with other elements of the map, as for example brush-based buildings and walls, other entities, etc. For more information about the terrain tool please check here

Note that although CaWE would be the ideal place for height-map editing and modification, it is not necessarily the best place for height-map creation. Although that would be and will be possible, too, other programs below that are specialized on height-map creation may do a much better job in creating the initial height-map, especially if very large, natural-looking shapes are desired. In such cases, you would use another program to create the initial height-map, then add it to your map in “rough” form using The New Terrain Tool, and then continue to edit the fine details in CaWE, for example the alignment with buildings, other brushes, etc. You may want to have a look at the [ FIXME Link to tutorial about how the TechDemo terrain was made. ] tutorial in this regard.

Regular 2D Applications

Although not meant to visualize the actual 3d surface itself, nearly all 2d applications are able to provide a decent way of creating a highmap. However most of these methods are more likely to create a basic uneven surface that can then be altered inside the Cafu Editor for more precise interaction with bsp or mesh based geometry.

While most terrain specific tools offer much more natural control over the final result (like eroding based on water and wind) almost every 2d application can provide hightmaps.

Noise filter (like perlin noise) are very powerful and can create a wide variety of surface distortions that are great as a base. There are many different applications out there commercial and free, yet we would like to prefer free ones.

Gimp (Freeware)

Obviously the most common freeware 2d application, that mimics the commercial Adobe Photoshop in many ways and beyond. It matured over the years into a reliable 2d package and should be considered as a professional tool. By using filter and custom brushes it is a very good way to start a decent highmap

Gimp is loacted here: http://www.gimp.org/

Create basic landscape http://springrts.com/wiki/Height_Map_Tutorial

Flash based (Freeware)

Despite the negative critiqe of the last months, Flash is still a powerhorse. There are Flash apps amazingly versatile for editing, and they are always available as long as there is a web connection

Sumopaint offers a lot of tools and filter to create highmaps http://www.sumopaint.com/app/
Pixlr offers a similiar experience like sumo http://pixlr.com/
SplashUp another flash based 2d app http://www.splashup.com/

World-Machine

This program has become my favourite for height-map creation, see the manufacturers website at http://www.world-machine.com/ for more details. I also used it to create the height-map for the Cafu TechDemo with it. While it does not allow to “paint-edit” very fine details in a height-map, it is very good at composing logically structured terrains in a repeatable manner. The features of all logical devices that are used to build a height-map can be edited independent of each other, allowing for very flexible, reproducible results.

Leveller (Commercial)

Looks like it offers quite a few different tools to work with, however the price of 199 dollar is way to much and there is not much indication about when the last update actually took place.

Terragen

This is the software for terrain rendering, but due to it's “relative height editing mode” I'd not recommend it for height-map creation or editing. Terragen is very good though at generating a base (ground) texture from a height-map! See FIXME

Other Programs

If you have experience with other programs, please add them here.

There are several other good programs, but I don't use them often. Maybe one of them has released a new version in the meanwhile that addresses some of the problems of older versions, so it might be worthwhile to have a look at them! For example, for basic terrain creation, programs like TerraBrush, Terraformer 1.8b or TerraMaker already do a good job.

Summary

Use any of the above mentioned programs for creating the initial height-map. Future versions of CaWE will allow you to further edit these maps conveniently in the editor. If you must fine-tune them before that, patience and creativity is required, although the above programs will help with that, too.

Once your height-map is complete enough for use, you'll also want to have a base texture for it that represents the color of the ground and is used in the material definition with which your terrain is rendered. While the texturing of the terrain might be possible in future versions directly in CaWE, too, I currently just import my height-maps into Terragen for this purpose, make sure the dimensions (lateral size and altitudes) are correct, setup the Terragen materials, set the sun appropriately (full-bright and no shadows) and turn off all atmospheric effects, set an orthogonal camera view and then use the Terragen rendering result as the base texture.

mapping/creatingterrainheightmaps.1284987086.txt.gz · Last modified: 2013-01-07 12:07 (external edit)