Unity导航 (寻路系统Nav Mesh Agent)
第一种 简单寻路 地面接触到的。到达目标点不用跳跃能够一直走路到达。
场景视图中简单搭设几个物体。
胶囊体为寻路者,黄球为目标点 红地板,绿色障碍物。
现将地板以及障碍物选中 在检视面板设置静态为Navigation Static 如图2
然后菜单栏选择窗口 Window –Navigation
然后选择All—Bake烘焙如图
有三个页面参数可以调节烘焙效果,参数具体参照圣典解释。
注意 胶囊体和目标物都要烘焙在蓝色格子里面。否则不能实现,可以调节第二个页面里的参数调节烘焙大小。
然后给胶囊体添加导航组件
菜单栏Component—Navigation-Nav Mesh Agent
组件参数详情参见圣典.
然后给胶囊体添加代码,代码内容如图
aa即为目标物。在检视面板将球给aa。运行即可实现简单寻路。如图
第二种寻路 不连续,可以跳跃的寻路
先搭设简单场景 如图 如果跳跃必须加三个跳板如图长条白板
将地面和高台(绿色)一起设置为Navigation Static
给中间跳板加一个组件 Component—Navigation—Off Mesh Link 其中有几个属性 start和end 这就是起跳位置和落地位置,将两个跳板用鼠标拖拽上即可。胶囊体添加寻路组件和第一种一样。添加脚本。脚本一样。所有组件选择完毕后最后选择烘焙。
烘焙时 All 下面两个属性都要选中。
烘焙时有时会出现上图有个圆圈位置未烘焙上,原因是胶囊体进入地面太多。可以再将胶囊体移动位置至蓝色网格上即可 运行即可实现。以上步骤落下一步该系统便不能实现。 细心即可。
Agent Radius 代理半径 半径越小生成网格的面积越大,也越靠近静态物体的边缘。
Agent Height 代理高度
Max Slope 物体抬升台阶的高度
Drop Height 允许的最大下落距离
Jump Height 允许的最大跳跃距离
Radius 代理逃避半径 Height 代理经过障碍物下方目的高度
Base Offset 偏移距离
Steering 操作 指导
Speed 代理最大移动速度 Angular Speed 角速度
Acceleration 最大加速度 Stopping Distance 停止时和目标的距离(距离目标多少时停下)
Auto Braking 该代理是否自动制动去避免超过目的点
obstacle avoidance 故障排除
Quality 质量 Priority 优先级
Path Finding 路径寻找中……
Auto Traverse Off Mesh Link 该代理是否自动穿过Off Mesh Links?
Off-mesh连接用于连接不相交区域的导航网格。通常,当该属性设置为true时,角色应该有能力自动通过或者穿过连接。但是,在需要特殊控智移动的时候它也可以被设置为false。
Auto Repath 自动更新路径(例如目标位置改变,需要重新更新路径)
Area Mask 区域遮挡 (代理的行动区域,能在什么地方走。默认Everthing 任何地方)
更多unity2018的功能介绍请到paws3d爪爪学院查找。
Unity导航 (寻路系统Nav Mesh Agent)的更多相关文章
- 【Unity3D】自动寻路(Nav Mesh Agent组件)
1.首先添加场景模型 2.为场景模型(寻路路径)添加NavMesh渲染,操作:Windows->Navigation->勾选Navigation Static选项->不勾选Gener ...
- Unity3D 导航网格自动寻路(Navigation Mesh)
NavMesh(导航网格)是3D游戏世界中用于实现动态物体自动寻路的一种技术,将游戏中复杂的结构组织关系简化为带有一定信息的网格,在这些网格的基础上通过一系列的计算来实现自动寻路..导航时,只需要给导 ...
- [原]Unity3D深入浅出 - 导航网格自动寻路(Navigation Mesh)
NavMesh(导航网格)是3D游戏世界中用于实现动态物体自动寻路的一种技术,将游戏中复杂的结构组织关系简化为带有一定信息的网格,在这些网格的基础上通过一系列的计算来实现自动寻路..导航时,只需要给导 ...
- Unity3D学习笔记(十五):寻路系统
动画生硬切换:animation.play();//极少使用,常用融合方法 动画融合淡入:animation.CrossFade(“Idle”, 0.2f);//0.2f为与前一动画的融合百分比为20 ...
- 16 Zabbix4.4.1系统告警“Zabbix agent is not available (for 3m)“
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 Zabbix4.4.1系统告警“Zabbix agent is not available (fo ...
- Spine学习七 - spine动画资源+ Unity Mecanim动画系统
前面已经讲过 Spine自己动画状态机的动画融合,但是万一有哥们就是想要使用Unity的动画系统,那有没有办法呢?答案是肯定的,接下来,就说说如何实现: 1. 在project面板找打你导入的Spin ...
- 【Unity】12.3 Off Mesh Link组件
开发环境:Win10.Unity5.3.4.C#.VS2015 创建日期:2016-05-09 一.简介 Off Mesh Link组件用于手动指定路线来生成分离的网格连接.例如,游戏中让行进对象上下 ...
- 在Unity中使用UGUI修改Mesh绘制几何图形
在商店看到这样一个例子,表示很有兴趣,他们说是用UGUI做的.我想,像这种可以随便变形的图形,我第一个就想到了网格变形. 做法1: 细心的朋友应该会发现,每个UGUI可见元素,都有一个‘Canvas ...
- 截获导航控制器系统返回按钮的点击pop及右滑pop事件
前几天看了@栾小布的一篇文章:Custom backBarButtonItem,在跟着做的时候我又顺便扩展了一些,写此文章的目的是为了总结一下自己所写的东西,方便以后翻看容易,同时也是自己入行iOS一 ...
随机推荐
- Scrapy爬虫框架第一讲(Linux环境)
1.What is Scrapy? 答:Scrapy是一个使用python语言(基于Twistec框架)编写的开源网络爬虫框架,其结构清晰.模块之间的耦合程度低,具有较强的扩张性,能满足各种需求.(前 ...
- 单片机开发——02工欲善其事必先利其器(Proteus软件安装破解)
在单片机开发工程中,博主经常通过模拟软件Proteus进行模拟仿真,将编译生成的"HEX"文件下载在单片机芯片中,然后进行后期的debug工作,当模拟仿真完成之后,进行硬件测试部分 ...
- 命令行备忘录 cli-memo
前言 有时候想用一个简洁点儿的备忘录,发现没有简洁好用的,于是就想着开发一个,秉着简洁 的思想,所以连界面都没有,只能通过命令行来操作(尽可能的将命令简化).设计的时候 借鉴了git分支的思想,每个备 ...
- ztre的使用入门
1.首先需要下载ztree插件, 2.把下载的插件中的js和css放到项目中去(img文件默认放到css文件下方,如果把img文件放到其他地方,加载出来的树将没有默认图标(文件夹图标)和节点前的展开闭 ...
- 字符流Reader和Writer
1.Rader是字符输入流的父类. 2.Writer是字符输出流的父类. 3.字符流是以字符(char)为单位读取数据的,一次处理一个unicod. 4.字符类的底层仍然是基本的字节流. 5.Read ...
- Pat1128:N Queens Puzzle
1128. N Queens Puzzle (20) 时间限制 300 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue The & ...
- 开机出现 grub rescue> 终端模式修复方法
1. 先使用ls命令,找到Ubuntu的安装在哪个分区: grub rescue>ls 会罗列所有的磁盘分区信息,比方说: (hd0),(hd0,msdos3),(hd ...
- java并发之ReentrantLock学习理解
简介 java多线程中可以使用synchronized关键字来实现线程间同步互斥,但在jdk1.5中新增加了ReentrantLock类也能实现同样的效果,并且在扩展功能上也更加强大,比如具有嗅探锁定 ...
- binlog——逻辑复制的基础
Ⅰ.binlog定义和作用 1.1 定义 记录每次数据库的逻辑操作(包括表结构变更和表数据修改) 包含:binlog文件和index文件 1.2 作用 复制:从库读取主库binlog,本地回放实现复制 ...
- matplotlib使用时报错RuntimeError: Python is not installed as a framework(一)
笔者在第一次安装matplotlib后运行时出现报错. import matplotlib as mlb from matplotlib import pylab as pl x = [1,3,5,7 ...