课程进度 1% · 第1/10章第1/10章 · 标签 1/8
— 1 —
时间决定运动
动画由离散画面构成,但游戏里的位置必须由时间驱动。若每次刷新移动两像素,刷新率翻倍就会跑得更快;正确量纲是速度乘秒数。先区分物理状态、动画播放时间和最终显示位置,避免用某一张精灵图来决定角色是否已经受伤。
例如同样每秒移动六十像素,三十次刷新应每次前进两像素,一百二十次刷新应前进半像素。小数坐标可以保存在逻辑状态里,只有绘制阶段才按画面风格决定是否取整。时间、空间和动作各自拥有独立变量,才能解释慢动作、暂停与不同设备上的一致性。
— 2 —
从帧到状态
关键帧规定动作的重要姿态,中间帧连接这些姿态。跑步可以循环,死亡通常只播一次。动画状态机应依据速度、落地和生命值选择动作,并明确死亡高于受击、受击高于跑步的优先级;不要在每帧都重新从第一帧播放同一动作。
实施顺序
- 准备固定步长、累计器和上一位置,速度统一用像素每秒。
- 每次先模拟,再读取插值后的只读位置;暂停恢复重置时间戳。