UE4 简单AI

UE4中Pawn是马甲,Controller是驱动马甲的大脑。 Controller和Pawn相对独立,不一定谁必须有谁。一个Controller至多能控制一个Pawn,一个Pawn至多能被一个Controller控制。

在这里插入图片描述

问我为什么不粘代码?不好意思,截图太方便了 ^ _ ^

1.蓝图启动行为树

1)建立行为树与黑板(Behavior Tree、BlackboardData)
此两项放在同一级目录里!否则BTTask里的对BlackBoardData的Data的读写失效等问题。
在这里插入图片描述
在行为树中选中要使用的黑板
在这里插入图片描述
2)创建AIcontroller,在AIcontroller下执行useblackboard和runbehaviourtree节点
在这里插入图片描述
3)创建BP类,一般继承自Pawn或Character
在pawn选项中更改两个选项
Auto Possess AI表示是否AI自行启动,调成该选项后,动态生成与摆放在关卡中的AI都会启动行为树,默认选项仅摆放在关卡中的AI会启动行为树
AI Controler Class中选定当前AI要用的AIController类
在豆腐干地方地方官梵蒂冈梵蒂冈地方官里插入图片描的的述

2.使用C++直接属性引用得到蓝图中的行为树,并自行控制启动与停止

1)建立C++类的AIController类
建立三个指针变量,行为树组件、黑板组件、行为树
在这里插入图片描述
.cpp中需引入组件相关头文件
在这里插入图片描述

2)构造函数中创建组件
在这里插入图片描述

3)自行构造两个函数,用与启动或停止行为树
在这里插入图片描述

4)重写虚函数Posses与UnPosses,设置黑板数据并启动行为树
在这里插入图片描述
调用StartBTree与StopBTree方法,为启动与停止行为树,可在适当时候调用,可以适时启动与停止行为树。(可能并不需要?或不该这么做?)

5)创建蓝图子类继承自C++的AIController,选取要使用的行为树
在这里插入图片描述

行为树优点

1.结构清晰
2.便于调试
3.适用于成群的AI或大量逻辑行为相似的AI

行为树中的黑板

1.行为树中的核心模块
2.用于支撑行为树中的数据存储和读取
3.相当于我们的草稿纸,我们可以把需要参与逻辑的数据罗列在上面
4.使用方便,数据扩展性强
5.有较好的维护性

行为

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值