当前位置: 代码网 > it编程>游戏开发>游戏引擎 > UE4 回合游戏项目 11- 添加人物攻击动画

UE4 回合游戏项目 11- 添加人物攻击动画

2024年08月03日 游戏引擎 我要评论
​在上一节(UE4 回合游戏项目 10- 添加怪物死亡动画)基础上添加人物攻击动画

在上一节(ue4 回合游戏项目 10- 添加怪物死亡动画)基础上添加人物攻击动画

效果:

步骤:

打开gamemode1准备在如下标注区域添加人物攻击动画的相关节点

1.添加一个蓝图接口

 命名为轮到攻击接口

双击点击打开轮到攻击接口,函数命名为普通攻击

 新建一个输出参数,命名为动画播出时间,输出类型为浮点型

 

 然后编译保存一下

2.我们需要让玩家1添加这个蓝图接口

打开player1,点击类设置,然后在右侧点击添加接口按钮

 添加刚创建的轮到攻击接口

 此时在左侧接口中就会有普通攻击的事件

 下面需要获取player1的蓝图

 3.点击mesh,然后点击浏览到内容浏览器中的资源,然后打开

 然后打开1lantu

 4.点击添加一个新函数

命名为玩家普通攻击

 

 

下面找一个攻击动画做成动画蒙太奇

5.找的是名为cast的动画,右键点击cast选择浏览至资源

 选中cast,然后点击鼠标右键-》创建-》创建动画蒙太奇

 命名为玩家1普通攻击

 

6.在1lantu中播放这个蒙太奇,需要用到蒙太奇播放这个节点,montage to play这个参数选择刚创建的玩家1普通攻击这个动画蒙太奇

 由于玩家普通攻击这个函数需要一个输出的参数,因此需要添加一个输出参数(选中玩家普通攻击,然后点击新建参数)

 新建的输出参数名为播放时间,类型为浮点型

 

7.在player1的普通攻击这个接口中,添加如下节点,这样就可以把返回值返回到gamemode1中

 8.打卡gamemode1,添加普通攻击

 9.打开玩家1普通攻击这个动画蒙太奇

 将插槽改选为defaultgroup.upperbody

此时运行游戏,效果如下:

        可以看到不符合逻辑的是角色挥拳完毕后,敌人才倒下,因此应该在播放攻击的蒙太奇动画中计算伤害值,而不是等待攻击动画播放完毕后才计算伤害值,因此需要用到蒙太奇的通知功能

10.打开玩家1普通攻击这个动画蒙太奇

 将时间轴调整到如下图标注区域部分,也就是角色手抬起的触碰到正前方的时候

 在通知的那个轴上点击鼠标右键-》添加通知-》新建通知

 命名为普通攻击通知

 

 添加了这个通知后,动画的时间轴每次经过通知的地方,就会执行通知事件

11.在1lantu中添加普通攻击通知节点,从而调用这个通知事件

 再通过如下节点,对enemy造成伤害

将类型转换为纯类型对象 

 但还需要知道伤害哪个对象

此时可以删除gamemode1中的如下选中的节点

 

 12.打开1lantu的玩家普通攻击这个函数

 添加一个输入

 命名为角色总类,选择rolecategory的对象引用

 将角色总类提升为对象

 命名为目标角色

 此时目标角色就可以在蓝图的事件图表中使用了

 但是此时在player1中,也需要输入一个角色总类

 13.打开轮到攻击接口

 点击普通攻击函数,然后添加一个输入

命名为角色总类,类型为rolecategory 

 

 保存编译

此时打开player1的普通攻击函数就可以看到普通攻击有了一个角色总类的输出,将其连到玩家普通攻击的输入

 14.打开gamemode1,将选中的敌人连到角色总类

 

此时就完成了角色攻击动画的全部内容,效果如文章开头所示。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com