public static List <string> GetFilesPath(string rootPath, bool deep, string suffix = "*.*") { List <string> ret = new List <string>(); ScanDirectoryFile(rootPath, deep, ret, suffix); NoEndsWithFilter filter = new NoEndsWithFilter(".meta"); SuffixHelper.Filter(ret, filter); return(ret); }
/// <summary> /// 得到所有的Sprite图集的地址 /// </summary> public static List <string> GetAllSpritePath() { string[] files = Directory.GetFiles(ESpriteConst.ui_sprite_root_dir, "*.*", SearchOption.AllDirectories); EndsWithFilter suffix = new EndsWithFilter(); suffix.AddSuffix(ESpriteConst.sprite_suffix); List <string> infos = SuffixHelper.Filter(files, suffix); return(infos); }
public static void CreateResFile(string[] assetBundles) { // 2.通过过滤器剔除掉不是主目录的AssetBundle List <string> filterFiles = SuffixHelper.Filter(assetBundles, new StartsWithFilter(EAssetBundleConst.MAIN_RES_DRIECTORY)); // 3.添加UIRes List <string> altasFiles = SuffixHelper.Filter(assetBundles, new StartsWithFilter(EAssetBundleConst.UI_MAIN_DIRECTORY)); filterFiles.AddRange(altasFiles); filterFiles.Clear(); filterFiles.AddRange(assetBundles); List <List <string> > resultMap = new List <List <string> >(); int length = filterFiles.Count; for (int abIndex = 0; abIndex < length; abIndex++) { // 这个资源的AssetBundle名字 string abName = filterFiles[abIndex]; string[] assetBundleNames = AssetDatabase.GetAssetPathsFromAssetBundle(abName); for (int mainIndex = 0; mainIndex < assetBundleNames.Length; mainIndex++) { // 主目录下的资源路径 string mainAbPath = assetBundleNames[mainIndex]; if (mainAbPath.StartsWith(EAssetBundleConst.MAIN_RES_DRIECTORY) || mainAbPath.StartsWith(EAssetBundleConst.UI_MAIN_DIRECTORY)) { List <string> result = new List <string>(); //mainAbPath = EPathHelper.RemoveSuffix(mainAbPath); result.Add(mainAbPath.Replace("Assets/", string.Empty)); result.Add(abName); resultMap.Add(result); } } } CreateConfig(resultMap, AssetBundleConst.ResConfigName); }