统一地形缝合差距

时间:2016-03-11 21:07:45

标签: unity3d unity3d-5

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

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

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

有什么我想念的吗?或者我唯一的选择就是在其中一个方面摆弄高度以匹配另一个?

感谢阅读,一如既往地赞赏。

Terrain image for reference

1 个答案:

答案 0 :(得分:1)

一些事情 -

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

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

如果你无法弄明白,请发布你的代码,我会看看。

此外,如果您在Simplex噪音函数上使用八度(a.k.a factal)噪音,您的地形可能看起来更好,具体取决于您要查找的内容。

干杯!