unity学习48:动态障碍物 Obstacle 对 NavMesh的影响

ops/2025/2/23 4:51:17/

目录

1 动态障碍物与导航

1.1 静态的导航

1.2 问题 如果像实现那种动态的开关的门或者机关呢?

2 测试地图准备

2.1 增加一个动态的障碍物

2.2 实测 :这个障碍物不能阻挡导航寻路

3 如何实现动态障碍物, 需增加Nav Mesh Obstacle

3.1 在动态障碍物上新增一个component: Nav Mesh Obstacle

3.2 Nav Mesh Obstacle 的属性

3.3 实测

4 让 obstacle动态的切割 Nav Mesh

4.1 Nav Mesh Obstacle的 carve 切割相关属性

4.2  实测


1 动态障碍物与导航

1.1 静态的导航

  • 之前的地图导航,navigation 都是静态的 static
  • 也就是事先进行bake好的
  • 在玩家的游戏过程中并不会发生改变

1.2 问题 如果像实现那种动态的开关的门或者机关呢?

  • 也就是有的门,是那种开的时候不阻挡,关着的时候阻挡
  • 没法用之前那种方法bake了

2 测试地图准备

2.1 增加一个动态的障碍物

  • 先在已经bake好的地图里增加一个动态的障碍物
  • 很显然,这个障碍物,没有经过bake
  • 也并不会影响之前的导航

2.2 实测 :这个障碍物不能阻挡导航寻路

  • 实测 :这个障碍物不能阻挡导航寻路
  • 可以点击角色随意穿过

3 如何实现动态障碍物, 需增加Nav Mesh Obstacle

3.1 在动态障碍物上新增一个component: Nav Mesh Obstacle

3.2 Nav Mesh Obstacle 的属性

  • shape: box  capsule
  • cneter
  • size

3.3 实测

  • 虽然,仍然不影响之前bake的 navigation mesh
  • 但是角色导航寻路过不去了,不能闯过了

4 让 obstacle动态的切割 Nav Mesh

4.1 Nav Mesh Obstacle的 carve 切割相关属性

  • Nav Mesh Obstacle如果勾选carve 切割
  • 下面有几个属性
  1. 移动阈值:移动多远的距离开始影响navigation,生成新的可通过的navigation mesh,。这个填的越小,改变的越快越灵敏

下面2个配合使用

  1. 仅在静止时切割: 也就是动态的Obstacle 只有停住了才改变 navigation 动起来的时候不改变navigation
  2. 静止时间: 静止多久后开始影响navigation

4.2  实测

  • 测试时,在Scene界面移动这个 wall ,同时在游戏窗口点击地面,移动角色可以测试
  • 实测,好像是觉得开始寻路了,地面的 navigation mesh 才开始切割


http://www.ppmy.cn/ops/160682.html

相关文章

Ubuntu 的RabbitMQ安装

目录 1.安装Erlang 查看erlang版本 退出命令 2. 安装 RabbitMQ 3.确认安装结果 4.安装RabbitMQ管理界面 5.启动服务并访问 1.启动服务 2.查看服务状态 3.通过IP:port 访问界面 4.添加管理员用户 a)添加用户名:admin,密码&#xff1…

《算法图解》笔记-数据结构算法Python版

一.折半查找 def binary_search(list,item):low 0high len(list) - 1while low < high:mid (low high) // 2guess list[mid]if guess item:return midif guess > item:high mid - 1else:low mid 1returnmy_list [i for i in range(10)] print(binary_search(m…

uniapp中@input输入事件在修改值只有第一次有效的问题解决

在uniapp中使用输入框&#xff0c;要求输入不超过7个字&#xff0c;所以需要监听输入事件&#xff0c;当每次输入文字的时候&#xff0c;就把输入的值截断&#xff0c;取前7个值。但是在input事件中&#xff0c;重新赋值的值发生了变化&#xff0c;但是页面上的还是没有变&…

2025年网络安全(黑客技术)三个月自学手册

&#x1f91f; 基于入门网络安全/黑客打造的&#xff1a;&#x1f449;黑客&网络安全入门&进阶学习资源包 前言 什么是网络安全 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“…

开源免费文档翻译工具 可支持pdf、word、excel、ppt

项目介绍 今天给大家推荐一个开源的、超实用的免费文档翻译工具&#xff08;DeeplxFile&#xff09;&#xff0c;相信很多人都有需要翻译文档的时刻&#xff0c;这款工具就能轻松解决你的需求。 它支持多种文档格式翻译&#xff0c;包括 Word、PDF、PPT、Excel &#xff0c;使…

【Flink 实战】Flink 中 Akka 通信与内存占用分析

文章目录 一、Akka 通信需要的内存二、Akka 通信的超时和建议配置1. 超时配置项调整建议2. 常见调整例子 JobManager 和 TaskManager 之间的通信是通过 Akka 实现的。Akka 是 Flink 中一个分布式通信框架&#xff0c;负责处理集群内各个组件之间的消息传递、任务调度、状态更新…

普通人使用生成式语言模型的几个阶段

随着生成式语言模型&#xff08;如 ChatGPT、Grok 等&#xff09;逐渐走进大众生活&#xff0c;普通人从最初的懵懂尝试&#xff0c;到熟练运用&#xff0c;再到理性判断其输出结果是否可靠&#xff0c;经历了一个逐步进阶的过程。以下&#xff0c;我将详细描述普通人使用生成式…

SOME/IP-SD -- 协议英文原文讲解1

前言 SOME/IP协议越来越多的用于汽车电子行业中&#xff0c;关于协议详细完全的中文资料却没有&#xff0c;所以我将结合工作经验并对照英文原版协议做一系列的文章。基本分三大块&#xff1a; 1. SOME/IP协议讲解 2. SOME/IP-SD协议讲解 3. python/C举例调试讲解 1 Introdu…