Editor拡張でHierarchyにあるGameObjectの元PrefabのAssetパスを返す関数を作りました。
以下の例ではMenu > KirinUtil > CheckPrefabPathを選択すると現在Hierarchyで選択中のGameObjectのパスを取得しConsoleに表示しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
using UnityEditor; using UnityEngine; public class SampleBlog : Editor { [MenuItem("KirinUtil/CheckPrefabPath", false, 1)] private static void CheckPrefabPath() { string path = GetPrefabPath(Selection.activeGameObject); Debug.Log("PrefabPath: " + path); } private static string GetPrefabPath(GameObject obj) { Object prefab = PrefabUtility.GetCorrespondingObjectFromSource(obj); string path = ""; if (prefab != null) path = UnityEditor.AssetDatabase.GetAssetPath(prefab);//Prefabのパスを取得 return path; } } |
コメントを残す