Skip to main content
 首页 » 资源教程 » UE4教程

UE4示例项目学习:用Blueprint来创建一个可操作角色(二) 动画蒙太奇篇(Animation Montage)

2016年09月03日 22:20:2120770

上一篇的博文中我们写了怎么把资源导入到项目工程中,然后实现通过按钮让人物进行走动,跳跃.在这一篇博文中我们将要完成最后一步,攻击动作.

上一篇文章链接地址:http://www.chinaar.com/UE4/1871.html

 由于人物在跑步的时候上下半身都会动作,而攻击的时候也是一样,所以我们需要选定动画是如何混合的,这里就要用到我们的AnimationMontage了.废话不多说.开始写文章.

1.新建AnimationMontage文件

内容管理器->右键->动画->动画蒙太奇,

2.设置AnimationMontaget文件

UE4示例项目学习:用Blueprint来创建一个可操作角色(二) 动画蒙太奇篇(Animation Montage) UE4教程 第1张

UE4示例项目学习:用Blueprint来创建一个可操作角色(二) 动画蒙太奇篇(Animation Montage) UE4教程 第2张

我们出拳的逻辑应该是这样的.如果我一直按着按钮的话,那么就左右连续出拳,如果说我某一个时刻松开了按钮,那么出完当前的这一拳以后我就应该要收拳,并回到待机状态.

如果说最后出的是出拳1,那么久应该播放出拳1的收拳动作,如果播放的是出拳2,那么久应该播放出拳2的出拳动作.上面所说的IsStillPunching1,IsStillPunching2时间其实就是为了帮助这一块而使用的.这两个事件分别是在出拳1和出拳2动作快结束的时候抛出的.当我们抛出这个事件以后,其他模块就会捕获这个事件,这个时候,其他模块就要去检查玩家是否还按着按钮希望继续进行攻击,如果没有的话,就应该开始收拳了,否则就继续出拳.

关于检测出拳的部分接下来讲

3.修改输入和输入的响应事件,同时在MyCharacter_BP中对于按键进行响应

修改输入在上一篇文章中写了,就是在项目设置那里进行的输入操作,还有对应什么样的事件的设置.

在这里我们要修改一下角色的蓝图类,添加以下部分

UE4示例项目学习:用Blueprint来创建一个可操作角色(二) 动画蒙太奇篇(Animation Montage) UE4教程 第3张

我们在该蓝图中添加了一个IsPunching变量,便是当前有没有按住按钮,要进行攻击.按下的时候是TRUE,松开了就是FALSE,只要我们再把捕获的事件和这个变量一起使用,就可以知道我们到底要怎么出拳收拳啦.

4.修改MyAnimation_BP文件.

由于图片太大,超过一个屏幕了,我们就只截取了添加的部分.

UE4示例项目学习:用Blueprint来创建一个可操作角色(二) 动画蒙太奇篇(Animation Montage) UE4教程 第4张

到这里为止,我们应该就能让角色在场景中攻击了,按下绑定的按键,那么人物就会开始攻击了,松开后会恢复,但是这里面就有个问题,我如果一边跑一边攻击,那么我的人物不会播放跑的动作,他完全被攻击的动作覆盖了.这明显是不符合我们要求的.那么为了能让我们的人物能边跑边攻击,我们需要添加Slot,并将该Montage文件的动作仅作用于该Slot,这样子就可以实现动作的混合了.

5.在AnimationMontage中新建Slot,修改MyAnimation_BP中的动画图表

UE4示例项目学习:用Blueprint来创建一个可操作角色(二) 动画蒙太奇篇(Animation Montage) UE4教程 第5张

UE4示例项目学习:用Blueprint来创建一个可操作角色(二) 动画蒙太奇篇(Animation Montage) UE4教程 第6张

UE4示例项目学习:用Blueprint来创建一个可操作角色(二) 动画蒙太奇篇(Animation Montage) UE4教程 第7张

到这里为止,我们的AnimMontage就算是全部完成了.这个示例项目也差不多可以告一段落了.下面稍微总结一下整个Montage混合的一个流程

首先,我们当前是否想攻击取决于我是否按了按键,如果按了,那么为true,否则为false.我们将这一个变量通过MyCharacter_BP中的蓝图来记录下来(在项目设置的输入中设定好绑定关系).

由于我们设定了动作之间的循环关系,所以如果我一直反复按着按钮的话,那么我是会一直出拳的.如果我松开按钮,那么这个时候需要判断我当前出拳出的是哪一拳,从而决定怎么播放收拳的动作.

决定是否继续进行攻击的事件由AnimMontage中的通知来发出,当我们收到了这个事件以后,再根据玩家是否按键,来决定要不要继续攻击.到这里为止,我们的攻击流程就结束了.然后是动作的混合部分,由于我们需要让上半身和下半身播放不同的动作,所以我们要用动作混合.混合的方式是整体使用原有姿势,但是在攻击的时候上半身使用攻击姿势.设定的话按照上文中所说就可以啦.整个Montage的思路就是这样了.

整个教程学习下来,看官方视频花了2天,写两篇博文加上再次理解用了1天.其实不论是看什么教程,如果不进行总结,跟着教程走一遍就完了,那么最后能剩下来的东西真的不多.这份教程肯定还有很多不足的地方,如果有什么不足的,欢迎大家指出(如果有人看的话哈哈...)最后再推荐一下官网的视频,如果你看这篇教程看不懂,那么你去官网视频看一下,你就什么都清楚了哦~

评论列表暂无评论
发表评论