Perlin and Voxel biomes

Hello,
Recently I’ve been working on a Voxel Terrain generator and I wanted to add noise to it. I used Perlin noise to generate the height but it needed biomes.
I added some values such as temperature, humidity, …

The only thing I don’t understand is how to get smooth transition between their height. For example, if I have a mountain biome next to a desert biome, I’d like to go from high to almost flat, smoothly between the borders.
Is it really possible with Perlin noise? How can i calculate that?

Generally this sort of thing is handled with multiple layers of noise that cascade and combine your values in different ways, multiplying and/or adding them in different ways.

Check out the sample I just made in gimp. It has three input noise fields: high frequency noise (mountains biome), low-frequency noise (plains biome), and then a third control that is a spread-and-clamped version of some other low frequency noise and is used to “select” the high-frequency or low-frequency noise in the final product.

I’m using the masking feature of Gimp but all that is doing is using the “blend control” layer to decide which of the two source maps to select from.

And to create the blend control map I just enhanced (stretched) the contrast of a low-frequency noise until it was mostly 1 or 0, with only 5-10% of the image remaining as shades of gray, depending on how sharp a line you want between high and low frequency noise.

You must use the temperature and humidity perlin as a blending mask between geographic parameter of each biomes.

Basically a biomes is simply a range between noise output (for example savanna is between 25-50 humidity and 100-75), you check if the noise are inside that range to spawn objects and tiles accordingly.

But you still have the smooth noise value, for example where the noise is at humidity 26 and temperature 75, you may be close to the wood biomes, so either you can have sub biomes or modulate the spawning rates or blend the geographical features based on how close to border of biomes you get. For the later it’s best to convert the range into 0-1 scales and use that scales to blend the features.

1 Like

Thank you! Its working perfectly now :slight_smile:

I didn’t think of that, it’s never explained anywhere, but it’s easier than I thought