我已经实现了一个用于生成等表面地形的系统,该系统基于由 Perlin 噪声标量场定义的常规 3D 体素网格。噪声是通过连续函数获得的,因此它在体素和“块”(体素组)之间是无缝的。
我遇到的问题是如何使用该系统完成可变形地形。我有一个“挑选”系统,这样我就可以选择一个体素。通过这个,我可以访问体素的数据,并且可以在那时修改标量场。
到目前为止,我已经尝试修改所选体素中的数据点(例如增加或减少值),这成功地根据行进立方体向上或向下移动生成的多边形。
但是,这会在地形中产生撕裂,因为三角形与上方或下方的其余网格分开。
我需要的是一种以自然方式影响标量场本身的方法,从一个局部点开始,然后向外辐射,无缝融合。
这个事情谁有经验?