36 lines
981 B
C#
36 lines
981 B
C#
#if UNITY_EDITOR
|
|
using UnityEditor;
|
|
using UnityEngine;
|
|
using System.IO;
|
|
|
|
public class RamSaveMeshEditor : MonoBehaviour
|
|
{
|
|
[MenuItem("Tools/Nature Manufacture/Save Selected RAM Mesh")]
|
|
public static void SaveSelectedMesh()
|
|
{
|
|
GameObject selected = Selection.activeGameObject;
|
|
if (!selected)
|
|
{
|
|
Debug.LogWarning("Select a RAM spline GameObject with MeshFilter first.");
|
|
return;
|
|
}
|
|
|
|
MeshFilter mf = selected.GetComponent<MeshFilter>();
|
|
if (!mf || !mf.sharedMesh)
|
|
{
|
|
Debug.LogWarning("Selected object doesn't have a valid mesh.");
|
|
return;
|
|
}
|
|
|
|
Mesh meshToSave = Object.Instantiate(mf.sharedMesh);
|
|
string path = "Assets/SavedRiverMesh_" + selected.name + ".asset";
|
|
|
|
AssetDatabase.CreateAsset(meshToSave, path);
|
|
AssetDatabase.SaveAssets();
|
|
mf.sharedMesh = meshToSave;
|
|
|
|
Debug.Log("Saved mesh to: " + path);
|
|
}
|
|
}
|
|
#endif
|