UE4虚幻引擎蒙太奇动画系统入门

UE4的蒙太奇是一种动态播放角色动画的机制,弥补了状态机的不足。它允许在运行时通过参数指定动画,并能与状态机通过插槽结合使用。蒙太奇的调用简单,但功能强大,能够实现更高级的动画控制。通过插槽,蒙太奇能在状态机中占据特定位置,无视之前的结果,提供直接的动画控制权。
摘要由CSDN通过智能技术生成

什么是蒙太奇(Montage)

UE4的很多功能模块都会起一个非常文艺的名字(这体现了技术宅们深入骨髓的浪漫情怀):可视化的编程工具叫Blueprint、新粒子系统叫Niagara、动画系统叫Persona等等。蒙太奇也是其中之一,它借用了电影技术中的术语。简单的说蒙太奇就是一种动态播放角色动画的方法

从状态机(State Machine)说起

状态机,相信大家都了解。UE4的动画状态机系统非常强大,仅使用它已经可以开发出功能复杂的角色动画了。

 

但状态机并不完美:

  • 状态机的动画序列必须静态地放到每一个状态中,这些动画序列是不能够在运行时通过参数指定。
  • 随着状态机功能的增加,它的状态网络也会越来越复杂,修改的时候容易牵一发而动全身,因此它的设计、维护以及扩展都是比较困难的。
  • 我们还会遇到这样的情况:有些动画,它们数量很多,但每个动画可能仅在特殊的场合触发那么一两次(比如:角色遇到了特殊的机关要操作一下),把这些动画都放在状态机中不但工作量巨大,而且性价比很低。
  • 还有些时候,我们想跳出状态机的控制,从而获得角色动画的直接控制权,用代码直接调用动画。

于是,蒙太奇就应运而生了。

看看蒙太奇的调用方法

在这么多方面能够胜过UE4的状态机系统,它一定很复杂吧?

 

 

为了不吓跑初学者,咱们先看看蒙太奇动画最常用的调用方法。

 

如此简单粗暴,调用Play Anim Montage函数播放指定的“蒙太奇动画”,完毕!

注:这里的“蒙太奇动画”并不完全等同于UE4中的Animation Sequence,需要对Animation Sequence进行一些“处理”。它的制作过程,老王将在后续文章中详细介绍,可以保证的是这个过程并不复杂。目前大家把它理解为Animation Sequence Plus版本就可以了 。

 

 

有些朋友可能拍案而起,惊呼:“这不就是在状态机诞生之前“最最最原始”的动画调用方式么?”

 

 

仅从调用方式来看确实非常返璞归真,和“最最最原始”的动画播放方式别无二致。但UE4的蒙太奇并不是完全独立于状态机的机制,它通过一种叫插槽(Slot)的东东又和状态机完美地水乳交融到了一起。

仅仅两行文字,读书不多的老王就用了三个成语,堪称本人写博客以来之最。看到此处各位看官如果不一键三联真是枉费了老王的满腔热血啊。

下图就是蒙太奇通过插槽和状态机结合的例子(黄框标记的都是插槽节点):

 

其实所谓插槽就是一个“位置标签”,我们在制作蒙太奇动画的时候,可以为每一个蒙太奇动画指定自己的插槽。这样它就有了自己播放位置。

  • 如果我们把一段蒙太奇动画的插槽设置为紧挨着Output Pose的插槽,那么它会忽略前面所有节点运算的结果以绝对霸道总裁的姿态,只播放自己的动画片段。
  • 当然,你也可以把插槽放置在状态融合的分支通道中,这样它忽略掉的就是这个分支上自己之前的节点,相当于区域副总裁了。归根到底一句话:蒙太奇就是可以忽略掉插槽之前的所有结果。

 

 

小结

今天我们大致了解了什么是蒙太奇,以及它在UE4动画系统中的作用和地位。道理不难理解,但是这个蒙太奇机制确实能够为UE4衍生出很多高级的玩法。后面的文章中老王会介绍蒙太奇动画的制作过程,以及通过一些案例让大家对蒙太奇爱不释手。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值