Unity 编辑器AssetDatabase用法详解

打印 上一主题 下一主题

主题 897|帖子 897|积分 2691

简介

AssetDatabase 类,在Unity 编辑器扩展中,是一个非常常用的类。
是对资源的管理,可以创建,查找,删除,等常用功能,一样平常在工具类里用的比力多,比如批量修改设置表参数,动态创建设置,查找指定文件等等
注意: AssetDatabase只能在编辑器下使用
API

中文官方文档
几个常用API示例:


  • 创建资源:AssetDatabase.CreateAsset
    您必须确保路径使用的是支持的扩展名(材质是 ‘.mat’、立方体贴图是 ‘.cubemap’、 皮肤是 ‘.GUISkin’、动画是 ‘.anim’、其他恣意资源是 ‘.asset’)。
  1. [MenuItem("Ming/CreateAsset")]
  2. static void CreateAsset()
  3. {
  4.      // 创建一个新的ScriptableObject类型资产
  5.      ScriptableObject newAsset = CreateInstance<ScriptableObject>();
  6.      // 设置资产的名称
  7.      newAsset.name = "NewAsset";
  8.      // 选择保存新资产的路径
  9.      string path = "Assets/NewAsset.asset";
  10.      // 使用AssetDatabase.CreateAsset方法创建新资产
  11.      AssetDatabase.CreateAsset(newAsset, path);
  12.      // 让Unity刷新资源数据库,使新资产在项目窗口中可见
  13.      AssetDatabase.SaveAssets();
  14.      AssetDatabase.Refresh();
  15. }
复制代码


  • 加载资源:AssetDatabase.LoadAssetAtPath
  1. [MenuItem("Ming/LoadAsset")]
  2. static void LoadAsset()
  3. {
  4.     var go = AssetDatabase.LoadAssetAtPath<GameObject>("Assets/Resources/Cube.prefab");
  5.     Instantiate(go);
  6. }
复制代码


  • 查找资源:FindAssets
  1. //查找所有名字中包含了 "psb" 的资源,包括脚本和文件夹,名字不区分大小写,返回其guid
  2. var guids = AssetDatabase.FindAssets("psb");
  3. //查找所有类型为 "GameObject"的资源,返回其guid
  4. var guids = AssetDatabase.FindAssets("t:GameObject");
  5. //查找所有标签为 "UI"的资源,返回其guid
  6. var guids = AssetDatabase.FindAssets("l:UI");
  7. //多种筛选条件可以组合使用,查找所有名字为go的GameObject,返回其guid
  8. var guids = AssetDatabase.FindAssets("go t:GameObject");
  9. //此外还可以限定查找范围,查找范围默认为Assets下所有文件
  10. //查找Assets/_ZH/文件夹下所有名字为go的GameObject,返回其guid
  11. var guids5 = AssetDatabase.FindAssets("go t:GameObject", new string[] { "Assets/_ZH/" });
复制代码


  • 获取所提供的 GUID 的对应资源路径:GUIDToAssetPath
  • 删除资源:DeleteAsset
  • 创建文件夹:CreateFolder
  • 重定名资源:RenameAsset
  • 移动资源:MoveAsset
  • 将路径下的资源移动到垃圾箱:MoveAssetToTrash
别的的检察官方API。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

大号在练葵花宝典

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表