using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using UnityEditor; using UnityEngine; namespace YooAsset.Editor { public class AssetDependencyCache { private readonly AssetDependencyDatabase _database; /// /// 初始化资源依赖缓存系统 /// public AssetDependencyCache(bool useAssetDependencyDB) { if (useAssetDependencyDB) Debug.Log("Use asset dependency database !"); string databaseFilePath = "Library/AssetDependencyDB"; _database = new AssetDependencyDatabase(); _database.CreateDatabase(useAssetDependencyDB, databaseFilePath); if (useAssetDependencyDB) { _database.SaveDatabase(); } } /// /// 获取资源的依赖列表 /// /// 资源路径 /// 递归查找所有依赖 /// 返回依赖的资源路径集合 public string[] GetDependencies(string assetPath, bool recursive = true) { // 通过本地缓存获取依赖关系 return _database.GetDependencies(assetPath, recursive); // 通过Unity引擎获取依赖关系 //return AssetDatabase.GetDependencies(assetPath, recursive); } } }