Terrains

Source

Procedural

Generate a terrain from math and magic (actually more math). The procedural terrain engine uses several algorithms depending on the terrain type.

From Heightmap

Generate the terrain from a heightmap file. This can be any image Blender supports, as well as ASC (Gridded ASCII) and HGT files.

Destination

Object

Create a mesh object

Heightmap

Create a heightmap image

Detail Level

The detail level setting controls how many vertex the terrain mesh will have. Increasing the level of detail will increase calculation time and memory usage.

Mirage offers three basic levels: normal, medium and high. There’s also a custom option to fine tune the level of detail (see below)

Terrain meshes are created from a plane subdivided in segments. The vertex count results from how many segments are used. For instance, the Normal level of detail has 128 segments, resulting in 16,384 vertices (128x128 = 16,384).

Normal and Medium are usually good enough for everything (specially when used with subdivision and multires). High is great if you are creating a massive terrain and don’t plan on changing it much.

Mirage will always generate the same terrain for the same seed, so you can use the different detail levels to bake higher detail into meshes with less geometry. Check the Blender manual for more information on baking

Warning

Watch out for memory usage when generating many terrains with high detail levels. Blender will keep data around for undo, making RAM usage grow and grow. Save and restart Blender if you see memory usage in the info bar growing too big.

Custom detail level

It’s also possible to select a custom level of detail besides the basic three. Simply select Custom in the detail level menu.

You can pick different amount of rows/columns, which creates rectangular terrains.

Settings for Procedural terrains

Size

Size of the terrain object in the scene

Scale

Scale of the terrain. A smaller scale creates a terrain representing a smaller area (like a few square meters).

Height

Maximum height of the terrain

Offset

The noise that generates the terrain is infinite, the actual terrain is only a “window” into it. The offset setting lets you move that “window” in the X and Y axis.

Rotation

Let’s you rotate the terrain without rotating the object

Seed

This is a number used to initialize the terrain algorithm. Different values will produce different terrains, however a specific seed will always generate the same.

Auto-seed (clock icon)

Use a different seed every time a terrain is generated. The seed value will be updated, so you can un-tick it if you find a seed value you would like to keep.

Terrain Type

Changes the Terrain type

Diorama

_images/terrain_diorama.jpg _images/terrain_diorama_mat.jpg

Generates a cube that can be used to represent a cross-section of the ground below the terrain. This modifier extends terrain generation underground, creating a Diorama-like effect.

The cube is an indepentent object parented to the terrain. It also has all its transformations locked for convenience.

Due to limitations in Blender API, the diorama cube can’t be auto updated when the terrain is modified (for instance sculpted). To make the diroama fit an updated terrain, look for the Update Diorama button in the tools panel.

This setting controls the height of the diorama cube. This will not change the position of the terrain, the cube grows “down” instead.

Types of procedural terrains

Mirage uses different algorithms to create different looking terrains. The terrains type setting lets you switch between them. Each terrain type has different options related to the algorithm, and the kind of terrain it generates.

Future versions of Mirage will progresively add more terrain types.

Basic

A classic terrain based on fractal noise. Similar to earlier versions of Mirage.

Breakup

How many bumps and differences in height the terrain has

Roughness

General roughness of the terrain

Smooth Hills

Creates smooth rolling hills and valleys.

Difference

Height difference between flat areas and hills. This can be used to control how flat the terrain is.

Flat Land

Increases the amount of flat areas between hills by increasing their slope.

Detail

Adds some extra noise to generate smaller bumps and details. A detail of zero creates a silky smooth terrain.

Twist

Controls how much the terrain twists on the X/Y axis. This can be used to create hills that “roll” into each other.

Mountains

Creates rocky, mountainous terrains.

Ridgedness

Controls how “peaky” the terrain is. Ridgedness can be used to create mountain ranges.

Sharpness

Controls how “sharp” the terrain looks. It makes the changes in the terrain more abrupt.

Breakup

Controls the medium level of detail. A higher breakup generates more noise and variation.

Roughness

Adds extra noise to add more detail to the terrain.

Twist

Controls how much the terrain twists on the X/Y axis.

Settings for terrains from heightmaps

Heightmap File

This input sets the map to use. These can be either heightmaps, STRM, or Gridded ASCII files.

_images/terrain_file_selector.png

A heightmap (also know as heightfield) is a greyscale image representing elevation data. You can find them online by googling, or from websites like Natural Earth

Note

If you want to know more about heightmaps check this Wikipedia article.

