What
观看 Masahiro Sakurai on Creating Games 的视频,学习跳跃的物理机制!
视频链接
内容
D 03 - Jump Physics
跳跃动画
- 跳跃动画
- 是一个很简单的动画,但其实其中有诸多需要考虑的地方
- 跳跃动画是如何在程序中被设计的
- 通常而言会设计一个降落速度
- 最开始有一个向上的初始速度
- 每向上一帧,就会施加一个向下的速度
- 如果地面是平的,那么角色就会在达到和初始上升速度相同的速度时落地
- 且速度施加通常只针对垂直方向,水平方向保持和原始状态一致/稍微减小一些
- 需要明确的一点是,游戏中的跳跃动画可以根据游戏需要来改变
例子
- Super Mario Bros.
- 上升的时候速度比较慢
- 即下降加速度施加的时间比较朝后
- 但在到达最高点之后突然增大下降加速度,因此马里奥下降得比起上升得要快很多
- 上升的时候速度比较慢
- Metroid
- Samus 的上升速度甚至更慢
- 其下降得也很慢,从而营造一种她在浮空的感觉
- 且密特罗德中的射击高度是很重要的,所以跳跃的设计需要 1
- Ghosts’ n Goblins
- 跳跃高度相对很低
- 并且一旦跳起后落点已经确定
- 这里的跳跃限制更强
- 但相对的也有更坚实的 “game essence”的感觉
- 因为你必须仔细考虑每一次跳跃
- Street Fighter
- Zangief’s Spinning Pile Driver 攻击
- Street Figher II Turbo 之后加快了其上升后的速度
- 这使得同样的攻击有了更强的“打击感”
- Super Smash Bros.
- 在起跳之前会有一个 windup
- 以前对于每一个斗士而言这个动作都是不一样的
- 但如今每个斗士的这个动作都被统一了
- 如果我们将其完全去除,玩家可能在要释放 up smash 之前就先跳起了
- 所以需要将其以某种形式保留下来
- 樱井每次在制作新的大乱斗系列的时候都在想到底需不需要跳跃
- 答案总是确定的
- 但其实每一作中的物理都有些许变化
- 在起跳之前会有一个 windup
- Smash Bros. Ultimate
- 这是 Kirby Super Star 之后的首部作品,在其中运用了一种新的跳跃设计
- 在每次跳跃的开始部分就给其一个很大的向上速度
- 几帧之后迅速增大向下的加速度
- 一旦跳跃到了特定高度,向下加速度就回到正常
- 如此一来,即使玩家反应慢了一点也能及时触发跳跃
- 这引入了更多的参数,更复杂的物理,以及潜在的更多的 bug
- 但这也意味着一个漂亮的跳跃表现以及一些相应的好处
- 但樱井猜玩家们并没有注意到这一点,这只是
- 这是 Kirby Super Star 之后的首部作品,在其中运用了一种新的跳跃设计
小结
- 即使是一个简单的跳跃也有很多门道
- 仔细思考,可能你根本不知道最终能想出来什么!