详谈游戏打击感的效果处理

 1、施力过程

 也就是动作发出方的打击动作,比如一拳打出去,或者向前砍出一刀。只要符合人体运动原理,动作可以尽量夸张,或者尽量快速,以大幅度动作展现力量感,以高频小幅度动作展现速度和节奏感。目前这一块应该是最好做的,没有什么瓶颈,一般的水平应该都还做得过得去。

 但这只是单个动作的情况,如果涉及到多个动作的衔接(所谓的连招或者多个动作的招式),就需要展现过硬的动作编辑功底了,既要保证动作衔接的合理性,也要保证动作的观赏性。

 2、力反馈过程

 这个应该是对打击感影响最大的一个过程,即受力方对打击动作的反应,比如被一拳打到脸,力反馈过程应该是头后仰或者向后跌倒;被一刀撩到,可能会被挑起浮空;被一锤砸到,会快速原地扑倒,并在砸到的身体时候使锤子的运动过程有短暂迟滞;钝器砸到盾牌,钝器方后仰,盾牌方振动等……

 该过程需要在尽量真实的前提下使反馈过程清晰可见,一旦过于夸张就会显得不真实,反而使打击感大大减弱,而一旦动作幅度不够大,又会让人觉得软绵绵像打太极一样无处着力,打在棉花上了。由于反馈动作幅度的可调范围不大(真实性考虑),并且对展现的效果要求又比较高,估计在没有给力的物理引擎情况下,需要动作策划不停的编辑受力反馈动作参数,以达到“真实而明显的被击效果”。

 3、外显化的辅助效果

 这个就是一些伤害数字的处理、武器轨迹光效、打击特效(如重拳轰击后对方有盔甲碎片散落的效果及喷血等)等处理,主要作用是加强1,2过程的效果,这部分东西看起来是最华丽的,而且投入较低,不需要反复调试,只需要强力的美术就能做出不错的效果。因此很多质量一般的国产游戏会用得比较多,战斗的时候满屏光效闪来闪去,人都看不清,但在1,2没有做好的'情况下,这部分就对打击感完全没有什么贡献了,也纯粹是搏一个“华丽”的名头而已。

 4、时间判定

 就是我砍到你了,需要马上看到你血条空了一截,而不是我刚抬起刀你就吓得掉了一条血槽,或者我砍到第二十刀你才开始流第一刀的血。

 时间判定的及时性和准确性,更多是技术方面的处理,但这个作为打击感最终结果的反馈,是前面所有内容的统一完结点,是前面所有过程的基数,必须达到一定的标准才能实现“真实的打击感”,真实!!!如果达不到,前面的工作可以说都白瞎了,功亏一篑,所以如果在技术上实现不了合理的延时,那么其实打击感也就没必要做得太细致。

 5、碰撞体积判定

 其实严格来讲,碰撞体积是3D游戏才有的概念,不过在ACT类游戏比较方便扩充一下概念,可以统一认为是“能被对方所攻击到的身体范围”。除非是2D横版游戏,不然类似DNF这样的2D游戏其伪碰撞体积依然是三维的——角色面积+Z轴判定距离(就是我在纵向位置上虽然没有正对着你,和你不在一条直线上,但在纵向距离相差一定范围内依然可以打到你)。

 若要实现较好和真实的打击感,碰撞体积必须设置得比较精确,符合现实情况。比如我的拳头在打到你的肚皮上甚至是腹部盔甲上时,你就得有被击反应出现(比如身体蜷曲),而不是在我拳头打到你的肚子里面你才有反应。

 这个因素相对来讲,只有在铁拳这样纯3D且角色巨大(或者说观察镜头距离角色很近)且动作相对较慢的格斗游戏里体现得比较明显和重要。对于大部分动作快速、光效华丽、角色体积/面积不大的游戏来说,不是非常明显,当然你也不能差太多,如果把一个纸片角色的碰撞体积做成简笔画的火柴人这样,那真是要拖出去抽打一百遍了。