public void SaveMesh() { var m = this.GetMesh(); var path = AssetDatabase.GetAssetPath(m); var folderPath = Path.Combine(Application.dataPath, Cfg.meshesFolderName); Directory.CreateDirectory(folderPath); try { if (path.Length > 0) { SharedMesh = Instantiate(SharedMesh); } var sm = SharedMesh; Directory.CreateDirectory(Path.Combine("Assets", Cfg.meshesFolderName)); AssetDatabase.CreateAsset(sm, Path.Combine("Assets", MeshEditorManager.GenerateMeshSavePath())); AssetDatabase.SaveAssets(); UpdateMeshCollider(); //if (meshCollider && !meshCollider.sharedMesh && sm) // meshCollider.sharedMesh = sm; } catch (Exception ex) { Debug.LogError(ex); } }