Fun With Wilbur Volume 1

Wilbur 1.64 is a terrain editor. More properly, a heightfield editor. The newest version can be found at http://www.ridgenet.net/~jslayton/software.html whenever you need a copy. For this set we will play with a height field to get it to look something like an eroded landscape. The instructions are fairly sparse bu you should be able to follow along easily enough.

Create a Random area

There are many way to generate noise fields in Wilbur. For now we’ll go with the simplest option, the Fractal Noise filter. It’s also the fastest as it will take advantage of multiple processor cores if available.

Filter>>Noise>>Fractal Noise

Fill Basins

One of the important features of eroded terrains is that they all have drainage. Terrains except for those in relatively arid regions such as the American Southwest or parts of Asia such as the Taklimakan desert or Caspian Basin have external drainage. That is, they are connected to the sea by rivers. Broadly, any basins are filled with sediments and/or water. There is no good way to do water indicators in Wilbur so we’ll fill in the basins with sediment to get continuous external drainage. The basin filling technique and code is courtesy of Olivier Planchon and is described in his 2001 Paper: Planchon, O. and Darboux, F., 2001. A fast, simple and versatile algorithm to fill the depressions of digital elevation models.

Filter>>Fill>>Fill Basins, use default -1 value

Span a range of heights

The current altitudes are in the range of 0 to around 2. We want larger values for ease of use.

Filter>>Mathematical>>Span, Low = 1000, High = 2000

Add a little random noise

The Basin Fill operation left smooth patches where the depressions were. They are a bit too flat, in fact. A little noise will prevent the water flow from tracking in straight lines across the surface.

Filter>>Noise>>Percentage Noise, 5%

Fill Basins (again)

We do want the external drainage to be connected, though, so we’ll do the fill basins thing again.

Filter>>Fill>>Fill Basins

Incise Flow

The Incise Flow filter computes flow across the surface and then removes amounts proportional to the flow amount. There is a useful feature that the result will never go below 0. Amount is a direct scaling of the calculated result, and combined with Effect Blend (the amount of the result that is applied to the surface) allows for creation of flat-bottomed valleys.

Filter>>Erosion>>Incise Flow

Fill Basins (yes, again. There’s a reason that it’s hotkeyed to Ctrl+B)

There is a small misfeature of the Incise Flow operation that it can leave little depressions at the places where flows join. Filling basins again will fix these.

Filter>>Fill>>Fill Basins

Incise Flow one more time

Now use a smaller-width river (smaller blur = smaller channel) that’s not as deep to get the effect of valleys with channels down them.

Filter>>Erosion>>Incise Flow

Set Map Extents

Now we want to look at the 3D view. However, the surface is defined from -1 to +1 in X and Y but from 1000 to 2000 vertically. The 3D preview is rather primitive and won’t show anything with those conditions. The easiest solution is to move the edges out from the center as shown below.

Surface>>Map Information

3D View

It’s a very basic 3D view. It’s not automatically tied to operations in the main window, so you’ll want to hit Update on the window after operations that you want to preview.

Windows>>3D Preview Window

Facing Direction

Sometimes it’s nice to see what direction a patch is facing. This is described as an Azimuth angle map or a Phase map or a Facing map.

Texture>>Grayscale Phase Shader OR Surface>>Gray Maps>>Azimuth (Phase) Map

Drainage Areas

Sometimes it’s also nice to see drainage areas. The drainage areas are the number of cells that are upstream of the current cell. It’s a computationally expensive operation, but it’s multi-core aware so not as bad as it might be.

The coloration is an encoded 24-bit number with the low 8 bits in red, middle 8 bits in green, and upper 8 bits in blue.

Texture>>Other Maps>>Drainage Areas

Remap Altitudes

There are many operations that can be performed in Wilbur, but Remap Altitudes lets you specify an arbitrary function. Here we’ll used a function that generates mesa-type steps.

Filter>>Other>>Remap Altitudes

Fluvial Erosion

Wilbur sports a fluvial erosion model in addition to the incise flow operation. Incise flow requires a connected drainage system for best effect. The fluvial erosion system works either way. Wilbur uses a fluvial erosion model based on the precipitin or waterbot models. It randomly drops an agent onto the surface and that agent travels downhill, moving altitude from the higher cell to the lowest one adjacent to the current one until it finds a low spot.

Filter>>Erosion>>Precipiton-Based