Exemple #1
0
    public void OnGUI()
    {
        GUILayout.BeginVertical();         //地图
        GUILayout.BeginHorizontal();       //地图名称
        GUILayout.Label("地图名称:", GUILayout.Width(80), GUILayout.Height(20));
        mapName             = GUILayout.TextField(mapName, GUILayout.Width(200), GUILayout.Height(20));
        editSceneVo.mapName = mapName;
        GUILayout.EndHorizontal();
        GUILayout.EndVertical();

        GUILayout.Space(20);         //导出地图数据
        GUILayout.BeginVertical();
        GUILayout.BeginHorizontal(); //导出地图数据
        if (GUILayout.Button("导出元素布局", GUILayout.Width(300), GUILayout.Height(30)))
        {
            ExportScene.exportNewScene(MapEditorModel.Instance.getCellVos(), editSceneVo);
            ShowEditorBlock = true;
        }
        GUILayout.EndHorizontal();
        GUILayout.EndVertical();
        if (ShowEditorBlock)
        {
            GUILayout.Space(20);         //编辑网格障碍
            GUILayout.BeginVertical();
            GUILayout.BeginHorizontal(); //编辑网格障碍
            if (GUILayout.Button("编辑网格障碍", GUILayout.Width(300), GUILayout.Height(30)))
            {
                ShowEditorBlock = false;
                EditorWindow.GetWindow(typeof(MapEditor)).Close();
                NavMeshExtension.CreateNavMeshManager.Init();
            }
            GUILayout.EndHorizontal();
            GUILayout.EndVertical();
        }
    }
Exemple #2
0
    static public void Main()
    {
        Init();

        window = GetWindow <ExportScene>();
        window.Show();
    }
    static void ExportObj(string fileName)
    {
        Terrain terrain = UnityEngine.Object.FindObjectOfType <Terrain>();

        MeshFilter[]          mfs  = UnityEngine.Object.FindObjectsOfType <MeshFilter>();
        SkinnedMeshRenderer[] smrs = UnityEngine.Object.FindObjectsOfType <SkinnedMeshRenderer>();
        ExportScene.ExportSceneToObj(fileName + ".obj", terrain, mfs, smrs, false, true);
    }
Exemple #4
0
 protected override IEnumerator DoExport()
 {
     if (m_MapPaths != null && m_MapPaths.Count > 0)
     {
         for (int iMap = 0; iMap < m_MapPaths.Count; iMap++)
         {
             string mapPath   = m_MapPaths[iMap];
             Scene  iterScene = EditorSceneManager.OpenScene(mapPath, OpenSceneMode.Single);
             while (!iterScene.isLoaded)
             {
                 yield return(null);
             }
             try
             {
                 ExportScene.BakeNavMeshFromNav();
             }
             catch (Exception e)
             {
                 Debug.LogError("导出NavMesh失败:" + mapPath);
             }
             yield return(null);
         }
     }
 }