0

我不确定“传统的”基于随机噪声的高度图生成是否是我需要的,因为我最终想要的是一个由两种类型的区域组成的非常简单的地图。

我想要的最终结果是一些非常简单的几何图形,将“陆地”区域与“海洋”区域分开,并确定一个点是湿的还是干的。

理想情况下,它应该都是程序性的,而不是基于预渲染的高度图,因为我希望地图是随机生成的并且有些参数化。

我能想到的最接近的例子是SimCityCivilization系列中的地图生成器,但简化为 2D 并带有Defcon的感觉。

4

1 回答 1

0

比如:从任何时候开始。声明它的高度为 0(海滩)。递归地访问每个相邻点的北、东、南和西,以及通过当前节点高度的洪水填充。添加或减去一些参数化的随机值(例如 -2 到 2)。将值限制在最小值和最大值处(例如 -5 和 20)。递归通过您的地图大小,忽略以前访问过的节点。您现在有一个相当连续的 2D 高度图。负高度是湿的。您可以使用每个节点的高度变化量和最小/最大整体值来获得或多或少的陆地 - 海洋和大陆与群岛等。

于 2010-09-22T15:31:30.827 回答