目前的工作需要加入自动寻路,后来决定使用 unity 自带的 NavMesh,但有个问题是这个寻路数据,服务器也是需要的,那么我就要把这个数据导出为服务器所用才行。
但 NaveMesh 暂时没有官方接口说如何导出这个 Mesh 的顶点数据,后来在论坛里发现 Unity 内部的人说,确实有接口可以导出数据,但是忘了名字。。。汗|||,还补充说这个接口只能在编辑器模式下使用,不过还好有人在下面给出了这个重要接口,那就是:
NavMesh.Triangulate(out Vector3[] vertices, out Int[] indices);
分别取出顶点和顶点索引。
其实,还有个办法能找到这个接口,在 Mono 编辑器中,鼠标点击 NavMesh,然后右键菜单选择:Go to Declaration,就会看到打开一个新标签的内容,往最下面瞅:
好了,山高月小,水落石出。
下面是测试结果:
1.原本的 NavMesh 预览
2.取出 NavMesh 信息后绘制出来的