【UE5.1】NPC人工智能——03 NPC跨障碍移动

前言

在上一篇中(【UE5.1】NPC人工智能------02 NPC移动到指定位置)我们已经实现了NPC向指定位置或Actor移动的功能,但是如果NPC移动路线上有障碍则无法绕过障碍移动,为了解决这个问题,本篇文章介绍使用导航数据让NPC跨障碍移动。

效果

步骤

  1. 将"NavMeshBoundsVolume"拖入场景,然后按P键就可以看到绿色区域就是NPC可以被导航的区域
  1. 在狮子蓝图中勾选节点"移动到Actor"的参数"Use Pathfinding",此时我们就可以使用导航数据来规划NPC移动路线

此时可以看到NPC狮子可以绕过障碍移动到玩家位置

  1. 当我们在场景中添加"NavMeshBoundsVolume",会发现大纲中会多出一个"RecastNavMesh-Default",我们可以用它来修改导航网格

这里简要介绍两个常用的设置选项。我们可以通过修改"最大简化误差"来修改导航网格形状可被简化的量(值越大自由度越高)

如下分别是"最大简化误差"为1和5的区别

我们可以通过设置"单元高度"的值让导航网格不覆盖高度为单元高度以上的障碍物,通过设置大一点的单元高度值就能让一些可以跳或者飞的NPC被导航从而越过障碍。

相关推荐
Zhichao_9720 小时前
【UE5.3 C++】ARPG游戏 04-角色脚部贴合地形
游戏·ue5
zhangzhangkeji20 小时前
UE5 C++(2):保存 vs2022 文本时采用 UTF 编码,以解决到 UE 里的乱码问题,高级保存选项
ue5
AI视觉网奇21 小时前
audio2face mh_arkit_mapping_pose_A2F 不兼容
笔记·ue5
zhangzhangkeji1 天前
UE5 C++(11-2):TMap 的成员函数。TMultiMap;TMap 里迭代器的类位置定义。
ue5
AI视觉网奇1 天前
ue 动画重定向 实战笔记2026
笔记·ue5
1204157137 肖哥2 天前
UE5 MRQ渲染:解决采样不够造成的角色残影问题
ue5·音视频
zhangzhangkeji2 天前
UE5 C++(6-2):描述角色 EndPlay 原因的枚举类 EEndPlayReason::Type,此命名空间里定义了一个枚举类。
ue5
陈友松2 天前
记录下UE5.3源码在系统升级windows11后使用VS2022出现的编译错误,以及下载慢提速的方法
ue5
zhangzhangkeji2 天前
UE5 C++(5):虚幻C++游戏架构,创建C++默认类,以及如何自定义游戏模式
ue5
每天回答3个问题2 天前
Lua 函数教程
开发语言·ue5·ue4·lua