using LandblockExtraction.DatEngine; using System; using System.Collections.Generic; using System.Linq; using System.Numerics; using System.Text; using System.Threading.Tasks; namespace LandblockExtraction.AtlasMaker; public class TerrainAtlasManager { private PortalEngine portalEngine; private AtlasBuilder atlasBuilder; public Dictionary textureCoord; public TerrainAtlasManager(PortalEngine portalEngine) { this.portalEngine = portalEngine; textureCoord = new Dictionary(); atlasBuilder = new AtlasBuilder(portalEngine); } public void ExtractTexture() { foreach(var terrain in portalEngine.cTerrainDesc.terrains) { foreach(var surface in portalEngine.cSurfaceDesc.surfaces) { if(surface.surfIndex == terrain.surfaceInfo) { atlasBuilder.AddTexture(surface.terrainMaterials.First().baseMaterials.First().materialDid); } } } } public void GenerateAtlas() { atlasBuilder.GenerateAtlas(); } }