利用Unity生成NavMesh寻路信息,生成可碰撞区域,再用摄像轮询去碰撞检测。
场景导出阻挡点
public static string GetCurSceneRoadList(Vector2 leftBottom, Vector2 rightTop)
{
GameObject tempObject = GameObject.Find("Driver");
if(tempObject == null)
tempObject = new GameObject();
tempObject.ResetLocalPosition();
NavMeshTriangulation nmt = NavMesh.CaculateTriangulation();
Mesh mesh = new Mesh();
mesh.Clear();
mesh.vertices = nmt.vertices;
mseh.triangles = nmt.indices;
MeshFilter filter = tempObject.GetComponent<MeshFilter>();
if(filter == null)
filter = tempObject.AddComponent<MeshFilter>();
if(filter != null)
filter.sharedMesh = mesh;
MeshRenderer meshRender = tempObject.GetComponent<MeshRenderer>()
if(meshRender == null)
meshRender = tempObject.AddComponent<MeshRenderer>();
Shader shader = Shader.Find("Diffuse");
meshRender.SharedMaterial = new Material(shader);
MeshCollider meshCollider = tempObject.GetComponent<MeshColli
Unity3d A*寻路数据导出解析

本文介绍如何在Unity中生成NavMesh寻路数据,通过摄像机碰撞检测来实现对可碰撞区域的控制,探讨A*寻路算法在游戏场景中的应用。
最低0.47元/天 解锁文章
6575

被折叠的 条评论
为什么被折叠?



