转Unity5.6新功能动态烘焙 NavMesh之组件介绍

1. 如何使用NavMesh新组件

NavMesh的新组件一共有4个:

NavMeshSurface

NavMeshModifier

NavMeshModifierVolume

NavMeshLink

这4个新组件并不是在Unity5.6版本里面默认就有的,需要自己导入到工程中,下载->导入

接下来对4个组件逐个介绍

2.NavMesh Surface组件

(上图使用NavMeshSurface组件将这片区域变成可走区域)

High-level NavMesh 最核心的组件

NavMeshSuface组件代表agent可以走的区域,定义世界中哪部分应该被bake成NavMesh 

一个场景中可以有多个NavMesh Surface组件

NavMeshSurface组件可以被加在任何游戏物体上,可以用来定义那些物体可以用来生成NavMesh(有了该组件后可以不需要设置物体Navigition static的静态属性,以前的静态属性只适用于editor模式,不适用于实时bake的特性)

参数介绍: 

Agent Type: 用来匹配NavMeshAgent

Collect Object: 定义哪些物体用来bake生成NavMesh 

All: 使用全部激活状态的物体(无论是否是父子物体) 

Volume: 被体积盒包围的物体,或者是包围在内的物体的部分 

Children: 有NavMeshSurface组件的物体及其子物体 

Include Layers: 定义哪些层的物体要被bake

Use Geometry: 选择使用网格或者碰撞体来bake 

Render Meshes - 使用Mesh Renderer 和 Terrains

Physics Colliders - 使用Colliders和Terrains(推荐)

Advanced:高级设置(一般默认就可以) 

Default Area: 默认生成区域类型

Override Voxel Size: 覆盖默认的Voxel Size,体素尺寸,用来调整精度,场景比较精密的可以把该值调小,值越小精度越高,精度越高,bake越慢,该值与Tile Size共同影响bake的效果

Override Tile Size: 覆盖默认的Tile Size,块大小,默认是256voxel作为一块,为了让bake有较多平行与增加内存效率才有了此设置,在障碍物多的时候,可以将块减小以提升运行效率。或者打算实时bake的时候,可以用更小的Tile Size来降低内存消耗 

Build Height Mesh: 不再被支持

其它说明: 

NavMesh Surface组件用来设置一片大范围内要被bake的物体的信息,而用NavMeshModifer组件可以对这些物体逐个进行微调

如果物体身上有NavMesh Agent或者NavMesh Obstacle组件则不会被bake进去,会在bake的时候剔除他们,因为他们是来用NavMesh的,不是来建造这个NavMesh的

3.NavMesh Modifier组件

(上图用NavMeshModifier定义某一小块区域为Lava(岩浆)类型的区域)

NavMesh Modifier组件允许对一些要用来被NavMeshSurface组件bake的物体进行微调

NavMesh Modifier组件的作用效果包括其下的所有子物体

NavMesh Modifier组件可用于实时bake,且不需要static标志

参数说明:

Ignore From Build: 是否无视bake

Override Area Type:生成区域类型

Affected Agents: 针对某个agents的微调,比如可以选择排除该agents的某些特定的障碍

4.NavMesh Modifier Volume 组件

(上图用NavMesh Modifier Volume将门的一片区域设置为不可走)

NavMesh Modifier Volume与NavMesh Modifier差不多

前者作用于对体积盒包围的所有物体(或物体的部分),后者只作用于自身及其子物体

参数说明: 

Size和Center:调整体积盒的大小位置,其它和NavMesh Modifier一样

5.NavMesh Link 组件

NavMesh Link组件允许在两个区域间创建一条可通行的通道

NavMesh Link组件对于连接两个不同的NavMesh Surfaces是必须的

参数说明:

Agent Type: 哪种Agent才可以使用这个NavMesh Link

Start Point:开始点

End Point:结束点

Align Transform To Points: 将绑定该NavMesh Link组件的物体的Tranfrom属性与Link匹配,位置移动到link的中心,方向也对着link的方向

Cost Modifier: 测试不出有什么用,默认即可,原文→(when the cost modifier value is non-negative the cost of moving over the NavMeshLink is equivalent to the cost modifier value times the Euclidean distance between NavMeshLink and points.)

Bidirectional: 勾上时线的方向为双向,没勾时只能start-to-end单向

Area Type: 区域类型

6. 将多个NavMesh Surfaces连接注意事项

可以使用多个 NavMesh Link连接多个NavMesh surfaces

Link和Sufaces都必须有相同的agent类型

Link的开始点和结束点都必须各种在一个surfaces内,两个surfaces叠在一起会不清楚开始点或结束点连接放在哪个surface上

如果场景中已经有了Link,然后再添加NavMesh Surface的时候检测会不会连接到不想连接的Surface

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

推荐阅读更多精彩内容

  • 前言:在游戏中经常出现怪物自己会走路,人物跟随鼠标点击位置进行移动,那么这些功能是怎么实现的呢?通过本节内容的学习...
    Joe_Game阅读 6,153评论 0 3
  • 一、Unity简介 1. Unity界面 Shift + Space : 放大界面 Scene界面按钮渲染模式2D...
    MYves阅读 8,056评论 0 22
  • 角色控制是游戏设计中必不可少的一个设计环节,这一节我们讲一讲如何制作基本的角色运动控制交互逻辑。 因为是简单实例教...
    shimmery阅读 8,947评论 5 20
  • 本篇文章是基于谷歌有关Graphic的一篇概览文章的翻译:http://source.android.com/de...
    lee_3do阅读 6,970评论 2 20
  • 《世界文学》2017.2 作为词作家的鲍勃·迪伦(【美国】安东尼·迪科蒂斯著 叶丽贤译) ——“如果一个人意识不到...
    ozalice阅读 234评论 0 0