問題:
假設(shè)我們有3個(gè)AssetBundle,分別是A、B、C。他們的依賴關(guān)系是A依賴B、B依賴C。那么當(dāng)我們打包后,通過Manifest去讀取A的依賴文件清單時(shí),是否會(huì)有C呢?
結(jié)論:
有
代碼:
[MenuItem("Test/BuildAB")]
public static void Build()
{
Directory.CreateDirectory("AssetBundles");
var manifest = BuildPipeline.BuildAssetBundles("AssetBundles", BuildAssetBundleOptions.ChunkBasedCompression, EditorUserBuildSettings.activeBuildTarget);
foreach(var ab in manifest.GetAllAssetBundles())
{
//Debug.Log($"[{ab}] 依賴的文件:");
var depends = manifest.GetAllDependencies(ab);
foreach(var depend in depends)
{
Debug.Log($"[{ab}] 依賴文件: {depend}");
}
}
Debug.Log($"Over");
}
輸出:

image.png