Perlin Noise/zh CN
This page is the start of a tutorial about using Perlin Noise on LCL applications to generate natural looking images. It will cover both basic theory and real usage examples, with a focus on compilable examples.
这个页面是关于LCL应用程序使用柏林噪声来生成自然图像的教程。它包括基础理论和实际使用的例子,重点是编译的例子。
Perlin Noise was invented by Ken Perlin to generate textures for a movie called Tron. Today it is widely used on movies and video games to produce natural looking smoke, landscapes, clouds and any texture including marble, irregular glass, etc.
[Ken Perlin](http://mrl.nyu.edu/~perlin/) 在为电影Tron生成纹理时发明了柏林噪声。如今,它被广泛应用于电影和视频游戏中的自然烟雾,山水、云和任何纹理,包括大理石、不规则玻璃等。
入门
Perlin Noise is based on the idea of fractals, that things in nature show different degrees of change. On a rocky mountain landscape for example when can see changes with a very big amplitude, which are the mountains themselves. Smaller changes represent irregularities on those mountains and even smaller ones represent rocks.
柏林噪声是基于分形的思想,事物在本质上呈现出不同程度的变化。以岩石山为例,可以看到非常大的幅度变化,这是山本身。较小的变化代表了那些山的凹凸,甚至更小的代表岩石。 
第一个例子
This application demonstrates a simple noise function with the following properties: 这个应用程序演示了一个简单的噪声函数,它具有以下属性:
- Only 1 harmonic present
只呈现1个谐波 - 振幅 250 像素
- 波长 20 像素
- 频率 0.05
- You can use a combo box to choose between Linear, Cossine and Cubic interpolation
你可以在组合框中选择线性,余弦、三次插值。

文件:
- noise1d.lpi
- noise1d.dpr
- noise.pas
持续示例
This application demonstrates how to sum many noise functions to get a perlin noise function. 这个应用程序演示了多个噪声函数实现的柏林噪声。 它有以下属性:
- 3 harmonics present
显现3个谐波 - 振幅 250, 125 和 62 像素
- 波长 20, 10, 和 5 像素
- 频率 0.05, 0.1, 0.2
- You can use a combo box to choose between Linear, Cossine and Cubic interpolation
你可以在组合框中选择线性,余弦、三次插值。

文件:
- perlin1d.lpi
- perlin1d.dpr
- noise.pas
使用柏林噪声创建纹理
It is possible to create tilable textures of stone, water, wood... with Perlin noise. 它可以创建tilable纹理的石头、水、木头...与柏林噪声。
这里是如何做到这一点的教程: BGRABitmap tutorial 8
SVN
你可以使用下面的命令下载源代码、示例:
svn co https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/examples/noise noise
外部链接
From the Free Pascal wiki, page "Perlin Noise/zh CN", as it stood on 2015-07-09 after a change by FTurtle, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.