让控制器接管角色
创建 BP_Guard(Character)和 BP_GuardController(AIController)。在角色默认值设置 AI Controller Class;按生成方式设置 Auto Possess AI。控制器 On Possess 后调用 Run Behavior Tree,指定 BT_Guard。
按钮注入感知事件;本示例失去视野时立即清空目标。
CONCEPT / 核心理解
BUILD IN UNREAL / 蓝图搭建路径
创建 BP_Guard(Character)和 BP_GuardController(AIController)。在角色默认值设置 AI Controller Class;按生成方式设置 Auto Possess AI。控制器 On Possess 后调用 Run Behavior Tree,指定 BT_Guard。
BB_Guard 添加 TargetActor(Object,基类 Actor)与 PatrolLocation(Vector)。行为树关联此黑板。关卡添加 NavMeshBoundsVolume,覆盖可行走地面;按 P 查看导航区域。
Root 下放 Selector。左侧 Move To 使用 TargetActor,并挂 Blackboard Decorator:Is Set,Observer Aborts = Both。右侧 Sequence:选巡逻点任务、Move To(PatrolLocation)、Wait。
在控制器添加 AI Perception,配置 AI Sight 和阵营检测。On Target Perception Updated 中筛选玩家及视觉刺激:Successfully Sensed 为真时写入 TargetActor;为假时按本例策略清空该键。
蓝图 BTTask 收到 Receive Execute AI 后选点并写黑板,再调用 Finish Execute。异步任务完成后再结束;中止时清理计时器或请求。本页为突出结构,将选点操作合并在巡逻轮次开始处。
PIE 时打开行为树,选择对应 AI 的调试实例,观察执行路径和黑板。Move To 失败时检查 Possess、导航覆盖、目标可达性与接受半径。多人游戏通常在服务器驱动权威 AI。
CHECK YOUR UNDERSTANDING