public Grass2SingledBillboardClan Load(string rootPath, IntVector2 billboardImageSize) { var pathGenerator = new Grass2BillboardClanFilesManagerPathGenerator(rootPath); var infoFile = JsonUtility.FromJson <Grass2BillboardInfoJson>(File.ReadAllText(pathGenerator.CreateInfoFilePath())); var billboardsList = new List <DetailedGrass2SingleBillboard>(); int i = 0; foreach (var bladesCount in infoFile.BladesCountList) { var tex = SavingFileManager.LoadPngTextureFromFile(pathGenerator.CreateBillboardFilePath(i), billboardImageSize.X, billboardImageSize.Y, TextureFormat.ARGB32, true, true); tex.filterMode = FilterMode.Point; tex.wrapMode = TextureWrapMode.Clamp; billboardsList.Add(new DetailedGrass2SingleBillboard() { BladesCount = bladesCount, Texture = tex }); i++; } return(new Grass2SingledBillboardClan() { BillboardsList = billboardsList }); }
public void Save(string rootPath, Grass2SingledBillboardClan clan) { var billboardsList = clan.BillboardsList; var pathGenerator = new Grass2BillboardClanFilesManagerPathGenerator(rootPath); var infoFile = new Grass2BillboardInfoJson() { BladesCountList = billboardsList.Select(c => c.BladesCount).ToList() }; File.WriteAllText(pathGenerator.CreateInfoFilePath(), JsonUtility.ToJson(infoFile)); int i = 0; foreach (var billboard in billboardsList) { SavingFileManager.SaveTextureToPngFile(pathGenerator.CreateBillboardFilePath(i), billboard.Texture); i++; } }