参考 noise()

noise()

返回可以调整以呈现自然感觉的随机数。

通过 random()randomGaussian() 返回的值,在函数调用之间可以有很大的变化。相比之下,noise() 返回的值可以被制成“平滑”的。对 noise() 的相似输入调用将产生相似的输出。noise() 用于创建纹理、运动、形状、地形等。Ken Perlin 在 1980 年代为最初的 Tron 电影制作动画时发明了 noise()

>noise() 总是返回 0 到 1 之间的值。在绘图运行时,它为给定的输入返回相同的值。noise() 每次绘图运行时产生不同的结果。noiseSeed() 函数可以用来每次绘图运行时生成相同的 Perlin 噪声值序列。

可以通过两种方式调整噪声的特性。第一种方式是缩放输入。noise() 将输入解释为坐标。当输入坐标更接近时,噪声值的序列会更平滑。第二种方式是使用 noiseDetail() 函数。

带有一个参数的 noise() 版本在一个维度上计算噪声值。这个维度可以被认为是空间,如 noise(x),或时间,如noise(t)

带有两个参数的 noise() 版本在两个维度上计算噪声值。这些维度可以被认为是空间,如 noise(x, y),或空间和时间,如 noise(x, t)

带有三个参数的 noise() 版本在三个维度上计算噪声值。这些维度可以被认为是空间,如 noise(x, y, z),或空间和时间,如 noise(x, y, t)

示例

语法

noise(x, [y], [z])

参数

x
数字:

噪声空间中的x坐标。

y
数字:

噪声空间中的y坐标。

z
数字:

噪声空间中的z坐标。

Returns

数字: 指定坐标的 Perlin 噪声值。
Notice any errors or typos? Please let us know. Please feel free to edit src/math/noise.js and open a pull request!

相关参考