0

所以,我正在尝试使用单纯形噪声创建一个简单的动态无尽地形。到目前为止,我的噪音工作得很好——但是我遇到了地形边缘不连续的问题。起初我认为这是因为我没有在 Terrain 对象上调用 SetNeighbors,但添加它似乎并没有产生任何改进。

terrain.GetComponent<Terrain>().SetNeighbors(left, top, right, bottom);

这个问题似乎是由每个地形位置之间的高度差异引起的 - 但是使这些设置相同会影响地形质量(在某些情况下会降低地形的锯齿状)并且通常看起来不优雅。我一直在浏览统一文档,试图找到解决这个问题的方法,但还没有找到任何东西。

有什么我想念的吗?还是我唯一的选择是调整一侧的高度以匹配另一侧?

感谢阅读,一如既往的感谢。

地形图供参考

4

1 回答 1

1

几件事-

首先,确保您在所有地形对象上设置了 SetNeighbors(),而不仅仅是一个。

其次,如果地形不完全匹配,这要么意味着地形没有完全正确地计算它们的数据,要么存在一些浮点错误。但是,我怀疑这是第一个,因为手动更改点会影响质量。确保您知道地形有 n^2 + 1 个点,并确保从您的单纯形函数查询的点是在世界空间中计算的。

如果您无法弄清楚,请发布您的代码,我会看看。

此外,如果您在 Simplex 噪声函数上使用八度(又名事实)噪声,您的地形可能会更好看,具体取决于您要查找的内容。

干杯!

于 2016-03-11T22:10:56.833 回答