描述:一个角色在特定环境下自动到达指定目标

导航网格(NavMesh)

1、设置导航静态物体(NavigationStatic)

从头至尾不会Transform属性不会发生改变的
环境对象

2、烘焙网格前的设置

a.打开Navigation窗口
b.设置角色Size Agent Radius(角色半径)
Agent Height(角色高度)
Max Slope(角色可以爬的最大坡度)
Step Height(角色可以上的台阶高度)
c.Bake烘焙 Min Region Area(允许删除小于这个数的非链接导航区域的路径)

面板属性

AgeneSize(角色大小)

Radius(半径)
Height(高度)
Base Offset(偏移量) 导航角色与网格中心点偏移

Steering(导航过程)

Speed(导航过程中角色的最大速度)
AngularSpeed(角速度)
Acceleration(加速度)
Stoping Distance(停止距离) 当前角色距离目标多远时停
Auto Breakting(自动减速) 当角色快达到目标时自动减速

Obstacle Avoidance(躲避障碍物)

Quality(导航质量)
Priority(优先级)

Path Finding(寻路设置)

Auto Traverse Off Mesh Link 自动跨越分离路面
Auto Repath 自动重新规划路径
Area Mash 分层剔除(设置角色可以走哪些层)

常用属性与方法

SetDestination(Vector3) 设置导航目标
Stop() 停止导航(过时)
Resume() 恢复导航(过时)
isStoped 停止还是恢复(属性)
isOnOffMeshLink 是否正在分离路面导航
当前分离路面导航的数据
currentOffMeshLinkData

startPos (分离路面起点)、

endPos (分离路面终点)、

activated (当前是否处于激活状态)、

linkType {

LinkTypeManual(使用OffMeshLink组件完成分离路面导航)

LinkTypeDropDown(跳下方式完成分离路面导航)

LinkTypeJumpAcross(水平跳跃方式万恒分离路面导航)}

CompleteOffMeshLink
CalculatePath 判断当前角色能否通过导航的方式到达一个目标
desireVelocity 期望速度
velocity 当前物体的实际速度
speed 导航路程中的最大速度
destination 目标点
stoppingDistance 距离目标多少距离时停止导航
remainingDistance 距离导航目标剩余多少距离
updatePosition 通过导航更新位置
updateRotation 通过导航更新旋转
pathStatus

判断当前路径状态

1、PathComplete(可以到达)

2、PathPartial(有路但是到达不了)

3、PathInvalid(没有路,路径无效)

运行后导航角色指引

红色箭头        →         指向(阶段性目标)

        蓝色箭头        →         期望速度

        黑色箭头        →         瞬时速度

分离路面导航

普通分离路面

1、设置分离路面静态

2、分离路面跳跃设置

Jump Distance(跳跃距离)

Drop Height(下降高度)

高级分离路面

1、两个跳跃点(最好是在导航网格上)

2、添加一个Off Mesh Link组件

3、将两个跳跃点对象拖拽到Off Mesh Link组件中 Start、End

分层路面导航

1、给不同的路面设置不同的导航层(Navigation Area)

2、给角色设置AreaMask,设置角色可以走哪些层

代码中设置areaMask,【所选层的编号2次幂之和】

举例:12 就是 2、3 号层

层号0 2^(0) = 1
层号1 2^(1) = 2
层号2 2^(2) = 4
层号3 2^(3) = 8
层号4 2^(4) = 16

动态路障

形状( 长方体、胶囊体 )

Carve

true(可以另谋出路)

false(坚持等路障消除)

拓展: 抛物线跳跃

