首页 > 技术文章 > Unity3D-基本导航(NavMesh)功能实现

willbin 2013-12-06 14:33 原文

1: 打开场景

 

2:打开Navgation窗口

菜单中: Window --> Navgation, 在Inspector旁边会出现导航界面

这个Objcet的面板是对应当前选择的物体的,旁边的Bake面板是对应全局选项的。结构和烘焙或者遮挡剔除是一样的。
在选择了物体的情况下会出现上面的内容:
上面的All、MeshRenderers、Terranis是对Hirarchy面板里面显示的物品选择的一个筛选过滤:
all就是全部显示
MeshRenderers是只显示可渲染的网格物体
而Terrains当然就是只显示地形物体了。
 

 

3:场景烘焙准备

 在Navgation中选择 "Mesh Renderers", 会发现在"Hierarchy"中, 出现了可渲染的物体,

全选这些物体, 在 Navgation 中,选择 "Navgation Static", 打勾.

"OffMeshLink Generatic"默认状态即可, 不去动.

 

4:烘焙

选择Navgation中的"Bake"项

其中几个参数的意义(http://game.ceeger.com/Manual/Navmeshbaking.html)

一般我们只改动以下几项:

"Radius": 值越小, 效果越好, 但烘焙时间也越长.

"Step height": 台阶高度, 如果要人物通过台阶, 需要设定一个合适的值.

"Max Slope":最大坡度, 人物可以爬上的最大坡度. 默认基本就够了.

设置完毕后, 点击 "Navgation"栏右下角的"Bake"按钮( 在"Bake"按钮下会有进度表示)

Bake完成后, 界面上可通过区域会显示成浅蓝色.

 

 

检查是否与预期相符合.

 

 

推荐阅读