我想把3D Perlin噪声算法 调整到较低的维度, 但我对梯度功能有问题, 因为我不完全理解推理。
原始 Perlin 梯度函数需要四个参数: < code> hash 和三维坐标 < code> (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
到 11
的返回值是一种模式, 因为每个组合都代表一次。 但是最后四个是重复的。 为什么选择它们来匹配最后四个返回值? 具有两个 (x, y)
和一个 (x)
维度的 aralgous 案例会是什么?