大家好!我刚刚在itch上发布了Unmanaged Space的demo,它是一款我正在GameMaker Studio 2中开发的逐步防御游戏。在游戏中,你可以部署到各个区域,通过异常升级来保护业务连续性锚点,收集来自宇宙的剩余物资,撤退,然后在轨道物流中购买升级。demo包含两个区域,游戏时长约为20分钟。

https://dublinsolodev.itch.io/unmanaged-space

我在这里分享这个demo是因为在游戏的最后几个区域中,房间会被货币奖励淹没(从一个boss爆发中获得数百到数千个奖励)。之前,每个货币对象都有自己的Step(idle,磁铁,收集,释放)。当货币数量达到高点时,这意味着每帧都会有数千个Step事件,游戏会卡住。

感谢u/WubsGames带领我走完GameMaker的性能分析工具。我的工作流程优先使用性能分析工具来运行游戏,找出最慢的瓶颈,修复瓶颈,然后重复。每次循环都会显示出下一个瓶颈,我最终能以更快的速度修复瓶颈。

对我来说,最大的胜利是将货币逻辑从货币对象移到我的oPlayer上。性能分析工具显示我的货币Step占用了大量资源。因此,我将大部分逻辑移到了我的oPlayer的批处理Step中,这个Step每帧都会运行,而不是每个货币对象的Step都会运行。货币对象现在主要保存状态,而oPlayer则负责繁重的工作。

希望你能在demo中有趣!我很乐意回答GM的问题或深入讨论上述任何问题。如果你尝试它,我会很高兴收到你的反馈,了解你是否觉得游戏的重设功能足够吸引人,以便尝试不同的版本来实现每个区域的目标!