在教程示例中,我们有两个 Unreal Guy:玩家掌握的角色是小灰人,另一个是AI掌握的小红人。
我可能会将它们全部放入一个演示项目中,以便你自己体验它们的行为。
本文底部有一段视频展示了它是如何事情的。

1、创建 AI 掌握器

这东西有点难找。
创建一个常规的新蓝图类并搜索AI Controller。
它在Actor – Controller之下。
选择它并将其命名 — 我们将其命名为 EnemyAI:

接下来在图表中创建一个自定义事宜,当我希望小红人走向我们的小灰人时可以触发该事宜。
AI Move To 有一个节点。
这是它的样子:

须要一个 Pawn(小红人,或仇敌掌握的 pawn)和一个目标(我们的小灰人,或玩家角色)并将 pawn 移向目标。
下一步将更清楚为什么可以将红人作为受控Pawn访问。
接管半径是Pawn靠近目标的间隔。

虚幻AI控制器简明教程

我们想每隔一段韶光调用这个事宜,或者当仇敌创造角色时,或者只是更新他须要在翱翔中去的地方,以便他跟随我们。
为此,我们将按功能创建一个计时器,因此他的“征采”目标每秒钟都会更新一次。
当我移动时,他会创造它。
我会将它与 Event Begin Play 联系起来,以便它立即开始,但可以根据须要进行变动。

须要将计时器设置为循环以使其连续实行,并且须要调用一个函数——这是我们在上一步中设置的名称。
编译并保存,我们在 AI Controller 中完成。

2、将 AI 接入仇敌角色

小红人只是一个普通的虚幻人,具有不同的材料。
因此,他基于一个角色类,Pawn类的后代。
在类默认值中有一个 Pawn 部分,可以在个中指定AI 掌握器,选择我们之前创建的那个。

现在 AI 掌握器可以访问它的 pawn 并利用 AI 功能来驱动目标(即小灰人)。

3、为仇敌 AI 定义一个区域

我们须要在关卡中添加一个名为Nav Mesh Bounds Volume的分外工具。
它隐蔽在 Place Actors 选项卡右侧的 Volumes 下。
将一个拖入你的场景并将其放大到你希望仇敌行走的任何位置:

它看起来有点像 Box Collision,在你玩的时候不会涌现。
在放置期间,按 P使其可见性切换为绿色。
体积须要轻微穿透地板,这样虚幻引擎才能打算出我们的 AI 可以到达的地方。
它真的很聪明,可以设计出可以走的路径,包括走楼梯。
这是我的演示级别扩展到外部时的样子:

您可以将多个 Nav Mesh Bounds Volume 组合成一个路径网络,供 AI 进入。
在这里,我为小灰人定义了一些安全区域。
它们都只是重叠的Volumn:

两个角色都须要在这个网格上才能开始追逐。
这个观点在 Zak Parrish 在 EPIC 网站上名为 Twin Stick Shooter 的精良教程中做了一些粗略的阐明。

原文链接:http://www.bimant.com/blog/ue4-ai-controller-tutorial/