今日教程|横版角色近战攻击:拳击、挥剑与手感

打开网易新闻 查看精彩图片

今天这篇来自Slynyrd的 Pixelblog 第 9 期:Melee Attacks(Raymond Schlitter)。

讲的是横版角色近战——从拳击到挥剑,以及怎么用 smear、overshoot、freeze 做出既有重量感又不拖泥带水的攻击动画。

一、从站姿开始:拳击的 Jab 与 Cross

近战不能乱挥,得先想清楚「这一拳/这一剑」是什么动作,再对照真实发力方式(可以先写实再夸张)。

一切从站姿开始:拳击常用双手护脸、重心在两脚之间、膝盖微屈。

作者用的是标准拳击站姿。

  • Jab(刺拳):右手惯用的话,刺拳用左手直线打出;髋部略转、腿绷住,主要动的是出拳的那条胳膊。
  • Cross(直拳):右手从脸前直线打出,比刺拳更有力和远;可以带一点上步,但背别弓、头保持中正。
  • 回收帧把站姿整体向左移 1 像素一帧,能做出「刹住」的弹跳感——这就是** overshoot**:物体在停止前会稍微冲过停止点再停稳。

打开网易新闻 查看精彩图片

二、武器与挥剑:站姿要配合武器与攻击方式

加上武器后,站姿很大程度上由武器的重量与平衡决定。例如双手大剑就像教程里那样双手举在身前;轻一点的弯刀可以单手挎在身侧或举过头。选一个和武器、角色力量感相符的站姿即可。

攻击方式也要和站姿衔接自然:想做「反手自下而上撩斩」,刀可以从腰侧出鞘位起手;想做「自上而下竖劈」,就像示例里双手举高的起手。要强调重量可以多加帧或把某几帧多停一会儿,作者会在跟随(follow through)多停一点,让剑更有分量。大锤、双手斧可以蓄力和收招更慢,但smear 帧要少而快。

打开网易新闻 查看精彩图片

Overshoot 用在回收帧:挥完一剑后,身体/武器稍微冲过平衡点再回到待机,手感会更顺。

三、五个关键词:Smear、Freeze、Overshoot、Exaggeration、Gameplay

  • Smear 帧:非关键帧、用模糊/拉丝强调运动轨迹,少量帧也能做出顺滑感。通常一两帧 smear 就够,路径要符合从站姿到 follow through 的弧线;可以试试不同形状和颜色, smear 里加渐变能更顺。
  • Freeze Time:在某一 pose 多停几帧增加打击感,适合用在蓄力或强烈碰撞的 impact 帧;要克制,别停太久,只在需要强调的动作上用。
  • Overshoot:物体减速停止时会略过停止点再回来,速度越快 overshoot 越明显,可以联想摆动的摆锤慢慢停下来的样子。
  • Exaggeration:适当夸张能让像素动画更有力;作者会在手臂或武器伸展到极限时稍微拉长一点,既增加攻击范围又避免太僵硬。
  • Gameplay:做游戏时,手感优先。蓄力帧和收招帧加真实感,但太多会像输入延迟或「粘滞」。多数像素游戏会压帧数保证「按下去就动」;大范围、慢而重的攻击 vs 小范围、快而轻的攻击,按你要的玩法选就好。教程里的竖劈覆盖约 90° 从头顶到身前,对「从上往下打」很友好,下半身则留给低处敌人。
四、小结

侧视近战要兼顾一点真实发力逻辑和明确的游戏反馈。站姿决定起手与收招的弧线;smear 和 overshoot 负责顺滑与重量感;freeze 用在关键 pose 上加打击感;最后用帧数和攻击范围去匹配你想要的手感。