Drop Height:代理跳落高度。(只能往下跳,不可往上跳)。表示寻路者可以跳落的高度限。

Jump Distance:代理跳跃距离。(往远处跳跃的距离)。 表示寻路者的跳跃距离极限
01.勾选 Links

02.设置跳跃的高度和距离

03.NavMeshObstacle障碍物



这个组件放在场景中的导航网格上,可以阻挡NavMeshAgent的移动。以Unity4.3.4为例。

    NavMeshObstacle 分为两种模式,一种是普通模式,通过设置半径和高度来确定一个范围,阻档NavMeshAgent移动,一种是Carve模式,在导航网格上,根据模型的大小,挖出一个“洞”,使模型范围内的导航网格消失,这样NavMeshAgent就不能经过次区域了。可以设置的属性如下:

Radius:半径

Height:高度

Move Threshold:当模式为Carve时,此物体的移动距离超过这个阀值后,更新当前的导航网格(从新挖洞)。

Carve:是否打开在导航网格挖洞的模式。

在Bake场景的时候,Navigation窗口的Bake页面有一个高度值,场景中的导航网格通常作为一个平面,当NavMeshObstacle 距离小于这个高度时,才会在导航网格上挖洞,否则NavMeshObstacle 还是以普通模式存在的。
NavMeshObstacle 在刚创建的时候最好先关闭NavMeshObstacle 这个组件,但需要是再打开,否则会有bug(先创建NavMeshObstacle,再Additive场景后,场景中一直存在一个不可通过区域)。创建完毕后,移动到适当位置再激活这个组件。
碰撞还是使用trigger
04.OffMeshLink跳跃点

