- NavMeshObstacle Normal
- 通过设置半径和高度来设定障碍物,配合NavMesh使用。
- 优点:
- 简单易用,效率高
- 动态生成
- 缺点:
- 可能会被主角穿过,但目前没发现
- 形状固定为圆柱
- NavMeshObstacle Carve
- 根据模型的形状和大小自动更新NavMesh,移动的时候会根据阀值来自动更新NavMesh。
- 优点:
- 动态生成,远离NavMesh的时候为normal模式,近距离时动态更新导航网格
- 不会被穿过
- 方便易用
- 形状任意
- 缺点:
- 更新导航网格式掉帧明显,沙漠十字场景为例,一个Carve类型需要更新时大概掉从30降到28,六个时大概从30降到22,在iPad 3上。
- NavMeshLayer
- 在NavMesh里设置多个Layer来区分不同的障碍物,当障碍物破坏时,主角的NavMeshAgent的MavMesh Walkable设置对应的标记。
- 优点:
- 效率高
- 缺点:
- 制作繁琐,需要写个工具简化下
- 简略流程如下:
- 使用固定点生成对应的NavMeshLayer,调整大小
- 设定对应的障碍物
- 人物破坏障碍物时,更新对应的walkablelayer。