FFT-driven terrain
Extending FFT terrain with environmental data, procedural materials, and player-centred generation.
- Tech Stack
- Unreal Engine
C++ - Role
- Developer
- Core Mechanics
- Procedural Mesh Generation
Fast Fourier Transform
This project builds on the FFT terrain from Procedural Terrain & Ocean, extending the generated landscape with environmental data, automatic material blending, and runtime optimisation.
Height, slope, moisture, and temperature are calculated and sampled from the terrain. These four data layers connect the procedural mesh to its surface materials, while player-centred tiles control which terrain blocks are generated at runtime.
The Challenge
Building on the FFT terrain from Procedural Terrain & Ocean, this chapter adds calculation and sampling of height, slope, moisture, and temperature.
The four terrain layers are visualised through vertex colours. Moisture uses the blue channel (B); adjusting the influence of elevation and slope changes how moisture is distributed across the landscape.


The terrain material reads the four calculated data layers and uses them to blend surface materials. This example uses moisture to blend snow-covered mountains with muddy ground.


A Height Curve compression parameter, starting from a value of 1, extends control over the generated landforms. Adjusting compression changes the terrain profile to explore different landscape shapes.

To reduce runtime overhead in a large world, the landscape is divided into tiles. The player’s position determines which terrain blocks are generated around the current location.

Video
L.Z / 2026