TerraBrush

15$ on the Asset Store.
Asset Store
Web Site Page

TerraBrush takes its inspiration from WorldPainter, a terrain creator for MineCraft. TerraBrush has different options for painting based on height, steepness and the direction of the surface normal just like Terrain Toolkit or any other procedural terrain painter, but TerraBrush gives you the flexibility to paint what you want and where you want, enabling you to be in control of the texturing of the terrain of your dreams.

With slight modifications, TerraBrush can be used as a fast realtime terrain painting solution.

Features

TerraBrush has the following three constraints for painting on the Terrain.

NOTE: The Falloff option for each constraint has a common use. A Falloff value lesser than 1 will lead to more gradual blending, and a Falloff value greater than 1 will lead to more abrupt blending.

Height Controls

There are three different options in Height Controls: Min Height, Max Height and Height Blending Distance (all in Unity Units or meters).

  • Min Height is the minimum height of the terrain affected by the brush. For example, if the Min Height is 200, only the terrain portion which is above 200 meters in height is painted.
  • Max Height is the maximum height of the terrain affected by the brush. For example, if the Max Height is 400, only the terrain portion which is below 400 meters in height is painted.
  • Height Blending is the relative height above Max Height and below Min Height from where the blending of the textures will start, to give a smooth transition between textures.

The Height Controls are useful for creating ice caps at the top of mountains and creating sand and beaches at sea level.

Slope Controls

There are three different options in Slope Controls: Min Slope, Max Slope and Slope Blend Range (all in degrees).

  • Min Slope is the minimum steepness of the terrain affected by the brush. For example, if the Min Slope is 30, only the terrain portion which is above 30 degrees in steepness is painted.
  • Max Slope is the maximum steepness of the terrain affected by the brush. For example, if the Max Slope is 60, only the terrain portion which is below 60 degrees in steepness is painted.
  • Slope Blend Range is the relative slope above Max Slope and below Min Slope from where the blending of the textures will start, to give a smooth transition between textures.

The Slope Controls are useful for creating cliffs on steep terrain and painting grass on flatter terrain.

Normal Controls

There are three options in Normal Controls, namely Normal Direction, Normal Blend Start and Normal Blend End.

  • Normal Direction is the direction of the surface normal of the terrain points affected by the brush. Here North is the positive Z axis (South is negative) and East is the positive X axis (West is negative). Keep in mind that this is the surface normal that is the direction in which the perpendicular to the terrain point is pointing to.
  • Normal Blend Start is the minimum magnitude of Normal Direction from which to start blending. For example, if Normal Direction is South and Normal Blend Start is -0.3, then only those points whose surface normal has a Z component of –(-0.3) = 0.3 (Since South -> -Z axis) or greater will be painted. A negative value signifies the opposite direction.
  • Normal Blend End is the maximum magnitude of Normal Direction till where to end blending. For example, if Normal Direction is South and Normal Blend End is 0.7, then only those points whose surface normal has a Z component of -0.7 (Since South -> -Z axis) or lesser will be painted. A negative value signifies the opposite direction.

The value will blend linearly or exponentially (depending on the falloff value) between Normal Blend Start and End.

The Normal Controls are useful for showing snow accumulating on the North-facing slopes of the mountains (based on wind), as shown in the demo and screenshots.

Screenshots

screen1.jpg

screen4.jpg

screen3.jpg

screen2.jpg

Demo