Files
2023-02-04 22:44:09 +01:00

34 lines
948 B
C#

#if(UNITY_EDITOR)
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
public class MeshSaver
{
public void SaveMesh(Mesh mesh, string path)
{
if (!AssetDatabase.IsValidFolder(path)) CreateFolder(path);
AssetDatabase.CreateAsset(mesh, $"{path}/{mesh.name}{Random.Range(100000, 1000000)}.asset");
}
private void CreateFolder(string path)
{
string[] folders = path.Split('/');
for (int folderIndex = 0; !AssetDatabase.IsValidFolder(path); folderIndex++)
AssetDatabase.CreateFolder(GetPath(folders, folderIndex + 1), folders[folderIndex + 1]);
}
private string GetPath(string[] folders, int foldersCount)
{
string result = "";
for (int i = 0; i < foldersCount; i++)
{
result += folders[i];
if (i < foldersCount - 1) result += "/";
}
return result;
}
}
#endif