查了些资料,发现两个合用的工具,噪声生成(柏林噪声和Simplex噪声)和波函数坍缩算法(头发都要掉光了)。
目前来看,波函数塌缩算法更适合进行地图的生成工作——因为后续还要进行群落、城市之类需要生成的内容——但仅地图海拔而言,复杂度和工作量恐怕会更高。
本着一切就是莽的原则,什么噪声什么算法,不就是随机梯度插值么!我把单元格跟周围单元格的海拔平均一下就是了!于是在哐哐哐农夫三拳之后,最新的地图现在长这样:
暂时来看,随机生成的地图表现还凑合,通过多次随机叠加(类似于正态分布,没找到typescript的正态分布库)的地图比直接随机的结果进行插值的结果要好。
地图提供了缩放和拖拽的功能。
下一阶段就是研究一下波函数塌缩算法用来在地图上随机生成村落、资源、地形的内容了。
另外,今天尝试把vue cli替换成了最新的vite 3.0,启动和热更新速度确实上去了,虽然对于游戏进度而言半点用没有吧……
YNWA