Unity TerrainData与绝对高程不兼容?

时间:2012-07-11 01:57:57

标签: unity3d terrain perlin-noise

Unity TerrainData结构是否可以采用绝对高程?我有一个可以产生绝对高程的地形发生器,但它们非常庞大。具有最高振幅的perlin八度音阶决定整个地图的高度,振幅为2500,波长为10000.为了使我的地图正确平铺并在高度之间无缝转换,我需要能够使用这个绝对高度系统。我会缩小我的生成器的输出以适应有限的空间(在0和1之间),并拉伸TerrainData的y比例,但它将失去太多的精度。

我该怎么办?有没有办法可以使用高度可达2500米的高程? 有一件事可能很重要,即单个Terrain对象的空间永远不会有那么大的变化,但是在很多很多Terrain对象中,玩家可以遍历那种高度。

1 个答案:

答案 0 :(得分:0)

我测试过改变不同的变量,我得出了以下结论......

高度图分辨率并不意味着数据的精确度(我问过一些人认为它确定了可能的高度值的数量)。它表示每行和每列的样本数。这与尺寸一起确定了样本之间的距离,以及地形多边形的有效距离。虽然我现在知道如何增加地形物体的高度,但我的印象是没有办法提高精度。相反,由于我在相同的地形对象中永远不会有2500米的高程差异,因此我的生成器生成的每一块地形都将放入一个地形对象,该对象的位置和大小包含该方块中的所有数据。数据也必须转换,以便它适合,但除此之外,我认为这种方法没有任何缺点。

重要提示:分辨率必须为2 ^ n + 1,其中n为任意数字。如果您为分辨率提供了不同的值,则会选择下一个允许的值(总是低于您选择的值)。