2024-05-13 01:21:51 发布
网友
有没有人能推荐一个发电机,算法或任何其他简单的方法来产生一堆随机的陆地组成一个行星。在
我的想法是,我将能够把这个投影到一个圆上(我的游戏是2d)并旋转它,这样它就是一个矢量世界地图之类的东西。在
同时,由于这是游戏的一个美学部分,我不太担心,如果地球没有规律的特征,如在两极等。在
我使用的语言是python,但是如果任何人有一个api的生成器,我可以访问im很乐意沿着这种方式前进
生成自然地形的算法http://en.wikipedia.org/wiki/Perlin_noise 谷歌会给你大量的实现。它给你一个海菲尔德,所以把一个点分类为陆地或水的阈值会给你陆地质量。在
如果您需要将地块作为多边形,可以运行marching square算法从像素地图http://en.wikipedia.org/wiki/Marching_squares中获取多边形
您可以使用http://pypi.python.org/pypi/noise/,然后应用平滑和/或功率滤波器,最后是阈值函数。在
另外,您想要矢量输出还是位图输出?在
编辑:请删除,我没有读标题中的“多边形”。在
您可以尝试使用Random midpoint displacement method首先生成顶点贴图,然后将其转换为球坐标,使其成为一个球。在
生成自然地形的算法http://en.wikipedia.org/wiki/Perlin_noise 谷歌会给你大量的实现。它给你一个海菲尔德,所以把一个点分类为陆地或水的阈值会给你陆地质量。在
如果您需要将地块作为多边形,可以运行marching square算法从像素地图http://en.wikipedia.org/wiki/Marching_squares中获取多边形
您可以使用http://pypi.python.org/pypi/noise/,然后应用平滑和/或功率滤波器,最后是阈值函数。在
另外,您想要矢量输出还是位图输出?在
编辑:请删除,我没有读标题中的“多边形”。在
您可以尝试使用Random midpoint displacement method首先生成顶点贴图,然后将其转换为球坐标,使其成为一个球。在
相关问题 更多 >
编程相关推荐