# Noise derivatives

This topic is 381 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

Can anyone explain to me how to use analytical derivatives in noises for use in 3D terrain? I have made a very capable game engine but I'm unable to make any cool terrains due to not being good at math. I have looked around on the net but it seems terrain generation is just a creative art no one teaches.

For starters, how about how to perturb the top portion of a density bubble so that we can increase the chance of unbroken terrain with overhangs, as opposed to disconnected terrain due to too much perturbation?

http://www.iquilezles.org/www/articles/morenoise/morenoise.htm gives an introduction on the topic and shows that it can be useful (which I wasnt sure of beforehand)

Edited by Kaptein

##### Share on other sites

You might take a look at this article by Giliam de Carpentier about some modifications of Quilez's original derivative noise for an idea of how you can use the derivative. The derivative basically says 'this function is changing at such-and-such rate, in so-and-so direction, at this given location'. So, essentially, it's good to use anytime you want to do something that depends on how rapidly a function is changing value.

When a function is used directly as a heightmap, this derivative corresponds to the 'steepness' of the terrain at a given location. However, there isn't always necessarily a one-to-one correspondence between the derivative and the terrain steepness; for instance, if the derivative is used in a function that is used to apply a domain transformation.

Quote

terrain generation is just a creative art no one teaches.

Pretty much, this. If you do enough googling, you'll run across some specific tips or ideas, maybe, but a lot of it really depends on context and even personal preference. In my experience, the three most useful tips for making decent terrains are 1) Use domain distortion/perturbation 2) Use simulated or physically-based processes such as erosion 3) Use smoothstep functions to choose between different archetypes to create a more heterogenous result.

1. 1
Rutin
67
2. 2
3. 3
4. 4
5. 5

• 21
• 10
• 33
• 20
• 9
• ### Forum Statistics

• Total Topics
633417
• Total Posts
3011781
• ### Who's Online (See full list)

There are no registered users currently online

×