1.创建文件夹分别创建,行为树、蓝图AI控制器、一个蓝图NPC
2.打开蓝图NPC将 AI控制器 挂载到:细节-Pawn-AI控制器类中 并将自动控制AI项改为以放置在场景中或已生成
3.将在AI控制器中添加一下蓝图,将AI控制器和行为树进行绑定
4.行为树中创建黑板,在黑板中创建一个vector变量5.在行为树中新建任务6.在新任务中 创建事件接收执行AI,cast to 我们的NPC ,并提升变量保存
7.可以直使用get actor 获取导航网格体边界,我们想要通过获取导航网格体边界来获取NPC的位置,对于NavMash来说Z轴太大会导致NPC无法获取到位置导致NPC无法移动,所以获取边界的x,y,以及玩家的z轴,合成向量8.获取actor边界的结点Box Extant通过print输出会发现他的值大约等于NavMash的一半,非常适合用来当做半径,所以将它变为半径,并连接Origin,到这里我们输出的是一个向量值,想要将向量值转化为黑板内的向量值,需要创建一个变量将变量类型改为黑板键选择器,并将黑板值设为向量来获取随机的向量值。
9.最后需要给这个任务创建一个完成执行
10.将行为树如下设置,并且将自定义任务以及Move To的self actor改为获取向量即可(注意自定义任务需要将我们创建的黑板键变量旁边的眼睛打开才能修改)
最终效果,NPC都在漫无目的的行走