static void Read() { AtlasPackerHelper.Init(); if (AtlasPackerHelper.list == null) { AtlasPackerHelper.list = new AtlasTextureFormatList(); } var dirs = Directory.GetDirectories(PathConfig.localFullPath2); for (int i = 0; i < dirs.Length; ++i) { dirs[i] = dirs[i].Replace('\\', '/'); dirs[i] = dirs[i].Substring(dirs[i].LastIndexOf('/') + 1); } if (AtlasPackerHelper.list.list != null) { foreach (var item in AtlasPackerHelper.list.list) { if (dirs.First(t => t == item.atlasName) == null) { AtlasPackerHelper.list.dict.Remove(item.atlasName); } } } Save(); foreach (var dir in dirs) { if (AtlasPackerHelper.list.dict.ContainsKey(dir)) { continue; } var item = new AtlasTextureFormatItem(); item.atlasName = dir; item.iosFormat = item.androidFormat = item.standaloneFormat = TextureImporterFormat.RGBA32.ToString(); AtlasPackerHelper.list.dict.Add(dir, item); } }
static void Save() { AtlasPackerHelper.list.list = AtlasPackerHelper.list.dict.Values.ToListFromPool(); File.WriteAllText(AtlasPackerHelper.ATLAS_TEXTURE_FORMAT_CONFIG_PATH, JsonUtility.ToJson(AtlasPackerHelper.list)); AtlasPackerHelper.Init(); }