我正在寻找使 3D Perlin 噪声算法适应较低维度的方法,但我在使用梯度函数时遇到了问题,因为我不完全理解其中的原因。
原始的 Perlin 梯度函数有四个参数:ahash
和三维坐标(x, y, z)
。根据 的值返回函数的结果,hash mod 16
如下所示。
0
:x + y
1
:-x + y
2
:x - y
3
:-x - y
4
:x + z
5
:-x + z
6
:x - z
7
:-x - z
8
:y + z
9
:-y + z
10
:y - z
11
:-y - z
12
:y + x
13
:-y + z
14
:y - x
15
:-y - z
0
from的返回值11
构成一种模式,因为每个组合都表示一次。然而,最后四个是重复的。为什么选择它们来拟合最后四个返回值?(x, y)
二维和一(x)
维的类似案例是什么?