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

AssetDatabase.GetDependencies

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。尽管我们无法接受所有提交,但我们会仔细阅读用户提出的每条建议,并酌情更新。

关闭

提交失败

由于某种原因,无法提交您的建议更改。请在几分钟后<a>重试</a>一次。感谢您花时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static string[] GetDependencies(string pathName);

声明

public static string[] GetDependencies(string pathName, bool recursive);

参数

pathName 需要依赖项的资产的路径。
recursive 控制此方法是否递归检查并返回所有依赖项,包括间接依赖项(设为 true 时),或者仅返回直接依赖项(设为 false 时)。

返回

string[] 输入项所依赖的所有资产的路径。

说明

返回指定 pathName 处的资产的所有依赖项资产的数组。

注意:GetDependencies() 获取其他资产引用的资产。例如,一个场景可能包含许多连接了材质的游戏对象。在这种情况下,GetDependencies() 将返回到材质资产的路径,而不返回到游戏对象,因为它们并非磁盘上的资产。

如果 recursive 为 true,则返回的列表还将包括输入路径本身。请注意,此函数返回所有由输入资产引用的资产,而这些引用在构建过程中并不一定需要。


声明

public static string[] GetDependencies(string[] pathNames);

声明

public static string[] GetDependencies(string[] pathNames, bool recursive);

参数

pathNames 需要依赖项的资产的路径。
recursive 控制此方法是否递归检查并返回所有依赖项,包括间接依赖项(设为 true 时),或者仅返回直接依赖项(设为 false 时)。

返回

string[] 输入项所依赖的所有资产的路径。

说明

返回 pathName 列表中所有资产的依赖项资产的路径数组,该列表由您提供。

注意:GetDependencies() 获取其他资产引用的资产。例如,一个场景可能包含许多连接了材质的游戏对象。在这种情况下,GetDependencies() 将返回到材质资产的路径,而不返回到游戏对象,因为它们并非磁盘上的资产。

如果 recursive 为 true,返回的列表还将包括输入路径本身。请注意,此函数返回输入资源引用的所有资源;并不一定会在构建过程中需要这些引用。

using System.Text;
using UnityEditor;
using UnityEngine;

public class GetDependenciesExample : MonoBehaviour { [MenuItem("APIExamples/GetDependencies")] static void GetAllDependenciesForScenes() { var allScenes = AssetDatabase.FindAssets("t:Scene"); string[] allPaths = new string[allScenes.Length]; int curSceneIndex = 0;

foreach (var guid in allScenes) { var path = AssetDatabase.GUIDToAssetPath(guid); allPaths[curSceneIndex] = path; ++curSceneIndex; }

var dependencies = AssetDatabase.GetDependencies(allPaths);

StringBuilder dependenciesString = new StringBuilder(); dependenciesString.AppendLine();

foreach (var curDependency in dependencies) { dependenciesString.Append(curDependency); dependenciesString.AppendLine(); }

Debug.Log("All dependencies for Scenes in Project: " + dependenciesString); } }