Unity (NavMeshAgent 导航系统)相关推荐

  1. Unity 3D 人形角色动画(Avatar)||Unity 3D 导航系统||Unity 3D 障碍物

    Unity 3D 人形角色动画(Avatar) Mecanim 动画系统适合人形角色动画的制作,人形骨架是在游戏中普遍采用的一种骨架结构.. 由于人形骨架在骨骼结构上的相似性,用户可以将动画效果从一个 ...

  2. Unity 3D 导航系统||Unity 3D 障碍物

    Unity 3D 导航系统 过去,游戏开发者必须自己打造寻路系统,特别是在基于节点的寻路系统中,必须手动地在 AI 使用的点之间进行导航,因此基于节点系统的寻路非常烦琐. Unity 3D 不仅具有导 ...

  3. [Unity][NavMeshAgent]怎么计算角色走过的路程长度

    1.确定路程长度,得获得 2个坐标点,起点 和 终点. float f = Vector3.Distance(a,b); 2.对累计走过得长度进行累加 float distance += f; 这个条 ...

  4. 【Unity 3D 从入门到实战】Unity 3D 导航系统

    目录 一,前言 二,导航系统介绍 三,Navigation总控制面板介绍 1,Agents面板(导航参数设置) 2,Areas面板(层设置) 3,Bake面板(烘焙导航网格) 4,Object面板(对 ...

  5. 《UnityAPI.NavMeshAgent导航网格代理》(Yanlz+Unity+SteamVR+云技术+5G+AI+VR云游戏+Unity+NavMeshAgent+立钻哥哥++OK++)

    <UnityAPI.NavMeshAgent导航网格代理> 版本 作者 参与者 完成日期 备注 UnityAPI_NavMeshAgent_V01_1.0 严立钻 2020.09.10 # ...

  6. 游戏思考17:寻路引擎recast和detour学习三:客户端角度学习(unity专题导航系统,阶段三完结)

    文章目录 一.如何构建导航网格 1)导航系统作用 2)导航系统包括 3)做一个简单的导航Demo 二.当行网格烘焙与烘焙设置 1)对应相关参数 2)参数讲解 三.导航网格代理与自动巡逻角色 1)导航网 ...

  7. Unity NavMeshAgent参数及API

    前言:Unity版本为2019.2.9f1 Ppersonal.Unity版本可在上方Help下点击About Unity找到.本文将采用官方文档的英文并对比介绍.由于个人英文和开发水平有限,翻译或解 ...

  8. Unity Pro 2018 for Mac(游戏开发工具)

    Unity Pro 2018 for Mac功能特色 一.与您制作流程匹配的可扩展的一体化编辑器 Unity Editor具有多种工具,可在您的开发周期中进行快速编辑和迭代,其中的Play模式可让您实 ...

  9. Unity_导航系统

    目录 基础简介 静态网格 动态网格 分离网格连接 基础简介 Unity的导航系统是需要先分析场景中的自由活动区域和障碍区域,简单说就是先在编辑器模式下进行烘焙生成场景信息,然后再运行A*算法计算出路径 ...

  10. Unity Pro 2019 for mac(3D游戏动画开发工具) v2019.2.21f1

    想要一款功能强大的3D游戏动画开发工具?Unity 2019能够轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,以及一个全面整合的专业游戏引擎,用于创建诸 ...

最新文章

  1. 不同的二叉搜索树-战胜100%的Java用户
  2. BZOJ2339: [HNOI2011]卡农(dp 容斥)
  3. AndroidStudio 常用配置
  4. xdebug 远程调试
  5. spock 集成测试_使用Spock 1.2简化对遗留应用程序的集成测试
  6. 分享WordPress博客搜索引擎优化的六点经验
  7. 计算机专业毕业后现状,计算机专业怎么样_毕业生道出现状_“千万”别学
  8. 铠侠 RC10 固态硬盘寿命暴力写入测试:1100pe 毫发无损
  9. 【体系结构】LGWR进程触发机制的理解
  10. 解析C#中[],List,Array,ArrayList的区别及应用
  11. Mybatis SQL语句控制台打印
  12. 视频教程-毕业设计精品课之基于ASP.NET旅游网站源码实战讲解(带房屋互租模块)-.NET
  13. Xmind 8 下载以及破解
  14. Java中new一个对象的步骤:
  15. html tooltips效果,Jquery Tools介绍—Tooltips
  16. 显示具体化、显示实例化、隐式实例化
  17. 业余草双因素认证(2FA)教程
  18. 把桌面路径设置到D盘
  19. android的适配器作用,适配器在Android中的作用是什么?
  20. Linux下配置ip地址

热门文章

  1. CNN-ResNet
  2. SQL Server 2008用'sa'登录失败(错误18456)
  3. 天线基础知识(四)接收灵敏度
  4. linux中括号的用法,【shell】Linux shell中括号的用法
  5. 如何让搜狗快速收录网站的技巧和方法
  6. Excel 绘制正态概率图-正态性检验
  7. 网站页面设计的原则有哪些呢?
  8. Bootstrap 弹出框modal 垂直居中(适用各种分辨率窗口)
  9. Kubeadm部署单Master节点
  10. 极客空间-MySQL实战45天-第四天