我希望:
将常规的2d perlin噪声约束成为自身的量化直线版本,其中直线为60°
也许我可以将perlin噪声函数的输入量化为3 60°轴?
也许我可以重写2d单纯形噪声,以便它可以从x-z平面的3个轴而不仅仅是xz轴工作?
一个不太好的解决方案是采用3个不规则的锯波并将它们乘以3个轴。
目标: 我正在测试使用等距60°Regular Triangle Mesh(即六边形)显示的perlin景观。它比方形网格更好,更有效地利用空间。使用基于lofi hex的perlin噪声模型看起来非常好看,因为在50度线上,顶点会产生锯齿形,所以如果我可以控制perlin噪声的角度,我可以控制六边形世界的质量
答案 0 :(得分:0)
好吧我已经制作了蜂窝状perlin噪音大声笑!
与perlin3d相同,但abs(vtx.xyz)除外是Mathf.Abs(vtx.x),Mathf.Abs(vtx.x * .5-vtx.z * .866),Mathf.Abs(vtx。 x * .5 + vtx.z * .866)...这里是使用60'deg轴的perlin噪声的照片:
60'没有三次插值
60'采用三次插值
答案 1 :(得分:0)
好的,这是另一个更有趣的选项...而不是使用生成和插值随机值的方形xy网格,只需将xy网格转换为六边形网格,方法是将每第二行向左移动0.5并使其成为每行0.866,这会创建一个三角形格子而不是一个方格,在常规三角形网格的每个交叉点上都有一个随机点。
之后,有必要在3点之间进行插值。它将是某种平坦的三角形山脉。