Research Article

# Breeding Terrains with Genetic Terrain Programming: The Evolution of Terrain Generators

## Table 1

GP functions.
 Name Description $\text{plus}\left({h}_{1},{h}_{2}\right)$ Arithmetical functions $\text{minus}\left({h}_{1},{h}_{2}\right)$ $\text{multiply}\left({h}_{1},{h}_{2}\right)$ $\text{sin}\left(h\right)$ Trigonometric functions $\text{cos}\left(h\right)$ $\text{tan}\left(h\right)$ $\text{atan}\left(h\right)$ $\text{myLog}\left(h\right)$ Returns $0$ if $h=0$ and $\mathrm{log} \left(abs\left(h\right)\right)$ otherwise $\text{myPower}\left({h}_{1},{h}_{2}\right)$ Returns $0$ if ${h}_{1}^{{h}_{2}}$ is $NaN$ or $Inf$, or has imaginary part, otherwise returns ${h}_{1}^{{h}_{2}}$ $\text{myDivide}\left({h}_{1},{h}_{2}\right)$ Returns ${h}_{1}$ if ${h}_{2}=0$ and ${h}_{1}÷{h}_{2}$ otherwise $\text{myMod}\left({h}_{1},{h}_{2}\right)$ Returns $0$ if ${h}_{2}=0$ and $\mathrm{mod} \left({h}_{1},{h}_{2}\right)$ otherwise $\text{mySqrt}\left(h\right)$ Returns $\text{sqrt}\text{\hspace{0.17em}}\left(abs\left(h\right)\right)$ $\text{negative}\left(h\right)$ Returns $-h$ $\text{FFT}\left(h\right)$ 2D discrete Fourier transform $\text{smooth}\left(h\right)$ Circular averaging filter with $r=5$ $\text{gradient}\text{\hspace{0.17em}}X\left(h\right)$ Returns the gradient ($dh/dx$ or $dh/dy$) of a height map $h$. Spacing between points is assumed to be 1 $\text{gradient}\text{\hspace{0.17em}}Y\left(h\right)$

Article of the Year Award: Outstanding research contributions of 2020, as selected by our Chief Editors. Read the winning articles.