Navigation and Pathfinding

术语:

  1)NavMesh

  2)NavMesh Agent

  3)Off-Mesh Link

  4)NavMesh Obstacle

  

   A common algorithm to find the path is A* (pronounced “A star”), which is what Unity uses.

  Unity is using reciprocal velocity obstacles (RVO) to predict and prevent collisions.

  对于开放式场景,轨迹线不适用,NaviMesh此时就派上用场了。Unity的导航系统在已有的Mesh基础上生成一个新的FloorMesh,也叫NaviMesh。通过(menu: Window > Navigation)可以打开Navigation编辑器。

  

  

  Navigation Static:是否根据此网格生成Navimesh。

  OffMeshLink Generator:是否生成从此网格出发的Link。

  Navigation Layer:层。

  Bake页中包含更多内容。

  

  Radius: The Radius determines how close a navigating character can get to a wall and consequently the width of the narrowest gap between two walls that can it can squeeze through.

  Height:efers to the height of the “ceiling” above the navmesh surface - an area may not be reachable simply because there is not enough headroom for the character

  Max Slope:parameter sets the threshold of steepness where a ramp becomes a wall

  Step Height: the maximum height of bump or step in the floor surface that is ignored by the character (any step greater than this height results in a disconnected walkable area rather than a continuation of the same area).

Off-mesh link

1、Manually create Off-Mesh Link.

  

  添加Off-mesh Link的步骤:

    1. First create two cylinders: Game Object > 3D Object > cylinder.
    2. You can scale the cylinders to (0.1, 0.5, 0.1) to make it easier to work with them.
    3. Move the first cylinder at the edge of the top platform, close to the NavMesh
       surface.
    4. Place the second cylinder on the ground, close to the NavMesh, at the location where the link should land.
    5. Select the cylinder on the left and add an Off-Mesh Link component to it. Choose Add Component from the inspector and choose Navigation > Off Mesh Link.
    6. Assign the leftmost cylinder in the Start field and rightmost cylinder in the End field.

参考:https://docs.unity3d.com/Manual/nav-CreateOffMeshLink.html

2、Building Off-Mesh Link Automatically.

  

  

  1、Drop-Down link generation is controlled by the Drop Height parameter. The parameter controls what is the highest drop that will be connected, setting the value to 0 will disable the generation.  

  2、Jump-Across link generation is controlled by the Jump Distance parameter. The parameter controls what is the furthest distance that will be connected. Setting the value to 0 will disable the generation.

参考:https://docs.unity3d.com/Manual/nav-BuildingOffMeshLinksAutomatically.html

Enabling a Character to Navigate

  

  

更多资料参考:~/Unity/Editor/Data/Documentation/html/en/Manual/Navigation.html

  

Navigation and Pathfinding的更多相关文章

  1. CritterAI与Recast Navigation寻路

    版权声明:本文为博主吴欣伟原创文章,未经博主允许不得转载. 前言 这篇文章写于去年,由于工作需要,故写出这个研究文档,发现网上有关此寻路库的中文资源十分稀少,故发布出来与诸位共享交流,如文中有不对之处 ...

  2. Unity 2018 Artificial Intelligence Cookbook Second Edition (Jorge Palacios 著)

    https://github.com/PacktPublishing/Unity-2018-Artificial-Intelligence-Cookbook-Second-Edition 1 Beha ...

  3. Unity. Navigation和寻路

    Navigation Static:不会移动.可以用于计算可行走区域.例如:地板.墙.静态障碍物. 将一个物体选为Navigation Static:Navigation窗口-> 勾选项

  4. MMORPG战斗系统随笔(二)、浅谈场寻路Flow Field PathFinding算法

    转载请标明出处http://www.cnblogs.com/zblade/ 今天给大家带来一篇游戏中寻路算法的博客.去年,我加入一款RTS的游戏项目,负责开发其中的战斗系统,战斗系统的相关知识,属于游 ...

  5. arcgis api for js共享干货系列之二自定义Navigation控件样式风格

    arcgis api for js默认的Navigation控件样式风格如下图: 这样的风格不能说不好,各有各的爱好,审美观,这里也不是重点,这里的重点是如何自定义一套自己喜欢的样式风格呢:自己自定义 ...

  6. The Safe Navigation Operator (&.) in Ruby

    The most interesting addition to Ruby 2.3.0 is the Safe Navigation Operator(&.). A similar opera ...

  7. Unity3D 导航网格自动寻路(Navigation Mesh)

    NavMesh(导航网格)是3D游戏世界中用于实现动态物体自动寻路的一种技术,将游戏中复杂的结构组织关系简化为带有一定信息的网格,在这些网格的基础上通过一系列的计算来实现自动寻路..导航时,只需要给导 ...

  8. ABP理论学习之导航(Navigation)

    返回总目录 本篇目录 创建菜单 注册导航提供者 展示菜单 每一个web应用在页面之间都有一些要导航的菜单.ABP提供了公用的基础设施来创建菜单并将菜单展示给用户. 创建菜单 一个应用可能由不同的模块组 ...

  9. Sharepoint学习笔记—ECM系列—文档列表的Metedata Navigation与Key Filter功能的实现

    如果一个文档列表中存放了成百上千的文档,想要快速的找到你想要的还真不是件容易的事,Sharepoint提供了Metedata Navigation与Key Filter功能可以帮助我们快速的过滤和定位 ...

随机推荐

  1. Python3 循环语句(十)

    Python中的循环语句有 for 和 while. Python循环语句的控制结构图如下所示: while 循环 Python中while语句的一般形式: while 判断条件: 语句 同样需要注意 ...

  2. 关于java的讲座有感

    今天晚上闲着看了下李兴华老师的java + 大数据 讲座.做一个屌爆的全能型技术人才,感觉有点收获,有兴趣的可以看看 链接地址:https://study.163.com/course/introdu ...

  3. New Concept English Two 3

    $课文5 无错号之虞 47. Mr.James Scott has a garage in Silbury and now he has just bought another garage in P ...

  4. pidgin-lwqq

    今天第一次用pidgin登上了qq,好神奇. 从网上看到的,说是pidgin发布了支持webqq协议的lwqq,按照解释之后安装了. 感觉好神奇啊. 一个绿色的小企鹅^^ 今天有看到了一个大牛,我觉得 ...

  5. C程序设计-----第2次作业

    作业要求一 (15分) 完成下列编程题目,每次上完课都会增加2-3道题目,并将编程过程记录在博客里,一次PTA作业任选一道题目给出设计思路.流程图.源代码和错误记录,其他题目可只给出设计思路.源代码和 ...

  6. 《DSP using MATLAB》Problem 3.2

    1.用x1序列的DTFT来表示x2序列的DTFT 2.代码: %% ------------------------------------------------------------------ ...

  7. python删除x天前文件及文件夹

    #!/usr/bin/env python # -*- coding:utf-8 -*- import os, time, sys, shutil def delFiles(beforeSec, di ...

  8. bzoj2875随机数生成器

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2875 矩阵乘裸题. 如果直接乘的话会爆long long,所以用加法代替乘,过程中不断取模. ...

  9. Web service 框架比较CXF xfire aisx2 aisx

    Web 服务框架.它还体现了从 Axis 1.x 系列获得的经验和最近两年在 Web 服务领域的发展.推出 Axis2 的主要原因之一是从速度和内存方面获得更好的性能——不过还添加了一些新特性和功能. ...

  10. 【python】python实例集<一>

    #打开一个记事本 import os os.startfile('notepad.exe') #当前文件的根目录 import os print os.path.join(os.path.dirnam ...