四个月前尝试了一下生成用于游戏的随机地图,现在这个算法可以生成如下地图:
可以看到,下一步就是根据外围那条线生成近海岸线。具体实现方法应该是程序生成mesh:近海和深海的mesh,再各自用不同water shader表现近海和深海。
这个工作几个月前就搞好了,过年后没时间继续。五一闲得无聊再细看了一下算法,还是有很多写得不好的地方。最致命的的问题是每个格子占整个地图比例太大了,以《Civilization: Beyond Earth》为例,它一张标准地图大概有4000个格子,而我这里所设定的中等地图只有1000多个。
考虑了一下,还是重新做吧。同时我也觉得正方形的格子实在死板,我想换成正六边形的。
如果要换成正六边形,要解决的首要问题是:高度图是正方形的,与正六边形无法简单的嵌套。能想到的方法是像这样: