Art Studio 教程:同时行走、蹲伏、跳跃和射击
制作一个平台游戏角色:移动时双腿持续迈步,上半身可以开火,蹲下时则在行走动作上叠加姿势变化。本教程使用 Art Studio 中的 Nova · Platformer Courier,让素材、动画片段和骨架从一开始就配套。
需要实时骨骼绑定更新,以及包含 Rigged Objects 的版本。目前尚未确定发布日期。烘焙的精灵动画无法实现此处展示的独立骨骼混合效果。
1. 准备角色素材
- 创建一个启用了 Bones / Rig 的 Art Studio 项目,或者切换到 Modes → Rig & Animate。
- 打开 Presets,选择 Nova · Platformer Courier,然后选择 Use Preset。如果你已经有角色,请另存一个单独的练习项目。
- 预览 Idle、Walk、Crouch、Shoot、Takeoff 和 Fall。检查素材时隐藏骨骼。
- 打开 Body Parts,检查 Legs 和 Upper Body。Legs 应包含预期的下半身骨骼链;Upper Body 应包含躯干和射击骨骼链。
对于自己的骨架,使用 + 创建组,为组命名,然后选择组内的骨骼。按住骨骼或点按右键,然后选择 Select Branch,即可包含该骨骼的所有后代。保存组。Body Parts 指南介绍了组成员、父级运动,以及可选的手臂/头部组。
2. 导出实时骨骼绑定并放置角色
- 保存 Studio 项目。
- 选择 File → Export Game Asset → Rigged Object…。
- 在 Animation clips 中包含 Idle、Walk、Crouch、Shoot、Takeoff 和 Fall。先使用 Fit Artwork 自动设置逻辑边界。
- 导出到 Asset Library。选择标记为 Rigged 的素材,将其添加到 Dock,然后拖入场景。
- 将角色配置为位于实心平台上的物理对象。检查碰撞形状和放置位置;动画图形中的肢体不会生成独立碰撞体。
- 在 Rigged Object 属性中,选择 Animation: Idle、Speed: 1×,并开启 Start on Play。
- 短暂运行场景。触碰控制项之前,角色应处于 Idle 状态。
可编辑的 Studio Project 用于打开和编辑;放入场景的是导出的 Rigged 素材。更改组或动画片段后,请重新导出。请参阅保存项目和导出游戏素材。
3. 将 Walk 设为主要移动动画
添加 Joystick Controlled。Object A 是摇杆;Object B 是角色。启用 Play Animations,然后打开 Custom Animations。
对于 Left 和 Right,都选择 Walk 和 Full Animation,保持 Speed Multiplier: 1×,然后点击 Select Animation 确认。先将过渡时间设为 0.15 s。保持水平移动启用;对于横版游戏,可以禁用向下的物理移动。
运行场景并左右移动。添加更多动作前先测试这一步。如果步幅看起来太快或太慢,请单独调整动画片段的倍速,不要改动角色的物理移动速度。
4. 在 Walk 上叠加 Crouch
在同一个 Joystick Controlled 行为中,打开 Down 动画槽。
- 选择 Crouch。
- 选择 Additive。
- 在模式按钮正下方,选择 Body Part: Whole Rig。
- 保持 Speed Multiplier: 1×,并将 Transition Duration: 0.15 s。
- 选择 Select Animation。
在宽屏选择器中,选择动画片段后,预览会循环播放。窄窗口中最初只会显示循环列表。点击循环旁的播放图标即可预览;想腾出空间时,关闭预览。然后点击 Next,打开 Playback 并设置这些选项。选定的模式和 Body Part 会显示在数值设置之前。
测试以下四种情况:只按 Down 时角色蹲下;按住 Down + Right 时角色边蹲边走;只松开 Down 时角色站起并继续行走;松开摇杆时角色恢复场景中的 Idle。
**为什么只有 Crouch 使用 additive:**Walk 提供完整、循环播放的步态。Crouch 则从中性第一帧开始,提供姿势差异。两个 Full Animation 会相互争夺控制权;两个 additive 动画则无法提供预期的完整 Walk 基础。如果你自定义的 Crouch 一开始就处于蹲姿,请重新制作动画片段,使第一帧为中性姿势,后面的终点帧再变为蹲姿。使用 Once 播放,这样摇杆就能让角色保持在终点姿势。
5. 射击时保持双腿运动
添加 Shoot with Button,并配置常规子弹图形、射击方向和其他游戏设置。Object A 是按钮;Object B 是角色。射击动画会改变角色的姿势,但不会替代该行为的投射物设置。
在自定义射击动画中,选择 Shoot → Body Part → Upper Body。使用与移动相同的起始 Animation Priority;如果此动作必须覆盖重叠动画,也可以设置更高的优先级。确认选择。
运行场景。在站立、行走和蹲着行走时分别射击。射击结束后,控制器会释放射击层,使底层姿势恢复。如果双腿停止运动,请检查 Shoot 是否设置为 Body Part,而不是 Full Animation,并检查该组的成员。
单手动作也可以改用单独的 Front Arm 组。将上臂、前臂、手和武器控制骨骼都包括在内。父级胸部的运动仍会带动这条手臂。
6. 让跳跃动作跟随实际物理状态
添加 Jump with Button。同样,Object A 是按钮,Object B 是角色。配置跳跃力度并启用 Play Animations。
| 动画槽 | 动画片段 | 模式 | Body Part |
|---|---|---|---|
| 初始跳跃 | Takeoff | Body Part | Legs |
| 下落 | Fall | Body Part | Legs |
明确选择 Fall。动画片段名为“Fall”并不代表系统会自动将它分配到对应位置。将跳跃的 Animation Priority 设置为不低于移动动画,这样 Walk 就不会在角色仍处于空中时夺回腿部姿势。
Takeoff 播放一次,并在角色上升期间保持结束姿势。到达物理运动的最高点时,控制器会切换到 Fall,并在下降过程中重复播放下落姿势。着陆后,空中动画层会释放。上半身仍可继续射击。
示例中的完整 Jump 动画适用于时长固定的表演或烘焙循环。如果重力、平台高度或跳跃力度会改变腾空时间,那么 Takeoff + Fall 的效果更好。
7. 检查整体组合效果
| 测试 | 预期结果 |
|---|---|
| 不输入任何操作,启动场景 | 播放 Idle。 |
| Left / Right | 播放 Walk,角色同时移动。 |
| Down | Crouch 播放至终点并保持。 |
| Down + Left / Right | Walk 继续播放,角色保持蹲姿。 |
| 移动时松开 Down | Crouch 淡出;Walk 继续播放。 |
| 移动时射击 | Upper Body 开火;双腿继续播放 Walk。 |
| 跳跃时射击 | 双腿先播放 Takeoff,再播放 Fall;射击保持独立。 |
| 着陆并松开控制项 | 控制器释放各动画层,底层的 Idle/移动动画恢复。 |
蹲下只会改变姿势,不会改变碰撞形状。低矮通道可能仍需要单独设置游戏碰撞。对于任意姿势,混合动画也无法保证双脚始终贴地;请目测检查组合效果,并在需要时改进制作好的动画片段。
如果某个动作意外持续播放,请检查 Play Animation 的 Loop/Restore 选项、重叠的组、动画优先级,以及程序化骨骼/IK 覆盖。除非你确实想停止整个对象的动画,否则不要使用整体 Stop Animation;它会影响对象的动画播放,包括其他动画层。
调整此设置
- **敌人:**使用 Patrol 设置移动动画,并在合适的 Body Parts 上分别设置射击或受击动作。
- **炮塔载具:**将底盘作为主要移动动画,并创建 Turret 组以独立控制瞄准或后坐力。
- **生物:**按实际骨骼将头部、尾巴、翅膀或腿分组。组名本身并不决定成员。
- **动态角色目标:**当动画选择器要求指定参考素材时,先选择一个参考素材,然后在运行时提供兼容角色的 Object ID。参考素材不会将动态目标变成固定对象。
详细规则请参阅 Body Parts 和 Animation Blending;手动控制骨骼、IK 和素材的方法,请参阅 Rig Behaviours。

