AI行为树——巡逻敌人

巡逻敌人

需要知识

枚举,接口,动画,BTT,BTD,Spline

创建巡逻路线

创建路线

一个actor一个component

且direction值为-1到1

设置增加函数

在actor中创建  即添加到尾再调头

返回坐标函数

动画通知为montageNotify

创建蓝图接口调用路线

Character先创建变量

可实例化

然后创建蓝图接口

实现接口函数

在character加入蓝图接口后实现接口函数

创建BTT 路线跟随

放入行为树进行测试

会发现跑的很快且不够连续

创建BTT

调整行为树和移动流畅

Character中修改值

速度改变

创建枚举

判断切换

接口设置速度变换函数

设置BTT来修改速度

就可以在行为树中设置了

状态切换

同理创建,状态枚举

在黑板中创建枚举变量来获取character的状态放到行为树中

在控制器创建函数实现Passive和Attacking

实际就是给黑板传值

tip

本来想做一个函数来复用发现不行

行为树黑板状态设置

右键添加BTD的黑板

在没有ai感知情况下怎么调试

最简单的就是按键调试

测试会发现很多问题,什么焦点没清楚什么的

改一改行为树节点顺序加入之前的清除焦点

优先级

根据值中断还是根据结果改变中断

我们选择根据结果改变中断

observerAborts不同的选择,节点就会不同颜色

意思就是相应颜色会直接中断

即如果状态从攻击发生变化,绿色内容都将中止或取消

因此两个黑板状态选择的都改为Self

Aimoveto需要点时间进行,所以不会立刻中断

因此需在BTT路线移动强行停止移动

移除武器

与添加武器异曲同工

下面是截图

注意是montageNotify不是newnotify

整理逻辑

对行为树的整理

下一篇将使用感知组件

现在更换敌人状态是靠debug

如果使用感知组件的话,将是用听,看等

文章会陆续完善
如果文章出现错误,可在评论区指出,或者私信来共同解决

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值