NavMesh 入门知识(1)

NavMesh是自动寻路系统,我们字游戏中经常会用到,比如控制角色移动的时候,他会绕开障碍物到达你所指定的地点。而这个功能需要我们第一烘培场景,这个需要Navagation,第二给角色添加NavMeshAgent组件,这篇文章我们就介绍下NavMeshAgent组件。

Paste_Image.png
  • AgnetSize 这个组件的大小
  • Radius 半径 Height 高度,这个组件是有大小的,我们可以根据角色自身来调节半径和高度。
  • Base Offset 中心偏移量,这个是根据高度来说的,就是这个组件与角色自身高度中心的便宜。这个大家可以去 试一下。
  • Steering 操纵力
  • Speed 速度,也可以理解为角色移动最大速度
  • Angular Speed 角速度,就是角色转向时的一个角速度,一般我们都把他调到2000以上。
  • Stopping Distance 停止距离,我上图填的是2,当我们选中一个目标点以后,该角色移动到距离目标2米时时停下。
  • Auto Barking这个是是否自定减速。假如我们没有勾选这个选项时,那么角色就会越过目标点,向前移动一定距离后,再往目标点移动,然后再越过,就是来回在目标点徘徊。
  • Obstacle Avoidance
    这整个选项是控制优先等级的,低优先级会给高优先级的让路。
  • Path Finding 寻找路径
  • AutoTraverseOffMeshLi 运行到分离网格的时候,是否自动移动。
  • AutoRepath 是否自动重新规划路线,打个比方,我们把目标点放在一个屋子里而门没有开,当角色移动到门口的时候就会停下,如果我们选中的是自动规划路线,那我们在把门打开的时候,角色就会自动进入到屋子里,反之不选的话,即使我们把门打开,角色还是停留在门口不会进去。
  • Area Mask物体可以移动的网格区域,mask就是遮罩的意思,这个参数我们在以后会讲。
    接来下我们大致讲解下Navagation
Paste_Image.png

首先通过window菜单栏才选中Navagation打开

Paste_Image.png

(小技巧:有的时候我们在Scene视图中看不到这个烘焙过的网格界面,但是我们点了Navation面板以后就能看到了)

  • Agent Radius 这个数值表示距离障碍物多远的距离不会被烘培到可行走的网格里


    Paste_Image.png

    比如上图中红箭头指示的两个区域,从地面来讲,桥的两边我们到达的,从桥面来讲,桥的两边我们也是不能到达的。(个人理解)

  • Agent Height 还是以桥为例子,假如桥洞的有些区域的高度大于该高度,那么这些区域就是可行走的。看下图
Paste_Image.png
  • Max Slope 最大坡度,跟上边两个的理解一样。可行走的最大高度
  • Step Height 如果一个物体的高度大于该值,那么角色将不能行走上去。这个值要比 Agent Height 这个值要小,如果大于 Agent Height ,那系统就会进行截断,把该值设为 Agent Height 的值。(这个我们还是以上图的桥为例,假如StepHeight值为3,AgentHeight为2,那么导航网格会把两个都烘培成可以走的区域,能从地面直接走到桥上,也能从直接桥下通过,这样可能就会出问题,这是我的个人理解),下图物体的高度大于StepHeight。
Paste_Image.png
  • Generated Off Mesh Links 这个是意思分离分离网格之间的连接,假如按照上边的一些参数,我们会有一些区域变得到达不了,而通过下边的两个参数我们就可以建立一个连接。
    首先我们先选中一个物体,然后把Navigation下的选到Object
Paste_Image.png

把箭头1指向的Generate OffMeshLimks勾选上,而箭头2指向的NavigationArea这就是你希望把该区域烘焙成什么类型的区域,而NavigationStatic这个就代表是静态的,在游戏中是不能移动的。同时当我们在烘焙的时候就会把他的一些网格信息存储起来,然后在计算最短路径的时候会把这个考虑进去,假如我们不勾选,则当角色移动到该物体,与该物体发生碰撞的时候才会考虑这个物体,只有我们把这个勾选上才可以去选择下边两个选项,否则选择不了。
接下来我们继续回到Bake界面

  • Drop Height 可以从高处跳到地面的最高高度
Paste_Image.png

这个只能从上往下跳跃,假如我们想从下往上跳跃,我们只能使用手动网格连接

  • Jump Distance 可以跳的最远距离
Paste_Image.png

手动添加分离网格连接

首先创建一个Cube,然后添加上OffMeshLish组件

Paste_Image.png
Paste_Image.png
  • Start 和 End表示起点和终点
  • CostOverride表示需要的行动力
  • BiDirrection 勾选时表示双向,不够选时表示单项(从Start到End)
  • Activated 表示该链接是否是激活的
Paste_Image.png

设置完以后我们就发现这两个物体之间有一条线在连接,而且箭头是双指向的。

补充:关于NavMesh常用API
destination:NavMeshAgent的目的地
remainDistance;距离目的地剩下的距离
Resume()重新规划路径
Stop()停止
SetDestination()设置目标点
Warp()让NavMeshAgent瞬移到该点

注意

当我们每次要对导航网格修改时,每次修改以后一定要点一下Bake这个按钮,然后他才会自动烘培。
还有一个小技巧,当我们想把某个新建物体烘培到场景里边里边时

Paste_Image.png

可以直接通过这个标签来进行设置,比较快捷。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,378评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,356评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,702评论 0 342
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,259评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,263评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,036评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,349评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,979评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,469评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,938评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,059评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,703评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,257评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,262评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,485评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,501评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,792评论 2 345

推荐阅读更多精彩内容

  • 角色控制是游戏设计中必不可少的一个设计环节,这一节我们讲一讲如何制作基本的角色运动控制交互逻辑。 因为是简单实例教...
    shimmery阅读 9,262评论 5 20
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,728评论 1 92
  • (一)Character Controller角色控制器组件 做过小Demo,让游戏物体朝向鼠标点击的地面位置移动...
    _凉笙阅读 925评论 0 1
  • 前言 温馨提示:本文较长,图片较多,本来是想写一篇 CSS 布局方式的,但是奈何 CSS 布局方式种类太多并且实现...
    sunshine小小倩阅读 3,118评论 0 59
  • 云涌青烟映碧天,风逐翠浪舞翩跹。 连绵不断山叠谷,扑索迷离寨隐仙。 过去军工要塞地,如今美景秀棱边。 峰回路转千林...
    天水居士阅读 424评论 5 8