STRM stands for Shuttle Radar Topography Mission. These files usually have a .HGT extension and contain elevation data obtained during the SRTM by NASA and the National Geospatial-Intelligence Agency (NGA).

Gridded ASCII files usually have an extension of .ASC and are plain-text based. That means you can open them in a text editor to inspect or edit. Gridded ASCII is a intermediate exchange format and not something intended for primary input/output. You might find them as an export option in GIS software.

Both STRM and Gridded ASCII files are converted to heightmaps internally. You can find the image files in the UV/Image editor and save them as separate files in case you want to have heightmaps of these files.

To select a file click the Select a Heightmap button and navigate to the file. Note that once you select a heightmap you will see a preview of it, and the button’s text will change to the name of the image file. You can click the preview to see a list of heightmaps you have previously loaded.

Strength

How strong the displacement is (vertical scale of features)

Size

Sets the size in real world units

Diorama

Same as Dioramas for procedural terrains

Modifiers

These are optional effects that can be applied to the terrain.

Terraces

Terraces is a step-like landform. It consists of many flat or gently sloping surfaces. You can have as little as 2 terraces and as many as 12.

Each terrace happens at a specific percentage of the height of the terrain. A terrace set to 0% or 100% will not create a terrace per se, and will have little effect on the landscape. On the other hand, if there are no terraces at 100% height the terrain will have plateaus. If there are no terraces at 0% the terrain will have a plain at the bottom, at the height of the lowest terrace.

This modifier replaces the old strata modifier, plateau and sea floor settings.

_images/terrain_terraces.jpg
Terraces

Amount of terraces

Invert Slope

Invert the direction of the slope between steps

Each terrace also has two settings:

Terrace #

The slope at which the terrace appears

Slope

The smoothness of the slope

Thermal Erosion

Simulates loosening and clumping of soil because of temperature changes.

_images/terrain_thermal.jpg
Repose Angle

Angle at which the terrain material piles without slumping. Decreasing the angle will flatten the terrain more. It’s also know as the Talus angle.

Strength

Set how much this effect changes the terrain

Water Erosion

Simulates erosion caused by rain and/or springs. Rain falls randomly over the entire terrain, while springs are located in a specific place and add a constant amount of water. Springs can be used to carve rivers, though they might require a high level of erosion or a lot of simulation time.

_images/terrain_fluvial.jpg
Time

How many times to run the algorithm

Rain

Amount of rain for each iteration

Erosion

Amount of sediment moved each iteration

Evaporation

How much water evaporates each iteration (percentage per grid square)

Springs

How many springs to use. Each spring has a location, radius and an amount of water to add each time the algorithm runs.

Smooth

Gradually lower the height of the terrain to zero. This can be done along one or two axis independently (linear) or in a circular way (radial).

For the Linear factor these settings are repeated twice, for the X and Y axis.

_images/terrain_smooth_radial.jpg _images/terrain_smooth_linear.jpg
Type

The type of falloff: Linear or Radial

For radial smoothing:

Factor

The smoothing factor

Size

Radius of the smoothing effect

For linear smoothing:

Factor

The smoothing factor

Smooth Start

Set the position along the axis where the smoothing begins

Invert

Invert the direction of the effect along it’s axis.

For Edges smoothing:

Apply on X axis

Smooth edges on the X axis

Apply on Y axis

Smooth edges on the Y axis

Pixelate

_images/mods_pixelate.jpg

Creates a blocky terrain

Block Size

Size of the blocks composing the terrain

Invert

Invert the terrain heights.

_images/terrain_proc_invert.jpg
Factor

The strength of the invert effect

Island

_images/mods_island.jpg

Simulates an island by applying a mask on top of the terrain, making parts of it flat.

Seed

Seed for the noise mask for the island

Slope

Inclination of the slope where the island meets the sea

Elevation

General height of the island

Breakup

Noise size. Make the island silhouette more detailed and creates more small islands

Size

Size of the island itself

Roughness

Roughness of the island noise. Generates a more subtly detailed island.

Noise Intensity

Strength of the noise mask effect. Increasing this goes from a single large island to several smaller islands.

Seamless

_images/terrain_seamless.jpg

Makes the terrain tileable by connecting the edges of the terrain. It works by taking opposing edges and interpolating between them, then setting the result of that interpolation as the new edges. Finally, the new edges are blended with the terrain over several columns or rows. This last step can be controlled with the transition setting.

Transition

How much to blend the repeated borders towards the center of the terrain. I recommend keeping this high, so it looks more natural.

Data maps

Generate vertex groups or vertex paint layers based on the terrain’s slope and height