A brush tool for creating erosion. It generates an effect of realistic hydraulic action, weathering and sediment under your mouse cursor, setting both heights and terrain textures.
Add Erosion Brush component (Erosion Brush folder -> Erosion Brush DLL -> Erosion Brush) to Unity terrain object. If the terrain is empty (new one) add some humps that should be eroded.
To use brush turn on “Paint” checkbox. Paint terrain with erosion or noise.
A checkbutton that turns erosion or noise painting on/off. When painting is on it is terrain editing with standard Unity tools is not possible, so terrain component is disabled when “Paint” is checked. To enable terrain editing turn off paint mode.
Erosion that is caused mainly by water factors - rains and torrents. It will erode terrain (make a little canons where torrents flow) and return raised sediment in hollows. Moreover, it uses wind algorithm on convex surfaces - because hydraulic erosion does not work properly without wind.
Technically it is a perlin noise algorithm, that is auxiliary to hydraulic erosion. It can help to create preliminary terrain to erosion, or modify or enhance created terrain.
Size of the brush in Unity units. Bigger brush size gives better terrain quality, but too big values can slow painting. Brush size is displayed as bright blue circle in scene view.
Decrease of brush opacity from center to rim. This parameter is specified in percent of the brush size. It is displayed as dark blue circle in scene view. Brush inside of the circle has the full opacity, and gradually decreases toward the bright circle.
When pressing and holding mouse button brush goes on making stamps. Script will not place brush at the same position where old brush was placed, but in a little distance. This parameter specifies how far from old brush stamp will be placed new one (while mouse is still pressed). It is specified in percent of the brush size.
To perform quick operation on heightmaps of large size brush resolution could be scaled down. This will give less detail, but faster stamp. Takes the original height or splat map, scales it down, calculates erosion in lower resolution, and then upscales it back. Value of one means that there is no downscale.
The amount brush stamp should be blurred before apply. This parameter is very useful together with the downscale: faceted downscaled data could be blurred to give smooth result.
Baserock resistance to water erosion. Low values erode terrain more. Lowering this parameter is mainly needed to reduce the number of brush passes (iterations), but will reduce terrain quality as well.
Durability: 0.01 and 1. Note that right picture is almost not eroded.
This parameter sets how liquid sediment (bedrock raised by torrents) is. Low parameter value will stick sediment on sheer cliffs, high value will allow sediment to drain in hollows. As this parameter sets number of iterations, increasing it to very high values can slow down performance.
Fluidity iterations: 1 and 5
Amount of bedrock that is washed away by torrents. Unlike sediment amount, this parameter sets the amount of bedrock that is subtracted from original terrain. Zero value will not erode terrain by water at all.
Erosion amount: 0.1 and 2
Percent of bedrock raised by torrents that returns back to earth ) Unlike erosion amount, this parameter sets amount of land that is added to terrain. Zero value will not generate any sediment at all.
Sediment amount: 0 and 2
Wind sets the amount of bedrock that was carried away by wind, rockfall and other factors non-related with water erosion. Technically it randomly smoothes the convex surfaces of the terrain. Use low values for tropical rocks (as they are more influenced by monsoon, rains and water erosion than by wind), and high values for highland pikes (as all streams freeze at high altitudes)
Wind: 2 and 0 (with low erosion, sediment and smooth values).
Applies additional smoothness to terrain in order to fit brush terrain into an existing terrain made with Unity standard tools. Low, but non-zero values can remove small pikes made by wind randomness or left from water erosion. Use low values if your terrain heightmap resolution is low.
Blur: 0 and 1
Number to initialize random generator. With the same brush size, noise size and seed the noise value will be constant for each heightmap coordinate.
How much noise affects the surface (i.e. brush opacity).
Noise value: 10 and 20
Sets the size of the highest iteration of fractal noise. High values will create more irregular noise. This parameter represents the percentage of brush size.
Noise size: 0.1 and 1.5
Defines the bias of each fractal. Low values sets low influence of low-sized fractals and high influence of high fractals. Low values will give smooth terrain, high values - detailed and even too noisy.
Noise Detail: 0 and 1.5
When value is 0, noise is subtracted from terrain. When value is 1, noise is added to terrain. Value of 0.5 will mainly remain terrain on the same level, lifting or lowering individual areas.
Erosion brush can paint terrain with textures along with changing height. Please note that this feature works only when terrain splat map (i.e. Control Texture) has the same resolution as the terrain heightmap. When it does not, Erosion Brush will display a warning. “Fix Now” button can create new Control Texture with the required resolution, but this will clear all terrain texture painting. Make a terrain data .asset file before doing this!
All the eroded terrain will be painted with a bedrock texture. To enable bedrock painting check the corresponding checkbox and assign desired channel number. Each number corresponds to the terrain paint textures.
All of the sediment generated by erosion can be painted by sediment texture. Please note that noise mode does not generate sediment, so this feature has no sense when that mode is on.
Visual representation of the brush. Defines the color, brush line width and brush smoothness.
Unity 5.0.0 has incorrect terrain brush positioning (Both in Erosion Brush and Standard Terrain sculpting). Turn toggle on to fix it. Warning: This fix is a crutch that bypasses known Unity's bug, turning it on causes some lag.
Disabling can increase performance a bit, but will make undo unavailable.
Analog of F button, but it will focus camera not on the whole terrain, but on current brush position.
Brush size slider maximum. Note that increasing brush size will reduce performance in the quadratic dependence.
On any issues related with plugin functioning you can contact the author, Denis Pahunov, by mail: firstname.lastname@example.org