private void SaveMesh() { PrimitiveBase primitive = target as PrimitiveBase; Mesh mesh = primitive.GeneratedMesh; if (mesh != null) { string path = EditorUtility.SaveFilePanelInProject("Save Mesh", mesh.name + ".asset", "asset", "Save Mesh"); AssetDatabase.CreateAsset(mesh, path); AssetDatabase.Refresh(); } else { EditorUtility.DisplayDialog("Error", "Mesh is not generated. Generate mesh first.", "OK"); } }
private void CreateMesh() { PrimitiveBase primitive = target as PrimitiveBase; primitive.CreateMesh(); MeshFilter meshFilter = primitive.GetComponent <MeshFilter>(); if (meshFilter != null) { if (meshFilter.sharedMesh != null) { Object.DestroyImmediate(meshFilter.sharedMesh); } meshFilter.sharedMesh = primitive.GeneratedMesh; } }