【问题标题】:Is it possible to create dynamic AI path "on fly"?是否可以“即时”创建动态 AI 路径?
【发布时间】:2015-05-19 12:38:34
【问题描述】:

如何在两个对象之间动态创建AI路径?

例如,一个 AI 角色必须去另一个 AI 角色。

是否可以通过“转到对象前面”、“转到对象后面”等逻辑来制作 AI 路径?如何对这个 AI 逻辑进行编程——使用蓝图还是使用 C++?

类似http://docs.cryengine.com/display/SDKDOC2/AI+Sequence
(来源:cryengine.com

您能提供蓝图和 C++ 的示例吗?

【问题讨论】:

    标签: c++ unreal-engine4 unreal-blueprint


    【解决方案1】:

    是的,这在蓝图中很容易。

    UE4 为您的关卡创建导航网格,AI 可以使用该导航网格创建到关卡中的世界坐标或演员的动态路径。

    下图显示了可用于使 AI 角色在关卡中动态移动的不同蓝图节点:

    【讨论】:

    • 您好,谢谢!但是逻辑“移动到对象的右(左、后、前)侧”呢?例如,“移动到演员”会做什么?对象是面对面的还是在目标对象附近的随机位置?在 Unity3D 中有 docs.unity3d.com/ScriptReference/Transform-forward.htmldocs.unity3d.com/ScriptReference/Transform-right.html 。如何编程蓝图移动到对象并停留在目标对象的右侧?
    • 一旦你的 AI 在你的目标的接受范围内,移动到 actor 功能将停止。如果要移动到目标对象的右侧,则必须进行一些矢量数学运算:找出目标对象正在看的位置,以便通过将该矢量旋转 90 度来计算其右侧的位置。缩放该向量并将其添加到目标对象的世界位置,然后将您的 AI 移动到生成的坐标。
    • 哇!真是个好主意!但是为什么它不是自动化的,比如在 Unity3D 中使用 Transform.right 呢?
    • 以及如何使用蓝图计算度数、缩放等?我知道,如何用 C# 或 C++ 编写代码,但我不知道如何使用蓝图来编写。
    猜你喜欢
    • 2011-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 1970-01-01
    • 2020-11-19
    • 2015-05-04
    相关资源
    最近更新 更多