Terrain Nodes
Biome Blend
Writes per-vertex Color32 to a terrain mesh using 4 configurable biome rules (altitude + slope gates). Wire into a Geometry Output to see vertex colors.
Inputs
- Geometry (Geometry)
Outputs
- Geometry (Float)
Options
- biome0: Low-altitude / flat-slope biome rule (sand/beach default). Each rule defines altitude range, max slope, blend width, and vertex color.
- biome1: Mid-altitude / gentle-slope biome rule (grass/meadow default).
- biome2: Mid-to-high / steeper-slope biome rule (rock/stone default).
- biome3: High-altitude biome rule (snow/ice default).
Biome Merge
Blends up to 4 biome colors by weight scalars, normalising the sum to 1. Outputs R, G, B for a Biome Blend or color node.
Inputs
- Weight 0 (Float)
- Weight 1 (Float)
- Weight 2 (Float)
- Weight 3 (Float)
Outputs
- R (Float)
- G (Float)
- B (Float)
Options
- biome0Color: RGB color for biome slot 0. The R, G, B outputs carry the weight-normalised blend of all four colors.
- biome1Color: RGB color for biome slot 1.
- biome2Color: RGB color for biome slot 2.
- biome3Color: RGB color for biome slot 3.
Biome Rule
Altitude + slope gate returning a biome blend weight in [0, 1]. Combine multiple rules with a Biome Merge node.
Inputs
- Altitude (Float)
- Slope (Float)
Outputs
- Weight (Float)
Options
- altMin: Lower altitude bound (world Y). Biome weight ramps from 0 to 1 above this level over the Blend Width transition.
- altMax: Upper altitude bound (world Y). Biome weight ramps back to 0 above this level over the Blend Width transition.
- slopeMax: Maximum surface slope in degrees at which this biome appears. Above this angle the weight falls off over the Blend Width.
- blendWidth: Transition width in metres (altitude) or degrees (slope) at each boundary. Larger values soften the biome edge.
Splat Biome Blend
Paints per-vertex Color32 on geometry by sampling a splat texture at each vertex’s world XZ position and blending 4 authored region colors by RGBA channel weights.
Inputs
- Geometry (Geometry)
- Texture (Texture)
Outputs
- Geometry (Float)
Options
- tileSize: World units per full UV tile. Set to match the real-world coverage of your splat texture. 100 = texture covers 100 × 100 world units.
- offsetU: Horizontal UV offset applied after tiling [0, 1]. Use to align the splat texture when the world origin does not coincide with (0, 0).
- offsetV: Vertical UV offset applied after tiling [0, 1].
- region0Color: Vertex color assigned to geometry in the splat R channel region (sand/beach default).
- region1Color: Vertex color for the splat G channel region (grass default).
- region2Color: Vertex color for the splat B channel region (rock default).
- region3Color: Vertex color for the splat A channel region (snow default).
Tips
- Wire a Texture2D Parameter (RGBA splat map) → Texture input and any geometry → Geometry input. Tile Size should match the world scale of your splat texture (100 = texture covers 100 world units).
- When no texture is wired the node falls back to Region 0 color for every vertex (useful for testing the color pipeline without a splat asset).
- Compose downstream with a Geometry Output to see vertex colors in the preview, or feed into a BiomeBlend node to layer altitude/slope rules on top of the splat regions.
- Call AFTER any GeometryTransform that places the geometry in its final world position: world XZ is read from the vertex positions, so the splat UV is frame-dependent.
Tree Mask
Altitude + slope mask for controlling tree or vegetation density. Returns 1 inside the altitude/slope window and 0 outside, with configurable blend width.
Inputs
- Altitude (Float)
- Slope (Float)
Outputs
- Mask (Float)
Options
- altMin: Lower altitude bound. Trees start appearing above this world Y level; blend transitions over the Blend Width.
- altMax: Upper altitude bound. Trees thin out above this altitude (snow line / tree line).
- slopeMax: Maximum slope in degrees on which trees appear. Above this angle the mask returns 0.
- blendWidth: Transition width at each altitude and slope boundary. Larger values create a softer, more gradual tree-line edge.