Skip to content

Instantly share code, notes, and snippets.

@keijiro
Created December 5, 2018 09:55
Show Gist options
  • Save keijiro/57d9c8574abbb12a244bcaf5835612b5 to your computer and use it in GitHub Desktop.
Save keijiro/57d9c8574abbb12a244bcaf5835612b5 to your computer and use it in GitHub Desktop.
Duplicates mesh assets (Unity 4.x)
using UnityEditor;
using UnityEngine;
static class MeshDuplicator
{
static Mesh[] SelectedMeshes { get {
return Selection.GetFiltered<Mesh>(SelectionMode.Unfiltered);
} }
[MenuItem("Assets/Duplicate Mesh")]
static void DoDuplicate()
{
foreach (var mesh in SelectedMeshes)
{
var src = AssetDatabase.GetAssetPath(mesh);
var dir = System.IO.Path.GetDirectoryName(src);
var dst = System.IO.Path.Combine(dir, mesh.name + ".asset");
dst = AssetDatabase.GenerateUniqueAssetPath(dst);
AssetDatabase.CreateAsset(Object.Instantiate(mesh), dst);
}
}
[MenuItem("Assets/Duplicate Mesh", true)]
static bool ValidateMenuItem()
{
return SelectedMeshes.Length > 0;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment