ue4实现剑盾战斗

本文详细介绍了在UE4中实现剑盾战斗系统的步骤,包括武器添加、举盾、闪避动作、移动、攻击、AI行为、数据表实现AI受击动画、锁定敌人功能、伤害数字与血条显示、等级系统、AI攻击以及玩家死亡和受击颤动的实现方法。通过这些步骤,你可以构建出一个完整的战斗交互体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、武器的添加

方法1:

创建插槽

打开人物骨骼界面(在任意动画里也能看到骨骼界面)

找到左右手,分别创建一个插槽,命名为剑和盾

然后放预览,调好位置,人物蓝图添加组件,蓝图那attach就行

方法2:

将剑盾建立为actor,也放到插槽

二、举盾

使用瞄准偏移(不用混合空间),放入不举盾和举盾的动画,参数设置为rise(不适用瞄准偏移的动画序列是放不进去的)

可以将瞄准偏移直接放在状态机后面

在人物蓝图中增加变量rise,按下右键时根据时间轴节点设置rise的值,松开右键时反向执行时间轴

在动画蓝图中将人物蓝图的rise值传入

最后添加布尔值 是否举盾了,当rise为1时设置为是,便于后面逻辑

注意原本的站立等姿势也要改变为持剑盾时的姿势

三、闪避动作实现及限制

注意优先级,如播放动画时,在空中时,举盾时哪些是互斥的

空中不能闪避,通过检测实现,用到节点is falling

要流畅,在蒙太奇动画快结束时使用通知

要更流畅的话,在收到通知后又有任何其他输入(如按w前进、s后退)且输入的值>0时(意思就是闪避动画播放还没结束,但你按了w使前进输入大于了0,它才提前结束这个闪避动画),停止播放当前蒙太奇动画(可以用get anim instance获得当前mesh的动画)。通过在输入移动的后面添加判断和结束当前蒙太奇动画来实现。

四、移动

设置完角色移动旋转后,要使其闪避之类的更流畅,可以:

可以设置举盾时的最大移动速度,就可以当举盾时降低速度

状态机实现跳跃

eg:站立到起跳的条件为isinair?,起跳到跳跃中的条件为:起跳的动画的剩余时间<0.1

优化:解决落地时接着移动脚不动滑步的问题

速度大于10其实差不多就是有速度时,就进入站立/走路/跑步,而原地跳跃它就会正常落地

在闪避动画中添加多一个通知:combo,后面的攻击会讲

五、攻击

使用结构体存储攻击的各项参数,创建-蓝图-结构

结构体中添加3个变量:攻击动画(蒙太奇引用)、伤害(浮点)、攻击方式(命名)

然后在人物蓝图中创建新的变量,类型为上面的结构体,并设为数组,往里添加几个元素

攻击的蒙太奇动画需要两个通知,一个attack,一个attackover,前者用于开启伤害判定,位置放在快砍到敌人的时候;后者用于通知结束可衔接下一个. 若一个动画有多个攻击点位,如挥两下,则设两个攻击通知

连击:在attackover的通知后,动画结束前,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值