Friday, 18 September 2026

Gaea School: A return to the Vosges mountains

 We're taking a break from the usual diary format to do a deep dive into a complex Gaea setup. This is based on the sample provided by the brilliant Maarten Nauta.


The following graphic shows how deeply nuanced and interesting terrains are generated from massive graphs, that are literally too big to view in totality in the graph editor.

Look at the size of this graph?!


1. The base terrain noise


This stretch of the Vosges mountains is built on a Perlin noise base, which is then eroded (Er2), and the result is squished using two transform nodes.


Perlin - Erosion - Transform1 - Transform 2

The transforms change the scale of the erosion patterns and can move them up, down, and around.


The next block begins with a Chokepoint node. Apparently (because I've never used one), this is how you combine collective graph inputs without a long processing tail—it's memory efficient.

Chokepoint

Next, the input goes through a warp, which adds subtle but specific noise patterns. The Warp is masked to the lower reaches of the terrain with a Height mask, which is applied to a Combine node that blends the Warped input with another Perlin noise node.


Meanwhile, a Snow node is applied to a height-masked area.

No node quite like a Snow Node

Masked lower reaches

The result: subtle levelling of the downcutting.


Time for another family to join the tree(graph)

A Mountain node is added and gets quite a lot of jiggery-pokery.

Mountain -> multiple terrain bumps


The mountain node goes through multiple transforms, which combine to create a cluster of mountains; each transform is additive, so one mountain can become three.


Three Radial nodes are combined (blended) into a mask that acts as a mask, so that small portion of the terrain gets a messy height boost.


Not easy to see, but the radials create a slight rise.

A Draw node adds another terrain bump, followed by the next Erosion2 node, then outputs to a Chokepoint Node, labelled "baseshape".


Next up: Apply Fractal Terraces on a sloped area, using a blur for the modulation and a slope for the mask.


Terraces, but only on this sloped area. Clever!

Erosion 2, again.


Thermal2 node applied, with an exclusion mask for the fractal terrace area.


Mask

Creative masking in the next step: Take the Thermal2 output and create a mask that leaves a flow trace on the slopes, like so:

Creative masking

The result

Next new input terrain: A sandstone cellular structure:




Another elaborately set up mask from a flow adjusted every which way, then combined through a Bomber node. A Bomber node is a scattering and stamping tool that takes an input shape or heightfield and "bombs" (multiplies and scatters) it across your terrain surface.


Another set of targeted (via slope nodes) tweaks for Thermal Erosion and Roughen. 



The biggest takeaway for me is the importance of masks, mostly slopes, in this example. This terrain is, on reflection,  too big for a single article. Most of the remaining graph is pulling out  specific regions for colour treatment and material output.

Moving into the colour space for materials and masks.

More on Gaea, soon. This weekend: Some more personal project stuff. Possibly more on the MSVA.

The never-quite-finished Shamrayev. MSVA-like construction.




No comments:

Post a Comment

Gaea School: A return to the Vosges mountains

 We're taking a break from the usual diary format to do a deep dive into a complex Gaea setup. This is based on the sample provided by t...