当前位置: 首页 > article >正文

unity学习50:NavMeshAgent 区域Areas和cost

目录

1 NavMeshAgent 区域和成本的问题

2 区域Areas

2.1 区域和颜色

2.2 区域和成本

2.3 区域成本的作用

2.4 地图测试准备

2.5 如何实现

2.5.1 unity的2022之前的老版本

2.5.2 unity的2022之后的新版本

2.6 如果测试失败,是因为没有bake

2.7 测试前,必须先烘焙

3 区域遮罩:针对 NavMesh Agent

3.1 Ares Mask

3.2 实测OK


1 NavMeshAgent 区域和成本的问题

  • NavMeshAgent 除了代理相关
  • 还有一个Areas

2 区域Areas

2.1 区域和颜色

  • 之前,进行导航寻路的时候,地面上的颜色就是对应的这儿的颜色
  • 不同的区域设定为不同的颜色,可以在这查颜色对比

2.2 区域和成本

  • 每个区域可以设置为不同的成本
  • 系统默认的几个区域也设置了同的成本
  • 比如walk的 为1
  • jump的为2
  • 新建的可以自己修改

2.3 区域成本的作用

  • 智能寻路/导航时再计算起点,终点的智能寻路的时候,会考虑成本
  • 会选择最低成本的道路通过
  • 比如会尽量绕开河流,沼泽地等等

2.4 地图测试准备

  • 新建一个 Area类:river 
  • 修改其cost
  • 把地图上新建一个长方体代表河流,把这个区域选择为 river

2.5 如何实现

2.5.1 unity的2022之前的老版本

2.5.2 unity的2022之后的新版本

  • 需要在gameObject上新增1个 NavMeshModifier
  • 设置数学
  • affected agents: 选择是纯角色,还是全部
  • area type : 属于哪种区域

2.6 如果测试失败,是因为没有bake

  • 我设置为river 也不绕路
  • 我设置为 non walkable 居然也直接走
  • 感觉有啥问题:  不是即时生效的,必须先bake

2.7 测试前,必须先烘焙bake

  • 修改Area 属性,区域后
  • 必须去有 NavMeshSurface的 物体上,点击bake
  • 直到你修改的区域,出现粉红色的区域颜色,代表bake成功

3 区域遮罩:针对 NavMesh Agent

3.1 Ares Mask

  • 角色一定不走某个区域,但是怪物可以走
  • 针对Agent
  • 可以在Area Mask里勾选掉一些区域,这样角色就不走这个区域了
  • 有点像区域了设置了 not walkable的效果

3.2 实测OK


http://www.kler.cn/a/554787.html

相关文章:

  • ES三种查询方式,为什么searchAfter效率高
  • 全志A133 android10 适配SLM770A 4G模块
  • 网络安全入门攻击与防御实战(四)
  • 卷积神经网络实战宠物狗识别
  • 从硬件工程师视角解析宇树机器人:四足机器人的核心设计与技术挑战
  • leetcode876.链表的中间结点
  • HBuilderX中,VUE生成随机数字,vue调用随机数函数
  • Cannot import to svn: ‘C:\Program‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
  • QT基于Gstreamer采集的简单示例
  • Python的那些事第二十三篇:Express(Node.js)与 Python:一场跨语言的浪漫邂逅
  • 【Python爬虫(22)】解锁MySQL性能密码:优化与索引全攻略
  • 【单臂路由配置】
  • leecode 刷题感悟-- 哈希表
  • Redis 的线程安全问题解析:为什么 Redis 是线程安全的?
  • 傅里叶变换和小波变换概述及实践
  • 如何在 Mac 上安装并配置 JDK 环境变量
  • Qt 中的QMainWindow、QWidget 和 QDialog 基类
  • Python爬虫实战:获取腾牛网高清壁纸图片
  • 深度神经网络 机器学习 超参数自动优化 ,PyGAD和DEAP是两个常用的遗传算法库,它们各自有不同的特点和适用场景
  • 我的书包作文范文