Chinar blog :www.chinar.xin

AssetDatabase 函数用法汇总


本文提供全流程,中文翻译

助力快速理解 AssetDatabase API 用法

为初学者节省宝贵的时间,避免采坑!

Chinar —— 心分享、心创新!

我们的初衷是将一种简单的生活方式带给世人

使有限时间 具备无限可能

Chinar 教程效果:


文章目录

  • 1 Intro —— 简介
  • AddObjectToAsset —— 添加对象到资源
  • CopyAsset —— 拷贝资源
  • 2
    • Other —— 其他 Api
  • 支持
    • May Be —— 开发者,总有一天要做的事!

全文高清图片,点击即可放大观看 (很多人竟然不知道)


1 Intro —— 简介

AssetDatabase 类,在Unity 编辑器扩展中,是一个非常常用的类

其API函数,为我们开发编辑器功能提供了许多便利

涉及、文件、路径、目录、资源移动等等…

英文好的直接传送

AssetDatabase 官方文档


AddObjectToAsset —— 添加对象到资源

  • AddObjectToAsset :添加 object 对象到现有资产中
    不能添加 GameObject,使用 PrefabUtility 可以

取相对路径 Assets/

//创建一个材质球
Material material = new Material(Shader.Find("Specular"));
AssetDatabase.CreateAsset(material, "Assets/Chinar Specular Material.mat");
//给材质球 添加一个 animation clip
AnimationClip animationClip = new AnimationClip {name = "Chinar Clip"};
AssetDatabase.AddObjectToAsset(animationClip, material);
// 重新导入资源,否则更改并未生效。
// 如资源未执行重新导入,则会在项目保存时自动导入、生效
AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(animationClip));



CopyAsset —— 拷贝资源

  • CopyAsset :将指定文件拷贝一份,放至新路径

取相对路径 Assets/

var oldPath = "Assets/Resources/Old/Chinar Material.mat"; //指定路径
var newPath = "Assets/Resources/New/Chinar Material.mat"; //拷贝至新路径
AssetDatabase.CopyAsset(oldPath, newPath);                //路径取相对路径 Assets



2

Other —— 其他 Api

AddObjectToAsset 将objectToAdd添加到路径中的现有资产。

AssetPathToGUID 在路径中获取资产的GUID。

清除标签 删除粘贴到资产的所有标签。

包含 对象是资产吗?
复制资产 在路径上复制资产并将其存储在newPath中。

CreateAsset 在路径上创建新资产。
创建文件夹 新建一个文件夹。

DeleteAsset 删除路径处的资产文件。
出口包装 将assetPathNames标识的资产导出到fileName中的unitypackage文件。
提取资产 通过从导入的资产(例如FBX文件)中提取对象来从对象(例如材料)创建外部资产。

FindAssets 使用搜索过滤器字符串搜索资产数据库。

ForceReserializeAssets 强制装入给定资产并重新序列化,将所有未完成的数据更改刷新到磁盘。

GenerateUniqueAssetPath 为资产创建新的唯一路径。

GetAllAssetBundleNames 返回资产数据库中的所有AssetBundle名称。

GetAssetBundleDependencies 给定一个assetBundleName,返回它依赖的AssetBundle列表。

GetAssetDependencyHash 返回资产所有依赖项的哈希值。

GetAssetOrScenePath 返回相对于存储资产的项目文件夹的路径名。

GetAssetPath 返回相对于存储资产的项目文件夹的路径名。

GetAssetPathFromTextMetaFilePath 获取与文本.meta文件关联的资产文件的路径。

GetAssetPathsFromAssetBundle 获取已经被打上了给assetBundle名资产的路径。

GetAssetPathsFromAssetBundleAndAssetName 获取标记有assetBundleName和命名为assetName的所有资产的资产路径。

GetCachedIcon 在给定的资产路径中检索资产的图标。

GetCurrentCacheServerIp 获取编辑器当前正在使用的高速缓存服务器的IP地址。

GetDependencies 给定一个pathName,返回它依赖的所有资产的列表。

GetImplicitAssetBundleName 返回给定资产所属的AssetBundle的名称。

