我在Game Maker中开发一个策略游戏,目前正在尝试使用六边形网格。地图的想法是动态的,地形会变化,海平面会上升或下降,世界大小可以自定义,x轴上有无缝的世界包装。最初,我将每个六边形作为一个对象,但我意识到这会创建一个性能瓶颈(尽管这使得检测鼠标点击六边形变得非常容易)。我已经改变了静态精灵,现在或是停用“父对象”六边形的某些重新计算。每个六边形对象都有一个变量与静态精灵关联,当父对象改变时,它会更新静态精灵。然而,我仍然遇到性能瓶颈,似乎我无法让世界变得足够大。200x200六边形是我的电脑可以轻松处理的极限(它是一个相当强大的电脑),而且这是在世界被树木、动物、人类等填充之前。因此,似乎世界需要变得非常小。 我正在寻找提高性能的建议。我的目光落在了图集上,但它将是一项相当繁琐的工作,我不确定如何实现x-wrapping(如果图块位置无法移动,我需要在世界边缘两侧创建镜像图块并处理更多图块)。我在想,像Open Transport Tycoon这样的老游戏是如何绘制如此巨大的地图而使用CPU/GPU资源却如此少的。例如,你可以轻松地拥有1024x1024个图块,这相当于一千万个图块(我想这可能只是由用汇编语言编写而产生的力量)。
策略游戏地图(大六边形网格)的快速绘制建议
评论 (0)