1.创建AIController子类
2.AI角色使用刚才创建的AIController子类
3.黑板和行为树各创建一份
4.黑板创建需要的变量
5.运行行为树
先在自己的AIController事件开始时调用函数选用创建的行为树
6.添加感知组件
7.添加感官配置
添加感官配置,这里我用的是视力配置,可以调整视线半径和角度。
记得勾选检测中立方,不然可能检测不到主角。
8.写事件逻辑
使用目标感知更新时
设置黑板中的值是用将值设为xx这样的函数,在key name提升变量,将变量的默认值改为对应的值:如IsFind和Target。
设置黑板玩家对象和是否找到bool值
9.创建一个MoveToPlayer的任务:
获取值也是用将xx作为对象获取,记得将KeyName变量的默认值也改为Target。
使用AI Move To函数,向玩家移动。
每个任务最后都要调用完成执行,否则任务不会结束。
10.编写AI行为树
用Selector进行判断,如果IsFind为真,则执行MoveToPlayer,反之执行Wait
11.放置导航体积
只有在导航网络体中,AI才能移动。
我这里覆盖了大片区域。