在上次发帖后,我收到了许多关于视觉效果的有用反馈,尤其是战斗缺乏"冲击感"。有人甚至建议我"提示AI来管理冲击感" :D 所以我最近一直在试验这个方向。

关于动画,我目前的工作流程是Codex + Aseprite。我会把现有角色、技能描述以及一些已验证过的动画参考提供给Codex。Codex会编写在Aseprite中运行的Lua脚本,自动生成帧/图层,然后我自行审核结果并进行迭代。我甚至为此买了Aseprite,但至今还没亲手打开过一次 :D 不过显然这不是"一次提示就能生成完美动画"的过程。有些技能需要反复尝试,有些我干脆放弃了——毕竟token不是无限的。

我还测试了Astra和Fable。至少就我的需求而言,Astra生成的结果要清晰得多。我用Fable尝试了几个动画,但最终只保留了一个。结果还远非完美,但老实说,以我的水平,现在能做出这样的效果已经很满意了。

接下来的问题是:即使单个动画看起来不错,放入游戏后仍缺乏冲击力。于是我改用Godot添加另一层效果:目标闪烁、轻微击退、镜头震动、短时命中缩放、强力攻击的微停顿、额外粒子以及局部发光效果。我还专门搭建了一个VFX场景,可以直接实例化角色并触发真实技能,而不必让AI每次都要跑完整个游戏流程。这样迭代和录制对比都方便多了。

视频展示了纯Aseprite动画与添加Godot效果后的差异。我觉得效果在变好,但总感觉还缺些什么——尤其考虑到多名玩家可能同时释放技能,而且游戏还要在移动端运行。

所以我很好奇:看看前后对比,你认为要让攻击更有打击感,还缺少什么?对于开发类似2D游戏的人,你们如何决定哪些效果应融入动画,哪些应作为引擎实时VFX处理?

欢迎任何建议或批评,视觉表现可能仍是我在游戏开发中最头疼的部分 :D