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

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.lryc.cn/news/541967.html

相关文章:

  • Blender小技巧和注意事项
  • Python常见面试题的详解15
  • 代码审计初探
  • Spring面试题2
  • Linux 权限系统和软件安装(二):深入理解 Linux 权限系统
  • 二:前端发送POST请求,后端获取数据
  • 单机上使用docker搭建minio集群
  • 安全生产月安全知识竞赛主持稿串词
  • C++的设计模式
  • C++手撕AVL树
  • 写大论文的word版本格式整理,实现自动生成目录、参考文献序号、公式序号、图表序号
  • Redission可重试、超时续约的实现原理(源码分析)
  • java八股文-消息队列
  • 3分钟idea接入deepseek
  • 【DeepSeek与鸿蒙HarmonyOS:开启应用开发新次元】
  • 基于光度立体视觉的三维重建方法
  • 在VSCode中接入deepseek
  • DeepSeek掘金——VSCode 接入DeepSeek V3大模型,附使用说明
  • 申请SSL证书,如何完成域名验证
  • HTTP实验(ENSP模拟器实现)
  • AI工具评论
  • comfy UI节点缺失dlib库处理
  • STM32 HAL库I2C函数使用详解:以MPU6050传感器为例
  • 四步彻底卸载IDEA!!!
  • vue3 背景虚化,文字高亮效果
  • 开源一个可以调RGB三色的小灯棒子
  • 在聚类算法的领域特定语言(DSL)中添加一个度量矩阵组件
  • 【C++】list 链表的使用+模拟实现
  • AI助力小微企业技术开发规范化管理 | 杂谈
  • Android 实现 RTMP 推流:快速集成指南