虚幻4制作游戏:AI行为树跟随玩家

时间:2024-04-14 16:00:28

虚幻4制作游戏:AI行为树跟随玩家
创建一个蓝图类角色,命名PlayerChar。

虚幻4制作游戏:AI行为树跟随玩家
新建文件夹命名AI,新建蓝图类角色,命名AIChar。

虚幻4制作游戏:AI行为树跟随玩家
新建蓝图类,搜索AIController,创建AIController蓝图类,命名AICharController。
虚幻4制作游戏:AI行为树跟随玩家

虚幻4制作游戏:AI行为树跟随玩家
进入AIChar蓝图类,点击类默认值,右侧细节面板,AI控制器类选择AICharController。
虚幻4制作游戏:AI行为树跟随玩家
进入AICharController蓝图类,创建事件开始运行事件,连接运行行为树。
虚幻4制作游戏:AI行为树跟随玩家
创建行为树,命名为BT_AI。
虚幻4制作游戏:AI行为树跟随玩家
创建黑板,命名为BB_AI。
虚幻4制作游戏:AI行为树跟随玩家
打开行为树BT_AI,右侧细节面板黑板资产选择BB_AI。
虚幻4制作游戏:AI行为树跟随玩家
打开黑板BB_AI,点击新建,选择Object。

虚幻4制作游戏:AI行为树跟随玩家

命名为PlayerCharValue,基类选择PlayerChar。
虚幻4制作游戏:AI行为树跟随玩家

打开行为树BT_AI,在根节点下拉创建Sequence节点,再在Sequence节点下拉创建Selector节点。
虚幻4制作游戏:AI行为树跟随玩家
点击上方的新建装饰器。
虚幻4制作游戏:AI行为树跟随玩家

返回到内容页,刚才的新建装饰器生成一个新的文件,命名为FindPlayer。
虚幻4制作游戏:AI行为树跟随玩家

进入FindPlayer文件,点击左侧函数中的重载,选择执行条件检查AI。
虚幻4制作游戏:AI行为树跟随玩家
Perform Condition Check AI引脚拉出 对象的多球体检测。
虚幻4制作游戏:AI行为树跟随玩家
Controlled Pawn引脚拉出 获取Actor位置。
虚幻4制作游戏:AI行为树跟随玩家

获取Actor位置的Return Value一条引脚连接对象的多球体检测Start,另一条引脚连接向量+整型,值为1,引脚连接对象的多球体检测End。
虚幻4制作游戏:AI行为树跟随玩家
连接对象的多球体检测Radius值设置1000,下面的Object Typr提升为变量,变量命名为ObjectType,右侧细节面板添加默认值,选择Pawn。
虚幻4制作游戏:AI行为树跟随玩家
连接对象的多球体检测的 Draw Debug Type选择针时时长,Out Hits引脚连接For Each Loop with Break,For Each Loop with Break的Array Element引脚连接中断命中结果。
虚幻4制作游戏:AI行为树跟随玩家
中断命中结果的Hit Actor连接类型转换为PlayerChar的Object,For Each Loop with Break的Loop Body引脚也连接类型转换为PlayerChar,类型转换为PlayerChar引脚连接将黑板值设为对象。
虚幻4制作游戏:AI行为树跟随玩家

将黑板值设为对象的Key提升为变量,命名为TargetActor,勾选可编辑实例。
虚幻4制作游戏:AI行为树跟随玩家

For Each Loop with Break的Completed引脚连接返回节点,勾选Return Value。

虚幻4制作游戏:AI行为树跟随玩家

打开行为树BT_AI,右键Selector,点击添加装饰器,搜索find player,点击。
虚幻4制作游戏:AI行为树跟随玩家
Selector节点下拉创建Sequence节点,右键添加装饰器,选择Blackboard。
虚幻4制作游戏:AI行为树跟随玩家
Sequence节点下拉,点击Tasks,展开选择Move To。
虚幻4制作游戏:AI行为树跟随玩家
Sequence节点下拉,点击Tasks,展开选择Wait,等待时间选择1秒。
虚幻4制作游戏:AI行为树跟随玩家
FindPlayer的Sequence节点下拉,创建Sequence节点,右键选择添加装饰器,选择Blackboard。
虚幻4制作游戏:AI行为树跟随玩家
点击Blackboard Based Condition,右侧细节面板键查询选择未设置。

虚幻4制作游戏:AI行为树跟随玩家
进入AICharController蓝图类,运行行为树的BTAsset资产选择BT_AI行为树。
虚幻4制作游戏:AI行为树跟随玩家
主页左侧选择体积,点击导航网格体边界诶体积,放置到关卡中,范围覆盖整个关卡。
虚幻4制作游戏:AI行为树跟随玩家
虚幻4制作游戏:AI行为树跟随玩家

把AIChar和PlayerChar放入关卡,运行,进入AI范围就会跟随玩家了。