GetImplicitAssetBundleVariantName 返回给定资产所属的AssetBundle变体的名称。
获取标签 返回附加到给定资产的所有标签。

GetMainAssetTypeAtPath 返回assetPath上主要资产对象的类型。

GetSubFolders 给定Assets文件夹中相对于项目文件夹的目录路径,此方法将返回其所有子目录的数组。

GetTextMetaFilePathFromAssetPath 获取与资产关联的文本.meta文件的路径。

GetUnusedAssetBundleNames 返回资产数据库中所有未使用的assetBundle名称。

GUIDToAssetPath 将GUID转换为其当前资产路径。

ImportAsset 在路径处导入资产。
进口包装 将packagePath中的package导入当前项目。

IsForeignAsset 确定资产是否为外国资产。

IsMainAsset 资产是项目窗口中的主要资产吗?

IsMainAssetAtPathLoaded 如果assetPath上的主要资产对象已加载到内存中,则返回true。

IsMetaFileOpenForEdit 查询资产的元数据(.meta)文件是否已打开以在版本控制中进行编辑。

IsNativeAsset 确定资产是否为本地资产。

IsOpenForEdit 查询资产文件是否在版本控制中打开供编辑。

IsSubAsset 资产是否构成另一资产的一部分?

IsValidFolder 给定文件夹的路径,如果存在,则返回true,否则返回false。

LoadAllAssetRepresentationsAtPath 返回assetPath的所有子资产。

LoadAllAssetsAtPath 返回assetPath处所有资产的数组。

LoadAssetAtPath 返回给定路径assetPath处类型为type的第一个资产对象。

LoadMainAssetAtPath 返回assetPath的主要资产对象。
移动资产 将资产文件(或文件夹)从一个文件夹移动到另一个文件夹。

MoveAssetToTrash 将资产移到垃圾箱。

OpenAsset 用关联的应用程序打开资产。
刷新 导入所有更改的资产。

ReleaseCachedFileHandles 调用此函数将释放由Unity内部缓存的文件句柄。这样可以安全地修改资产或元文件,从而避免潜在的文件共享IO错误。

RemoveAssetBundleName 从资产数据库中删除assetBundle名称。forceRemove标志用于指示是否要删除它,即使它正在使用中。

RemoveObjectFromAsset 从其资产中删除对象(另请参见:AssetDatabase.AddObjectToAsset)。

RemoveUnusedAssetBundleNames 删除资产数据库中所有未使用的assetBundle名称。
重命名资产 重命名资产文件。
保存资产 将所有未保存的资产更改写入磁盘。
设置标签 替换资产上的标签列表。

SetMainObject 指定资产文件中的哪个对象在下一次导入后应成为主要对象。

StartAssetEditing 开始资产导入。这使您可以将多个资产导入分组到一个较大的导入中。

StopAssetEditing 停止资产导入。这使您可以将多个资产导入分组到一个较大的导入中。

TryGetGUIDAndLocalFileIdentifier 警告使用带有长localId参数的重载。将重载与整数localId参数一起使用会导致localId整数溢出。当传递给API的对象是Prefab的一部分时,可能会发生这种情况。从对象实例ID获取
GUID和本地文件ID。

ValidateMoveAsset 检查资产文件是否可以从一个文件夹移动到另一个文件夹。(实际上不移动文件)。

WriteImportSettingsIfDirty 将导入设置写入磁盘。


支持

May Be —— 开发者,总有一天要做的事!

拥有自己的服务器,无需再找攻略

Chinar 提供一站式《零》基础教程

使有限时间 具备无限可能!


先点击领取 —— 阿里全产品优惠券 (享受最低优惠)

Chinar 免费服务器、建站教程全攻略!( Chinar Blog )



END

本博客为非营利性个人原创,除部分有明确署名的作品外,所刊登的所有作品的著作权均为本人所拥有,本人保留所有法定权利。违者必究

对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com

对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址

