Unreal Engine 5 RPG Tutorial Series - #21: AI Detection and Chasing

Gorka Games
23 Apr 202321:28

Summary

TLDR本教程是关于Unreal Engine 5 RPG系列的进阶AI教学,继上一集让敌人能够巡逻后,本集将教授如何让AI敌人检测并追逐目标角色。首先,在AI控制器蓝图中添加AI感知组件,配置感知设置,使AI能够通过视觉发现目标。接着,通过行为树添加逻辑,让AI在检测到目标后开始追逐,并在丢失目标后返回巡逻状态。教程还涉及了如何使用Blackboard变量来控制AI行为,并在行为树中应用这些变量。此外,还介绍了如何通过特定的组件让玩家角色被AI检测到,并调整AI的速度以避免追逐时的异常行为。最后,通过修改默认游戏配置文件,优化了AI的感知逻辑,确保AI能够更平滑地检测和追逐玩家。整个教程旨在构建一个基础的AI行为框架,并预告了后续将深入探讨更复杂的AI行为,如攻击和分散注意力等。

Takeaways

  • 🎮 在本教程中,我们将继续RPG系列教程,并学习如何让AI敌人能够检测并追逐玩家或其他角色。
  • 👀 首先,需要在AI控制器的蓝图中添加AI感知组件,以使AI能够通过视觉等方式检测对象。
  • 🔍 添加AI感知组件后,需要配置感知设置,例如视野角度和侧面半径,以确定AI的检测范围。
  • 🤖 通过行为树添加逻辑,以便当AI检测到新目标时,能够触发特定的事件并开始追逐。
  • 📍 使用黑板(Blackboard)变量来存储和访问AI的目标,这有助于在行为树中做出决策。
  • 🔄 当AI失去目标时,需要有一个机制让AI返回到巡逻状态,这通常通过重置黑板变量来实现。
  • 🚀 创建一个新的行为树序列,用于定义AI追逐目标的行为,包括移动到目标位置并在接近时停止。
  • 🛠 调整AI的移动速度,以确保它不会过快地接近玩家,从而破坏游戏体验。
  • 🧩 使用装饰器(Decorators)来控制行为树中的序列是否可以执行,例如,仅当AI有目标时才执行追逐序列。
  • 📝 修改默认的游戏配置文件,以确保AI只检测到具有特定感知源的角色,避免错误地检测到其他对象。
  • 💡 通过在玩家角色蓝图中添加感知信号灯(Perception System Light Source)组件,使AI能够检测到玩家。
  • 🔄 随着教程系列的深入,将逐步构建更复杂的AI行为,包括攻击、分心和特殊区域的守卫行为。

Q & A

  • 在视频中,提到了哪些方法可以让AI检测到目标?

    -视频中提到了使用AI感知组件(AI Perception)来让AI通过视觉(AI Sense Sight)检测目标,包括设置视野角度(Angle of Vision)和侧面半径(Side Radius)等参数。

  • 如何让AI在失去目标后返回巡逻状态?

    -当AI失去目标时,可以通过设置行为树(Behavioral Tree)中的序列来让AI返回巡逻状态。在视频中,展示了如何使用Blackboard变量来决定AI的行为,如果检测到目标则追逐,否则继续巡逻。

  • 在视频中,提到了哪些因素会影响AI的感知能力?

    -视频中提到了视野角度(Angle of Vision)和侧面半径(Side Radius)会影响AI的感知能力。此外,还提到了可以通过调整AI感知组件的设置来影响AI的感知范围和能力。

  • 如何使用Blackboard来控制AI的行为?

    -视频中展示了如何通过设置Blackboard中的变量来控制AI的行为。例如,创建一个Blackboard变量来存储目标Actor,然后根据这个变量的值来决定AI是追逐目标还是返回巡逻状态。

  • 在视频中,如何确保AI只会检测到玩家或特定的敌人?

    -通过在AI感知组件的“检测通过关联”(Detection by Affiliation)部分启用所有三个选项,并在Blackboard中设置条件来确保AI只会检测到特定的目标,例如玩家或特定的敌人。

  • 如何调整AI的行为树以添加追逐目标的逻辑?

    -视频中展示了如何通过在行为树中添加新的序列和任务来实现追逐目标的逻辑。具体来说,创建了一个名为“Chase Target Sequence”的新序列,并在其中添加了“AI Move To”任务来控制AI的移动。

  • 在视频中,提到了哪些方法可以优化AI的追逐行为?

    -视频中提到了通过设置AI的移动速度(Max Walk Speed)和使用Blackboard变量来优化AI的追逐行为。此外,还提到了使用装饰器(Decorators)来增加额外的逻辑判断,以决定何时执行追逐行为。

  • 如何避免AI感知到不应该感知的目标?

    -视频中提到了通过修改默认游戏配置文件来避免AI感知到不应该感知的目标。具体做法是找到并编辑配置文件中的AI感知设置,将所有面板源(All Pawn Sources)设置为False。

  • 在视频中,提到了哪些方法可以让AI在接近目标时停止追逐?

    -视频中提到了使用“AI Move To”任务的“Stop Distance”参数来控制AI在接近目标时停止追逐。通过设置一个合适的停止距离,AI可以在达到该距离时停止移动。

  • 如何使用键盘快捷键来查看AI的感知范围?

    -视频中展示了使用键盘上的逗号键(位于数字0键旁边)和数字键3来激活AI的感知范围视图。这样可以看到AI的视野和感知到的目标。

  • 在视频中,提到了哪些后续步骤来进一步完善AI的行为?

    -视频中提到了在后续的教程中将添加更多的行为树分支,例如为士兵和Boss创建不同的行为,以及可能的分散注意力和攻击逻辑。这些将使AI的行为更加复杂和真实。

Outlines

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Mindmap

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Keywords

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Highlights

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now

Transcripts

plate

This section is available to paid users only. Please upgrade to access this part.

Upgrade Now
Rate This

5.0 / 5 (0 votes)

Related Tags
Unreal Engine 5AI 控制器行为树敌人巡逻目标追逐游戏开发编程教程感知系统蓝图角色控制游戏AI
Do you need a summary in English?