跳转至

12

102 Animation Montages

动画蒙太奇(Animation Montage)是虚幻引擎 5 中一种用于组织、管理和动态播放多个动画序列的高级动画资产。它能将多个独立的动画片段(如攻击、重装填、互动)整合到一个文件中,并通过蓝图进行精准的逻辑控制

状态机和蒙太奇

  1. 设计目的

    • 状态机:用于管理角色持续存在的、可循环的基础状态,比如待机、走路、奔跑、跳跃。它就像一个后台进程,持续运行,随时根据角色速度、是否落地等条件自动切换
    • 蒙太奇:用于处理非循环的、有明确起止点的离散动作,比如挥拳、开枪、装弹、使用道具、过场动画中的交互。它像是一个前台任务,一旦触发就会执行,执行完就结束
  2. 控制权与打断逻辑

    • 状态机:由数据(如移动速度)驱动,引擎自动判断切换条件。通常有优先级,比如跳跃状态可以打断奔跑状态
    • 蒙太奇:由游戏逻辑(如玩家按下攻击键)主动触发。它拥有最高的控制权,可以强制覆盖正在播放的状态机动画。并且,蒙太奇自身可以在蓝图中精细控制“哪个动作可以打断当前动作”,这对于实现格斗游戏的连招系统至关重要
  3. 混合方式

    • 状态机:通常是全局混合,即整个角色的骨骼姿态都会过渡到新状态。比如从站立到蹲下,全身姿态都会变化
    • 蒙太奇:最大的优势是分层混合。你可以通过“插槽”(Slot)将它精确地叠加到角色身体的特定部位。例如,角色在下半身保持奔跑状态机动画的同时,上半身通过蒙太奇播放一个装弹动画,两者互不干扰
  4. 复用性与逻辑耦合

    • 状态机:逻辑和动画耦合较紧。它的状态切换逻辑写在动画蓝图里,如果想把一套移动动画换给另一个角色,通常需要复制整个蓝图,维护起来比较繁琐
    • 蒙太奇:逻辑和动画高度分离。一个蒙太奇资产本身就包含了动画片段、通知和分段。你可以在蓝图中通过简单的 Play Montage 节点调用它,而无需改动复杂的动画蓝图。这使得不同角色(甚至敌我双方)可以轻松复用同一个“受击”或“死亡”蒙太奇

创建动画蒙太奇 AM_AttackMontage

103 Playing Montages from C++

104 Attacking State

105 Resetting the Action State

106 Item State

107 Sound Notifies and Meta Sounds

108 Meta Sounds for Footsteps

109 Fixing Foot Placement

评论区

欢迎在评论区指出文档错误,为文档提供宝贵意见,或写下你的疑问