生成python中的陆地多边形

2024-05-13 01:21:51 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有人能推荐一个发电机,算法或任何其他简单的方法来产生一堆随机的陆地组成一个行星。在

我的想法是,我将能够把这个投影到一个圆上(我的游戏是2d)并旋转它,这样它就是一个矢量世界地图之类的东西。在

同时,由于这是游戏的一个美学部分,我不太担心,如果地球没有规律的特征,如在两极等。在

我使用的语言是python,但是如果任何人有一个api的生成器,我可以访问im很乐意沿着这种方式前进


Tags: 方法算法语言游戏地球矢量特征行星
3条回答

生成自然地形的算法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首先生成顶点贴图,然后将其转换为球坐标,使其成为一个球。在

相关问题 更多 >