UE4 AI思路

前言

记录AI学过程中的知识点和思考

相关的技巧

  1. 为了在游戏过程中更好的进行AI调试,可以关闭项目的抗锯齿,(ProjectSetting->Rendering->DefaultSettings->AntiAliasingMethod 改为None)

UE4 AI整体的思路

传递感知信息
下达思考结果
行动结束
感知
思考
行动
  • 感知: 一般包括UE4的 AI Perception component (用于添加AI的感觉器官),Navgation也是属于感知(对道路的感知),AIPerceptionStimuliSource(用于注册刺激,用来给AI传递刺激)。AI感知的结果一般会设置到BlackBord中的Key(这个相当于是AI的海马体负责记忆一些东西)
  • 思考 和 行动: 思考和行动 都包含在 行为树 里面,行为树 的Task节点就是一个个行动,在进行到最终Task节点前的一系列的过程就是AI的思考的过程。当行动成功之后就会一次行为循环结束,然后会再次从头开始。
  • 在行为树中的可以主动的去感知这个世界,这个就是EQS系统,在这个系统中我们可以去主动的感知这个世界,找到最佳的躲藏点,最佳的伏击位置等等。

一般的AI一个行为的开发过程

  1. 当我们让AI做一个行为的时候,首先要想下这个行为是不是需要一些变量的支持,如果需要的话,那我们要在blackboard中设置对应的键。
  2. 设置对应的键之后,我们要想这个变量要在哪里进行改变,什么条件下会改变,比如说看到某个玩家,听到脚步声等,那我们就要在AI的感知组件被刺激的时候来决定如何惊醒这些变量的更新;或者说主动的使用EQS来查询这个世界得到想要的信息。
  3. 有了需要的信息之后,接下来就要根据这个信息来思考该做什么,就要在行为中通过装饰器节点,序列节点,选择节点,服务节点等来进行思考。
  4. 有了思考结果之后,那就具体的怎么,这个时候就可以建立一个Task,在Task中来编写觉得动作逻辑。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Unreal Engine 4(UE4)中,我们可以使用不同的方法和技术来使人工智能(AI)角色绕过障碍物。 第一种方法是使用导航网格(NavMesh)。导航网格是一种在场景中创建可行走区域的技术。我们可以在场景中放置一个NavMeshBounds卷轴来定义可行走区域。然后,我们可以使用NavMesh生成器来创建导航网格,该网格将在可行走区域上生成路径。AI角色可以使用这个路径来绕过障碍物。 第二种方法是使用动态避障(Dynamic Obstacle Avoidance)。动态避障是一种实时检测和避免障碍物的方法。在UE4中,我们可以使用AIController类中的MoveToLocation函数来移动AI角色。当AI角色接近一个障碍物时,它会使用环形探测来检测周围的障碍物,并尝试通过调整移动路径来避免与障碍物相撞。 第三种方法是使用射线检测(Line Trace)。射线检测是一种在场景中沿特定方向发射射线的技术。我们可以使用AI角色的视线方向发射射线,并检测是否与障碍物相交。如果射线与障碍物相交,AI角色可以选择绕过障碍物。 最后,我们还可以使用行为树(Behavior Tree)来实现AI角色的障碍绕过。行为树是一种用于描述AI行为的图形化工具。我们可以在行为树中添加条件和动作节点来定义AI角色的行为。在绕过障碍时,我们可以在条件节点中添加障碍检测,并在动作节点中指定移动到一个可行走位置。 综上所述,以上是在UE4中实现AI角色绕过障碍物的几种方法。根据实际需求和场景,我们可以选择适合的方法来处理AI角色的移动和避障。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值