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

先看演示效果

实现方案

1创建几个用于测试的cube

2,创建一个Editor脚本

3,编写脚本内容

附上源码

cs 复制代码
using UnityEditor;
using UnityEngine;

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

    [MenuItem("Tool/Prefab Browser Window")]
    public static void ShowWindow()
    {
        GetWindow<GetPrefeb>("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<GameObject>(assetPath);
            Debug.Log("Prefab" + assetPath);
            //这里处理你的逻辑
        }
    }
}

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

相关推荐
倦王8 小时前
vscode 中如何去选择不同的远程环境去debug
ide·vscode·编辑器
c++逐梦人10 小时前
Linux下的编辑器vim的介绍
linux·编辑器·vim
至天11 小时前
Windows 10/11 终端(Windows Terminal)右键菜单缺失恢复方法
windows·终端·windows 11·windows 10·terminal·右键菜单·windowsterminal
光年像素12 小时前
WMIC(Windows Management Instrumentation Command-line)命令大全
windows
ThreePointsHeat13 小时前
Unity 关于打包WebGL + jslib录制RenderTexture画面
unity·c#·webgl
贝塔实验室14 小时前
Altium Designer 6.0 初学教程-在Altium Designer 中对PCB 进行板层设置及内电层进行分割
嵌入式硬件·fpga开发·编辑器·硬件工程·信息与通信·信号处理·pcb工艺
q***575016 小时前
Redis服务安装自启动(Windows版)
数据库·windows·redis
rainbow_lucky010618 小时前
Word-like编辑器
qt·编辑器·word-like
BuHuaX18 小时前
Unity_AssetBundle相关
unity·c#·游戏引擎·游戏策划
神码编程19 小时前
【Unity】 HTFramework框架(六十八)StringEditor字符串复杂编辑器
unity·编辑器·游戏引擎·htframework