namespace AtlasUtility { using UnityEngine; using System; using System.Collections.Generic; using Object = UnityEngine.Object; public enum PackPlan { Fixed, Smallest, } public enum Platform { Editor, Mobile, Desktop, } public enum ScalePlatform { Mobile, Desktop, } [Serializable] public class PlatformSet { public Object EditorObject; public Object MobileObject; public Object DesktopObject; } [Serializable] public class VirtualTexture { #region Variable public int Width; public int Height; public string Name; #endregion } public class AtlasUtility : MonoBehaviour { #region Variable public bool PackAtlasFunction; public bool SliceAtlasFunction; public bool SearchReferenceFunction; public bool PlatformControllFunction; public bool ScaleTextureFunction; public bool DebugFunction; public int PackSize = 2048; public int PackPadding = 1; public string PackName = "Atlas"; public string PackPath = "Assets/AtlasUtility"; public PackPlan PackPlan = PackPlan.Smallest; public Texture2D PackAtlas; public List TextureList = new List(); public List VirtualTextureList = new List(); public int SlicePadding = 0; public string SlicePath = "Assets/AtlasUtility/Slice"; public Texture2D SliceAtlas; public Texture2D SearchTarget; public int ScalePadding; public float ScaleFactor; public string ScalePath; public string ScaleName; public Texture2D MobileTexture; public Texture2D DesktopTexture; public Texture2D EditorTexture; public Texture2D LastEdiotTexture; public List EditorTextures; public ScalePlatform ScalePlatform; public List PlatformSet; public TextAsset AtlasReferenceTable; public TextAsset PlatformReferenceTable; #endregion } }