版本: Unity 6 (6000.0)
语言English
  • C#

AssetDatabase

UnityEditor 中的类

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实阅读了用户提出的每个建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某种原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

访问资源并对资源执行操作的接口。

静态属性

ActiveRefreshImportMode获取资源数据库当前使用的刷新导入模式。
DesiredWorkerCount在资源数据库刷新期间导入资源时要使用的进程所需数量。
GlobalArtifactDependencyVersion如果任何可以使任何工件失效的内容发生更改,则在刷新期间发生更改。
GlobalArtifactProcessedVersion每当将新工件添加到工件数据库时更改。
onImportPackageItemsCompleted每当包导入成功完成并列出选择导入的项目时引发的回调。

静态方法

AddObjectToAsset将 objectToAdd 添加到路径中现有的资源。
AllowAutoRefresh递减 Unity 用于确定是否允许自动 AssetDatabase 刷新行为的内部计数器。
AssetPathExists检查数据库中给定路径下是否存在资源。
AssetPathToGUID获取路径中资源的 GUID。
CanConnectToCacheServer检查缓存服务器的可用性。
CanOpenAssetInEditor检查 Unity 是否可以在编辑器中打开资源。
CanOpenForEdit查询是否可以在版本控制中打开资源文件进行编辑,并且没有被其他用户独占锁定或以其他方式不可用。
ClearImporterOverride清除资源的导入器覆盖。
ClearLabels删除附加到资源的所有标签。
CloseCacheServerConnection关闭活动的缓存服务器连接。如果没有任何连接处于活动状态,则它什么也不做。
Contains对象是否是资源?
CopyAsset复制路径中的资源并将其存储在 newPath 中。
CopyAssets复制路径中的资源并将其存储在 newPaths 中。
CreateAsset创建一个新的原生 Unity 资源。
CreateFolder在指定的父文件夹中创建一个新文件夹。父文件夹字符串必须以“Assets”文件夹开头,并且父文件夹字符串中的所有文件夹都必须已存在。例如,当指定“Assets/ParentFolder1/Parentfolder2/”时,只有当 ParentFolder1 和 ParentFolder2 已经存在时,才会在“ParentFolder2”中创建新文件夹。
DeleteAsset删除指定的资源或文件夹。
DeleteAssets允许您一次删除多个资源或文件夹,并在版本控制下获得性能优势。
DisallowAutoRefresh递增 Unity 用于确定是否允许自动 AssetDatabase 刷新行为的内部计数器。
ExportPackage将 assetPathNames 中标识的资源导出到 fileName 中的 unitypackage 文件。
ExtractAsset通过从导入的资源(例如 FBX 文件)中提取对象(例如材质)来创建外部资源。
FindAssets使用搜索过滤器字符串搜索资源数据库。
ForceReserializeAssets强制加载并重新序列化给定的资源,并将任何未完成的数据更改刷新到磁盘。
ForceToDesiredWorkerCount强制编辑器使用所需的 worker 进程数量。Unity 将生成新的 worker 进程或关闭空闲的 worker 进程以达到所需的数字。
GenerateUniqueAssetPath为资源创建一个新的唯一路径。
GetAllAssetBundleNames返回资源数据库中的所有 AssetBundle 名称。
GetAssetBundleDependencies给定 assetBundleName,返回它依赖的 AssetBundle 列表。
GetAssetDependencyHash返回资源所有依赖项的哈希值。
GetAssetOrScenePath返回相对于项目文件夹存储资源的路径名称。
GetAssetPath返回相对于项目文件夹存储资源的路径名称。
GetAssetPathFromTextMetaFilePath获取与文本 .meta 文件关联的资源文件的路径。
GetAssetPathsFromAssetBundle返回一个数组,其中包含标记有指定 Asset Bundle 名称的所有资源的路径。
GetAssetPathsFromAssetBundleAndAssetName获取标记有 assetBundleName 并命名为 assetName 的所有资源的资源路径。
GetAvailableImporters获取与给定资源路径关联的导入器类型。
GetCachedIcon检索给定资源路径下资源的图标。
GetCacheServerAddress获取编辑器设置中缓存服务器的 IP 地址。
GetCacheServerEnableDownload获取编辑器设置中缓存服务器下载选项。
GetCacheServerEnableUpload获取编辑器设置中缓存服务器上传选项。
GetCacheServerNamespacePrefix获取编辑器设置中设置的缓存服务器命名空间前缀。
GetCacheServerPort获取编辑器设置中缓存服务器的端口号。
GetCurrentCacheServerIp获取编辑器当前使用的缓存服务器的 IP 地址。
GetDefaultImporter返回与位于提供的路径的资源关联的默认导入器。当没有设置导入器覆盖时,将使用默认导入器。其他资源:AssetDatabase.GetImporterOverride、AssetDatabase.ClearImporterOverride。
GetDependencies返回指定 pathName 中资源的所有依赖项的资源数组。注意:GetDependencies() 获取其他资源引用的资源。例如,场景可能包含许多附加了材质的 GameObjects。在这种情况下,GetDependencies() 将返回材质资源的路径,但不会返回 GameObjects,因为它们不是磁盘上的资源。
GetImplicitAssetBundleName返回给定资源所属的 AssetBundle 的名称。
GetImplicitAssetBundleVariantName返回给定资源所属的 AssetBundle 变体的名称。
GetImporterOverride返回覆盖导入器的类型。
GetImporterType返回与资源关联的导入器类型,无需加载资源。
GetImporterTypes返回与指定的资源数组关联的导入器类型,无需加载这些资源。
GetLabels返回附加到给定资源的所有标签。
GetMainAssetTypeAtPath返回 assetPath 中主资源对象的类型。
GetMainAssetTypeFromGUID返回具有 guid 的主资源对象的类型。
GetScriptableObjectsWithMissingScriptCount检查指定资源中存在多少个不可加载的 ScriptableObject 实例。
GetSubFolders给定 Assets 文件夹中目录的路径(相对于项目文件夹),此方法将返回其所有子目录的数组。
GetTextMetaFilePathFromAssetPath获取与资源关联的文本 .meta 文件的路径。
GetTypeFromPathAndFileID从资源路径和本地文件标识符获取对象的类型。
GetUnusedAssetBundleNames返回资源数据库中所有未使用的 assetBundle 名称。
GUIDFromAssetPath获取路径中资源的 GUID。
GUIDToAssetPath获取提供的 GUID 对应的资源路径,如果找不到 GUID,则返回空字符串。
ImportAsset导入路径中的资源。
ImportPackage将 packagePath 中的包导入当前项目。
InstanceIDsToGUIDs为每个有效的作为资源的实例 ID 设置 UnityEditor.GUIDs 的 NativeArray。
IsCacheServerEnabled检查缓存服务器是否在项目设置中启用。
IsConnectedToCacheServer检查缓存服务器的连接状态。
IsDirectoryMonitoringEnabled报告目录监视是否已启用。
IsForeignAsset确定资源是否为外部资源。
IsMainAsset资源是否是项目窗口中的主资源?
IsMainAssetAtPathLoaded如果 assetPath 中的主资源对象已加载到内存中,则返回 true。
IsMetaFileOpenForEdit查询资源的元数据 (.meta) 文件是否在版本控制中打开以进行编辑。
IsNativeAsset确定资源是否为原生资源。
IsOpenForEdit查询资源文件是否在版本控制中打开以进行编辑。
IsSubAsset资源是否构成另一个资源的一部分?
IsValidFolder给定文件夹的路径,如果它存在则返回 true,否则返回 false。
LoadAllAssetRepresentationsAtPath返回 assetPath 中的所有子资源。
LoadAllAssetsAtPath返回 assetPath 中所有资源的数组。
LoadAssetAtPath返回给定路径 assetPath 中类型为 type 的第一个资源对象。
LoadMainAssetAtPath返回 assetPath 中的主资源对象。“主”资源是层次结构根部的资源(例如,Maya 文件可能包含多个网格和 GameObjects)。
LoadObjectAsync异步加载特定对象及其依赖项,这些对象和依赖项来自资源文件。
MakeEditable使文件在版本控制中打开以进行编辑。
MoveAsset将资源文件(或文件夹)从一个文件夹移动到另一个文件夹。
MoveAssetsToTrash允许您一次将多个资源或文件夹移动到垃圾箱,并在版本控制下获得性能优势。
MoveAssetToTrash将指定的资源或文件夹移动到操作系统垃圾箱。
OpenAsset使用关联的应用程序打开资源。
Refresh导入任何已更改的资源。
RefreshSettings将挂起的编辑器设置更改应用于资源管道。
RegisterCustomDependency允许您注册资源可以依赖的自定义依赖项。如果您注册了自定义依赖项,并指定资源依赖于它,则如果自定义依赖项发生更改,则资源将被重新导入。
ReleaseCachedFileHandles调用此函数将释放 Unity 内部缓存的文件句柄。这允许安全地修改资源或元数据文件,从而避免潜在的文件共享 IO 错误。
RemoveAssetBundleName从资源数据库中删除 assetBundle 名称。forceRemove 标志用于指示是否要即使它正在使用也要删除它。
RemoveObjectFromAsset从其资源中删除对象(其他资源:AssetDatabase.AddObjectToAsset)。
RemoveScriptableObjectsWithMissingScript从给定的资源文件中删除任何无法加载的 ScriptableObject 实例,因为找不到它们的脚本。
RemoveUnusedAssetBundleNames删除资源数据库中所有未使用的 assetBundle 名称。
RenameAsset重命名资源文件。
ResetCacheServerReconnectTimer重置内部缓存服务器连接重新连接计时器值。默认延迟计时器值为 1 秒,最大延迟值为 5 分钟。每次连接尝试失败时,它都会将延迟计时器值加倍,直到达到最大值的超时时间。
SaveAssetIfDirty将指定资源的所有未保存更改写入磁盘。
SaveAssets将所有未保存的资源更改写入磁盘。
SetImporterOverride设置要用于资源的特定导入器。
SetLabels替换资源上的标签列表。
SetMainObject指定资源文件中哪个对象应在下一次导入后成为主对象。
StartAssetEditing将资源数据库置于一个临时状态,暂时阻止自动导入,允许您将多个资源导入组合成一个更大的导入。
StopAssetEditing结束资源数据库的临时暂停状态,允许它恢复正常的自动导入。
TryGetAssetFolderInfo获取资源数据库中关于某个文件夹的特定信息。
TryGetGUIDAndLocalFileIdentifier从对象实例 ID 获取 GUID 和本地文件 ID。
UnregisterCustomDependencyPrefixFilter移除与 prefixFilter 匹配的自定义依赖项。
ValidateMoveAsset检查资源文件是否可以从一个文件夹移动到另一个文件夹。(不实际移动文件)。
WriteImportSettingsIfDirty将导入设置写入磁盘。

事件

cacheServerConnectionChanged当缓存服务器连接发生变化时,Unity 会触发此事件。
importPackageCancelled用户取消软件包导入时触发的回调。
importPackageCompleted软件包导入成功完成后触发的回调。
importPackageFailed软件包导入失败时触发的回调。
importPackageStarted软件包导入开始时触发的回调。

委托

ImportPackageCallback从 AssetDatabase.ImportPackage 回调中调用的委托。packageName 是触发回调的软件包名称。
ImportPackageFailedCallback从 AssetDatabase.ImportPackage 回调中调用的委托。packageName 是触发回调的软件包名称。errorMessage 是失败的原因。