Basic Tutorial: Color Nodes

The building blocks of procedural terrain textures.

QuadSpinner Team
quadspinner
4 min readJun 22, 2018

--

Lookup Tables

All coloration in Gaea is based on CLUTs, or color lookup tables. As a 2D heightfields are essentially a grid of number ranging from 0.0 (lowest) to 1.0 (highest), CLUTs are represented as gradients which are mapped to those heights.

The lowest part of a gradient corresponds to the lowest part of the terrain, while the highest part of the gradient corresponds to the highest part of the terrain. Everything in between is evenly distributed.

In this example, you can see how the gradient from a CLUTer node maps to the heightfield.

Left: CLUT mapped to a heightfield. Right: CLUT mapped to a FlowMap.

Now, if you take the same CLUT map, and instead of using the height of the terrain as the input, use a FlowMap instead, you get a different type of texture output that follows the flow lines of the FlowMap output.

CLUTer node mapped to a FlowMap node.
CLUTer mapped to an Erosion node’s Wear output.
CLUTer mapped to an Angle node.

Node Structure

All color nodes (except Mixer) follow a simple structure: the main input port for mapping the CLUT, and the Visualization port for the 3D heightfield to use for the viewport.

LEFT: With the Visualization port empty. RIGHT: With the Visualization port properly connected.

The latter is not necessary most of the time, but is recommended. Otherwise your input may not look accurate in the preview as it will just assume the first 3D node prior to this node is the heightfield.

This port was created specifically to help visualize terrains while creating complex color maps.

BLUE: Mapping input. RED: Visualization input. YELLOW: Any additional ports specific to the node.

Mixer

The Mixer node is just like the Combine node, but for mixing colors rather than heightfields or masks. It is color coded to help differentiate it from the Combine node.

TIP: To quickly mix nodes, you can select the nodes and press F8.

SatMap

The SatMap node gives you access to hundreds of CLUT maps created from satellite data collected from around the globe.

SatMap works exactly like the CLUT node, except you pick from the built-in maps rather than make your own. Just change the Index slider (right-click for accurate changes) to choose a map.

A bespoke UI for SatMaps is currently in development and will be available in a subsequent build.

Biome

Biome uses a water map (like FlowMap or the Erosion node’s Flow output) and uses it to create different biome zones depending on altitude, access to fresh water (defined by the water map), and other conditions. The output from Biome can be used directly as a basic texture map, or as a “Super Splat”. The colors for each biome zone (such as Desert, Tropical Rainforest, etc.) can be customized to your needs.

An easier mode for Biome is in the works, which will make it easier to create base maps used for visual texturing rather than Splat maps.

Creating a sophisticated texture for production use with just a few nodes.

The Biome node is a complex node and deserves its own mini-tutorial blog post. Expect one soon. :)

Real World Example

To create this “hero image”, a single terrain was colored using 1 CLUTer nodes and 2 Biome nodes for the base texture. You can see the node graph for this terrain in the image above.

A detailed post about the making of this terrain can be seen on Artstation.

You can examine the 3D model here.

NEXT…

A mini tutorial on Biome and SatMap.

--

--