Пример #1
0
    public override void OnInspectorGUI()
    {
        base.OnInspectorGUI();
        owner     = (target as NavMeshTool);
        _property = owner?.data;
        EditorGUILayoutExt.FloatField("地图宽度", _property.endX - _property.startX);
        EditorGUILayoutExt.FloatField("地图高度", _property.endZ - _property.startZ);
        if (GUILayout.Button("测试地图大小"))
        {
            CreateMapTestMesh();
        }

        if (_property.mapID == -1)
        {
            CheckInit();
        }

        EditorGUILayout.Separator();
        if (GUILayout.Button("生成寻路数据"))
        {
            CreateNavMeshData();
        }

        EditorGUILayout.Separator();
    }
Пример #2
0
 public void CalculateNavmesh()
 {
     if (use_navmesh && !calculating_path)
     {
         calculating_path = true;
         path_index       = 0;
         NavMeshTool.CalculatePath(transform.position, move_target, 1 << 0, FinishCalculateNavmesh);
         path_destination = move_target;
     }
 }
Пример #3
0
    //---- Navmesh ----

    public void CalculateNavmesh()
    {
        if (auto_move && use_navmesh && !calculating_path)
        {
            calculating_path      = true;
            path_found            = false;
            path_index            = 0;
            auto_move_target_next = auto_move_target; //Default
            NavMeshTool.CalculatePath(transform.position, auto_move_target, 1 << 0, FinishCalculateNavmesh);
        }
    }