diff --git a/AssetStudio/AssetsManager.cs b/AssetStudio/AssetsManager.cs index ffdc4b2..4f8edb9 100644 --- a/AssetStudio/AssetsManager.cs +++ b/AssetStudio/AssetsManager.cs @@ -424,6 +424,10 @@ namespace AssetStudio } else if (obj is SpriteAtlas m_SpriteAtlas) { + if (m_SpriteAtlas.m_IsVariant) + { + continue; + } foreach (var m_PackedSprite in m_SpriteAtlas.m_PackedSprites) { if (m_PackedSprite.TryGet(out var m_Sprite)) diff --git a/AssetStudio/Classes/SpriteAtlas.cs b/AssetStudio/Classes/SpriteAtlas.cs index 2a71c30..c1a97c5 100644 --- a/AssetStudio/Classes/SpriteAtlas.cs +++ b/AssetStudio/Classes/SpriteAtlas.cs @@ -46,6 +46,7 @@ namespace AssetStudio { public PPtr[] m_PackedSprites; public Dictionary, SpriteAtlasData> m_RenderDataMap; + public bool m_IsVariant; public SpriteAtlas(ObjectReader reader) : base(reader) { @@ -67,8 +68,9 @@ namespace AssetStudio var value = new SpriteAtlasData(reader); m_RenderDataMap.Add(new KeyValuePair(first, second), value); } - //string m_Tag - //bool m_IsVariant + var m_Tag = reader.ReadAlignedString(); + m_IsVariant = reader.ReadBoolean(); + reader.AlignStream(); } } }