A statistical analysis of elevation data from a 160,000 square kilometer region
finds that terrain gradients
appear to be exponentially distributed at all horizontal resolutions.
Simple modifications to the Perlin noise algorithm and
the amortized noise algorithm change the gradient
distribution in each octave to an exponential distribution,
resulting in varied and interesting procedurally generated terrain.
Application in the Game Industry
This paper was mentioned by Sean Murray in his GDC 2017 talk "Building Worlds
Using Math(s)" as influencing the design of the procedural terrain
generator in the Hello Games title
No Man's Sky.
The following video starts at 22:56.
The source code for this paper is
available for free download from
It has been released under the
GNU All-Permissive License and contains the following notice.
If these conditions are unacceptable to you, then do not download them.
Copyright Ian Parberry, (date).
This file is made available under the GNU All-Permissive License.
Copying and distribution of this file, with or without
modification, are permitted in any medium without royalty
provided the copyright notice and this notice are preserved.
This file is offered as-is, without any warranty.
The source code is written in C++ and includes project files for Windows Visual Studio 2012
and a Unix makefile using g++.
A preliminary (and much longer) version of this paper was published
under the title
"Tobler's First Law of Geography, Self Similarity,
and Perlin Noise: A Large Scale Analysis of Gradient
Distribution in Southern Utah with
Application to Procedural Terrain Generation",
LARC Technical Report LARC-2014-04,
Laboratory for Recreational Computing, University of North Texas, June 2014.
Created June 2, 2014.
Written in HTML 4.01 and CSS 3 using vi.
Last updated October 23, 2017.