Unity编辑器AssetDatabase函数API用法中文详解-Chinar教程相关推荐

  1. Unity UGUI Button 中文详解-Chinar

    Chinar blog :www.chinar.xin Unity UGUI 完整系列教程 (Chinar中文图解) Unity UGUI Button 组件 本文提供全流程,中文翻译. Chinar ...

  2. map函数的用法python,详解Python map函数及Python map()函数的用法

    python map函数 map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list ...

  3. php curl exec ch,PHP curl_exec函数的用法实例详解

    curl_exec函数有什么作用? php curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话.知道了php curl_exec函数的功能,下面了解一下什么是CU ...

  4. php 调用微信收货地址,php微信自动获取收货地址api用法实例详解

    这篇文章主要介绍了php版微信自动获取收货地址api用法,结合实例形式分析了php版微信API接口调用与使用技巧,需要的朋友可以参考下 微信公众平台现在是越来越强大了,我们可以通过各种api接口来与平 ...

  5. Unity UGUI InputField 中文详解-Chinar

    Chinar blog :www.chinar.xin Unity UGUI 完整系列教程 (Chinar中文图解) Unity UGUI InputField组件 本文提供全流程,中文翻译. Chi ...

  6. C++中vector的reverse函数及其用法(详解)

    逆序(反转)无论是在C或是C++中用的都特别多,常用于数组,字符串,容器等,其本身的函数参数也不复杂. 标准C中是没有recerse()函数的,这是C++的一个新增函数,使用需要包含头文件 #incl ...

  7. matlab ext2int函数,Ext2 核心 API 中文详解.pdf

    Ext2 核心 API 中文详解 Andyu QQ Ext2 核心 API 中文详解 序.关于Ext2 核心API 1.关于EXT 2.02 为联合Adobe, Ext2.02 当中重要的一项便是针对 ...

  8. strncpy()函数用法及其详解

    strcpy()函数用法及其详解 strcpy()和strcat()函数都有相同的问题,他们都不能检验目标空间是否能够容纳源字符串的副本. 所以,拷贝字符串用strncpy()函数更加安全 描述: C ...

  9. python 匿名函数示例_扣丁学堂Python3开发之匿名函数用法示例详解

    扣丁学堂Python3开发之匿名函数用法示例详解 2018-07-26 14:01:11 1324浏览 今天扣丁学堂Python培训给大家分享关于Python3匿名函数用法,结合实例形式分析了Pyth ...

最新文章

  1. java web filter标签是什么,Java Web:5.Filter
  2. oracle 1g apex030200,APEX_030200
  3. linux源码包编译安装与rpm安装方法介绍
  4. 《Python Cookbook 3rd》笔记(3.9):大型数组运算
  5. 一、MySQL查询学习笔记(基础查询、条件查询、排序查询、常见函数、分组查询 详解)
  6. c语言内置画直线函数库,C语言不调用库函数画直线
  7. java数组转对象_java将对象数组列表转换为POJO
  8. web前端基础知识:html布局如何应用?
  9. 从冷战到深度学习,一文看懂机器翻译发展史
  10. linux 中软件安装的三种方法
  11. Cisco路由器配置命令
  12. c++的内存问题---内存碎片
  13. 工业相机选型和镜头焦距计算
  14. ssr服务器 .json文件,服务端渲染 SSR
  15. Java Instrument实践应用:运行中修改程序的Class
  16. 重构机器学习算法的知识体系 - 《终极算法》读书笔记
  17. 移动软件开发-制作视频播放器
  18. 常用的140个Win XP设置技巧
  19. 美国西储大学滚动轴承实验数据
  20. 关于uboot的简介——uboot对Flash与DDR的管理

热门文章

  1. 修复登录接口版最新知识付费小程序源码下载-独立后台版本
  2. 【C语言历程1.小球坠落】小球从100米处落下,每次落地后又反跳回来,高度返回到原来的1/2,然后再落下,问:第10次落地时,共经过了多少米?第10次反弹时的高度为多少?
  3. FP-Growth算法理解
  4. vs15 preview5 离线安装包
  5. sqlite数据库文件提示损坏修复方法
  6. Java —— 初识集合
  7. Linux 查看系统相关信息命令
  8. mmap函数的用法详解及实例分析
  9. 一文了解互联网技术岗
  10. 最新发布:IT行业近5年平均年薪出炉!你在哪个梯队?