05.NavMeshComponents
导入NavMeshComponent,生成导航网
NavMeshSurface这个脚本将navmesh组件化,利用这个组件就可以很方便的烘焙挂载该组件的对象的navmesh信息,而无需打开一个navigation窗口对整个场景进行烘焙了。我们甚至可以将挂载这个脚本的GameObject烘焙后保存为一个prefab,这个带有navmesh信息的prefab跟其他的prefab一样。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;public class BuildGameObject : MonoBehaviour
{private NavMeshSurface navMeshSurface;public GameObject perfab;void Start(){navMeshSurface = this.GetComponent<NavMeshSurface>();}void Update(){if (Input.GetMouseButtonDown(1)){//使用主摄像机创建一根射线,射线的方向是鼠标点击的位置。Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);//使用物理类检查射线的碰撞,如果点击物体存在RaycastHit hit;if (Physics.Raycast(ray, out hit)){Instantiate(perfab, hit.point, Quaternion.identity).transform.SetParent(transform);navMeshSurface.BuildNavMesh();}}}
}

https://www.cnblogs.com/murongxiaopifu/p/7196788.html

05.自己控制

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;public class Player : MonoBehaviour
{private NavMeshAgent navMeshAgent;public Transform target;public float rotateSoomthing = 7f;public float speed = 8f;void Start(){navMeshAgent = this.GetComponent<NavMeshAgent>();navMeshAgent.updatePosition = false;  //NavMeshAgentd 的位置和旋转不受控制navMeshAgent.updateRotation = false;}void Update(){if (Input.GetMouseButtonDown(0)){//使用主摄像机创建一根射线,射线的方向是鼠标点击的位置。Ray ray =Camera.main.ScreenPointToRay(Input.mousePosition);//使用物理类检查射线的碰撞,如果点击物体存在RaycastHit hit;if (Physics.Raycast(ray, out hit)){navMeshAgent.nextPosition = transform.position;navMeshAgent.SetDestination(hit.point);}}Move();}public void Move(){if (navMeshAgent.remainingDistance<0.5f)  //距离目标位置的距离 如果没有设置为0{return;}navMeshAgent.nextPosition = transform.position;//设置朝向transform.rotation=Quaternion.Lerp(transform.rotation,Quaternion.LookRotation(navMeshAgent.desiredVelocity), rotateSoomthing*Time.deltaTime);transform.Translate(Vector3.forward*speed*Time.deltaTime);}
}

Navigation跳跃导航相关推荐

  1. Android系统:如何开启或隐藏Navigation Bar导航 栏

    如何开启或隐藏Navigation Bar导航栏? 如下图红色框标注的区域,就是Navigation Bar区域,它提供三个快捷方式图标,从 左到右分别是Back/Home/Recent . 第一步: ...

  2. 初识Navigation(导航)

    初识JetPack之--Navigation(导航) 关于Navigation Navigation详解 Navigation涉及的概念: 界面讲解 本文为学习类文档,通过学习B站up主longway ...

  3. ROS学习| navigation基本导航

    系列文章目录 ROS基础 ROS单线程与多线程 navigation基本导航 目录 系列文章目录 navigation stack简介 思维导图 navigation stack简介 ROS navi ...

  4. 带权并查集【bzoj3362】: [Usaco2004 Feb]Navigation Nightmare 导航噩梦

    [bzoj]3362: [Usaco2004 Feb]Navigation Nightmare 导航噩梦 ​ 农夫约翰有N(2≤N≤40000)个农场,标号1到N,M(2≤M≤40000)条的不同的垂 ...

  5. BZOJ_3362_[Usaco2004 Feb]Navigation Nightmare 导航噩梦_并查集

    BZOJ_3362_[Usaco2004 Feb]Navigation Nightmare 导航噩梦_并查集 Description     农夫约翰有N(2≤N≤40000)个农场,标号1到N,M( ...

  6. bzoj 3362: [Usaco2004 Feb]Navigation Nightmare 导航噩梦(加权并查集)

    3362: [Usaco2004 Feb]Navigation Nightmare 导航噩梦 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 121  ...

  7. Navigation区域导航

    Navigation区域导航 功能实现 这里以实现按钮打开A和打开B为例 首先创建ViewA和ViewB的页面 在App.xaml.cs中实现对页面的注册 protected override voi ...

  8. [unity3d]recast navigation navmesh 导航网格 寻路算法 源码分析

    recast navigation navmesh导航网格算法源码分析 Author:  林绍川 recast navigation navmesh是unity3d ue4内置的寻路算法 本文为了方便 ...

  9. React Navigation 路由导航库升级 5.x

    当前版本:3.0.0 升级版本:5.12.8 安装依赖 $ yarn add   @react-navigation/native   @react-navigation/stack   @react ...

最新文章

  1. Saiku二次开发获取源代码在本地编译(五)
  2. [UOJ #167]【UR #11】元旦老人与汉诺塔
  3. 【边缘检测】RCN:Object Contour and Edge Detection with RefineContourNet
  4. camera(25)----拍照显示总结---名词解释
  5. echarts数据可视化_Golang 数据可视化利器 go-echarts 开源啦
  6. theme为dialog的Activity如何充满全屏
  7. 一道笔试题的解法和联想
  8. CloudComparePCL 点云OOB包围盒
  9. 崔希凡-javaWeb-笔记day07-day09(2016年7月26日23:17:27)
  10. Laravel中pluck的使用——返回指定的字段值信息列表
  11. 新手学编程前端好还是后端?
  12. 主引导记录(MBR)的反汇编分析
  13. 百位红人助阵,如涵这场影响力盛典点亮夜钱塘
  14. 如何通过供应链管理来居家做菜?
  15. 生产者消费者模式详细解读
  16. CentOS7.2系统上搭建JDKTomcat详细步骤
  17. b树和b+树的区别。
  18. 《你曾说,你喜欢篮球》
  19. 算法学习之“Big Oh Notation”
  20. 虚拟酒店全景制作_虚拟现实技术优势_华锐互动

热门文章

  1. Spring、Springboot的作用、微服务和分布式的概念区别
  2. 硬件nat关闭还是开启_SSD4K对齐了,但是速度还是很慢怎么办?我的主板是华硕990FX,AHIC也开了,检测也通过了,-小派4K...
  3. 大物实验报告之霍尔元件测磁场
  4. 压缩 Excel 文件中的图片
  5. android旋转木马轮播图,vue实现旋转木马轮播
  6. 详解安卓应用性能测试方法以及Android SDK中辅助测试的工具使用
  7. iOS开发常用第三方开源框架 持续更新中...[转]
  8. 三大步骤轻松搞定RTK:求转换参数、测量及放样、数据传输
  9. 仿美团(1)--接口分析
  10. Java实现《简单自动关机助手》