Terrain 利用分形布朗运动创建无缝世界地图

Terrain 利用分形布朗运动创建无缝世界地图,terrain,fractals,Terrain,Fractals,我正在使用分形布朗运动创建高度贴图。然后我根据高度给它上色,并把它映射到一个球体上。我的问题是,高度贴图没有无缝包裹。我使用过菱形正方形算法,使用它很容易使事情无缝,但我似乎不知道如何使用fBm,我似乎很难在网上找到解释 澄清一下,所谓“无缝”,我的意思是当我将其映射到球体时,它会在球体上创建无缝贴图。不是计算高度贴图上每个像素的高度贴图,而是基于球体上的每个点计算三维空间中的高度贴图,然后将其映射到图像像素。除非您从球体开始计算,否则您将很难将这样的二维矩形高度贴图包装到球体上,而不会在极点处

我正在使用分形布朗运动创建高度贴图。然后我根据高度给它上色,并把它映射到一个球体上。我的问题是,高度贴图没有无缝包裹。我使用过菱形正方形算法,使用它很容易使事情无缝,但我似乎不知道如何使用fBm,我似乎很难在网上找到解释


澄清一下,所谓“无缝”,我的意思是当我将其映射到球体时,它会在球体上创建无缝贴图。

不是计算高度贴图上每个像素的高度贴图,而是基于球体上的每个点计算三维空间中的高度贴图,然后将其映射到图像像素。除非您从球体开始计算,否则您将很难将这样的二维矩形高度贴图包装到球体上,而不会在极点处得到难看的结果


fBM可概括为3维,因此给定球体上的一个点,您可以获得该点的高度,然后您可以进行数学运算,将该值映射到应存储在heightmap图像中的位置。

或者您可以使用传统的地图投影之一。圆柱投影(x,y)->(x,sin-y)只会给你一条子午线的接缝,你可以旋转到后面。或者,您可以通过一种或另一种方式“反锯齿”边缘

对于赤平投影(x,y,z)->(x/(z+1),y/(z+1)),只有一个酸点(投影点本身)