如何实现无限地图
-
如何实现无限地图
-
@千叶真一 我现在想到的无限地图有两种类型,一种是重复和循环的(例如flappy bird),另一种是随机生成、每次都不一样的(例如minecraft或泰拉瑞亚)。前者只需要给背景图加上滚屏能力(具体不太记得了,b站有相关能力的教程),而后者则需要自己写地图随机生成的算法。
这里推荐一下帖子:http://bbs.evkworld.com/topic/583/2 ,或者自己手写也可以(就是算法迭代可能要很长时间)
此外还需要考虑很多优化和实际体验上的问题,例如通过精灵作为图块来生成地图的话会导致场景中很容易就堆上几千个精灵实例(虽然实测实际运行时影响没有那么大),但是生成的时候会卡很久。
我以前也参考上面那个帖子写过一个随机地图的生成算法,就只是图中这么大的地图,生成一遍需要3分钟以上,而且由于唤境只能调用单核进行运算,生成过程中画面是完全卡死的。实际游戏中一般采用分块生成的方式(mc中的区块概念),玩家走近了才生成,离远了再卸载,但实现起来同样困难