手册:AnimationPlayer节点的使用

ACTION GAME MAKER 中使用的 Animation Player 节点是 Godot 的原生节点。本手册将对其部分功能进行说明。

Animation Player 的特点

这是一个控制多个轨道的所谓时间轴型播放系统,其制作方式与通用的“视频制作工具”类似。

添加轨道

直接从各属性添加

选择 AnimationPlayer 节点,并确保底部面板中的 AnimationPlayer 处于打开状态。
随后,选择各个节点时,每个属性的右侧会出现一个钥匙图标。
点击该钥匙图标即可添加轨道和关键帧。

从时间轴添加

在时间轴中选择“添加轨道”,然后选择要添加的轨道即可完成添加。
如果是通常使用的属性轨道,请在选择窗口中选择节点并指定属性。

使用编辑器顶部的插入键按钮(仅限位置、旋转、缩放)

这基本上是用于骨骼动画的设置。
将当前选中节点的位置、旋转、缩放中已开启切换的属性的值,插入到当前选定的时间点。
如果录制 (rec) 按钮处于有效状态,调整这些值时会自动反映到动画轨道中。
image

关于 RESET 轨道

添加轨道时,会显示是否添加 RESET 轨道的选项。
结论是,通常没有必要特意添加。


RESET 轨道用于重置各轨道的状态,但在 ACTION GAME MAKER 的可视化脚本动画播放中并未特别使用。
不过,各对象的“初始状态”会显示为 RESET 轨道的状态。
如果在编辑器上禁用了某项,但在 RESET 轨道中启用了它,则在游戏中仍会以启用状态播放,因此建议不要添加。

碰撞体的变形

关于各碰撞体大小的属性,由于决定形状大小的 RectangleShape2D、CapsuleShape2D 等位于展开后的内部,因此需要展开并选择。

属性的应用示例

原则上,Animation Player 可以插入任何类型的属性,以下介绍一些应用示例。

  • 攻击判定/碰撞判定/墙壁判定的开启/关闭切换。
    通过切换各 Collision 的 Disabled 属性的开/关,可以实现切换。

  • 图像切换
    通过切换 Sprite2D 等的 Visible 属性的开/关,可以实现武器更换、技能替换等图像切换操作。

  • 调整各设置节点
    ACTION GAME MAKER 专用节点的各属性也可以作为关键帧插入,因此可以插入 MoveAndJumpSettings 的属性来创建独特的加速方式,或在 BaseSettings 中根据动画调整攻击力等。

  • 粒子播放
    通过切换 Particles 节点的 Emitting 属性,可以在动画播放期间播放粒子效果。

  • 声音播放
    通过插入 AudioStreamPlayer 等播放声音的节点的属性,可以实现声音的播放/停止等操作。

  • 改变着色器效果量
    通过插入着色器的属性值,可以实现逐渐扭曲等动画效果。

缓动 (Easing)

通常,如果设置为在动画中更改数值,数值将以等间隔变化。
例如,如果 0 秒处的值为 0,1 秒处的值为 1,那么 0.5 秒处的值就是 0.5。
但是,使用缓动可以改变这种变化趋势。
如下面的图像示例所示,0.5 秒处的值将小于 0.1。
缓动可以针对每个关键帧进行设置,即设置到下一个关键帧的缓动方式。
在上面的例子中,需要在 0 秒的关键帧处设置缓动。

贝塞尔曲线

在插入关键帧时,可以将其转换为贝塞尔曲线轨道。
缓动只能在两个不同值之间进行变化调整,而贝塞尔曲线轨道则可以自由绘制曲线。
点击底部的线条图标即可启动曲线编辑器。


在曲线编辑器中,可以通过操作所谓的控制手柄自由创建曲线。

需要注意的处理时机

在 Animation Player 中,播放结束后,下一个动画将从下一帧开始播放。
因此,如果制作一个 60FPS 下时长为 1 秒的动画,在 1 秒时刻实际上是第 59 帧的中间,下一个动画将从 1.002 秒开始。虽然仅有 0.002 秒的微小差异,但会产生动画的空白时间。
通常这个时间间隔肉眼无法察觉,因此不会成为问题,
但如果创建了如下动画:
在动画 1 中途启用攻击判定,
在动画 2 开始时禁用攻击判定。
若无敌时间不存在或时机非常严苛,这 0.002 秒的差异可能会导致连续命中等问题,请务必注意。