Unity 编辑器扩展,获取目录下所有的预制件

作者 : admin 本文共749个字,预计阅读时间需要2分钟 发布时间: 2024-06-10 共2人阅读

先看演示效果

Unity 编辑器扩展,获取目录下所有的预制件插图

实现方案

1创建几个用于测试的cube

Unity 编辑器扩展,获取目录下所有的预制件插图(1)

2,创建一个Editor脚本

Unity 编辑器扩展,获取目录下所有的预制件插图(2)

3,编写脚本内容

Unity 编辑器扩展,获取目录下所有的预制件插图(3)

附上源码

using UnityEditor;
using UnityEngine;

public class GetPrefeb : EditorWindow
{
    private string folderPath = "Assets/Resources"; // 指定预制体文件夹路径

    [MenuItem("Tool/Prefab Browser Window")]
    public static void ShowWindow()
    {
        GetWindow("Prefab Browser");
    }

    private void OnGUI()
    {
        folderPath = EditorGUILayout.TextField("Folder Path: ", folderPath);

        if (GUILayout.Button("List Prefabs"))
        {
            ListPrefabsInFolder(folderPath);
        }
    }

    private void ListPrefabsInFolder(string folderPath)
    {
        string[] guids = AssetDatabase.FindAssets("t:Prefab", new string[] { folderPath });

        foreach (string guid in guids)
        {
            string assetPath = AssetDatabase.GUIDToAssetPath(guid);
            GameObject prefab = AssetDatabase.LoadAssetAtPath(assetPath);
            Debug.Log("Prefab" + assetPath);
            //这里处理你的逻辑
        }
    }
}

4.赶紧去试试吧,对获取到的预制件做自己的逻辑处理

本站无任何商业行为
个人在线分享 » Unity 编辑器扩展,获取目录下所有的预制件
E-->