mirror of
https://github.com/Alex-Rachel/TEngine.git
synced 2025-08-14 16:51:28 +00:00
修正SpritePostprocessor处理Atlas的override
This commit is contained in:
@@ -1,14 +1,13 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
--- !u!612988286 &4096168566840163508
|
--- !u!687078895 &4343727234628468602
|
||||||
SpriteAtlasAsset:
|
SpriteAtlas:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_Name: UIRaw_Atlas_Common
|
m_Name: UIRaw_Atlas_Common
|
||||||
m_MasterAtlas: {fileID: 0}
|
m_EditorData:
|
||||||
m_ImporterData:
|
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
textureSettings:
|
textureSettings:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
@@ -34,6 +33,30 @@ SpriteAtlasAsset:
|
|||||||
m_Overridden: 1
|
m_Overridden: 1
|
||||||
m_AndroidETC2FallbackOverride: 0
|
m_AndroidETC2FallbackOverride: 0
|
||||||
m_ForceMaximumCompressionQuality_BC6H_BC7: 0
|
m_ForceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
m_BuildTarget: Android
|
||||||
|
m_MaxTextureSize: 2048
|
||||||
|
m_ResizeAlgorithm: 0
|
||||||
|
m_TextureFormat: 50
|
||||||
|
m_TextureCompression: 1
|
||||||
|
m_CompressionQuality: 100
|
||||||
|
m_CrunchedCompression: 0
|
||||||
|
m_AllowsAlphaSplitting: 0
|
||||||
|
m_Overridden: 1
|
||||||
|
m_AndroidETC2FallbackOverride: 0
|
||||||
|
m_ForceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 3
|
||||||
|
m_BuildTarget: WebGL
|
||||||
|
m_MaxTextureSize: 2048
|
||||||
|
m_ResizeAlgorithm: 0
|
||||||
|
m_TextureFormat: 50
|
||||||
|
m_TextureCompression: 1
|
||||||
|
m_CompressionQuality: 50
|
||||||
|
m_CrunchedCompression: 0
|
||||||
|
m_AllowsAlphaSplitting: 0
|
||||||
|
m_Overridden: 1
|
||||||
|
m_AndroidETC2FallbackOverride: 0
|
||||||
|
m_ForceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
packingSettings:
|
packingSettings:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
padding: 2
|
padding: 2
|
||||||
@@ -50,6 +73,19 @@ SpriteAtlasAsset:
|
|||||||
- {fileID: 21300000, guid: d623a2b7e069a4c4592d3da48f476189, type: 3}
|
- {fileID: 21300000, guid: d623a2b7e069a4c4592d3da48f476189, type: 3}
|
||||||
- {fileID: 21300000, guid: 57e4117f4cd6ae54284898652e70d553, type: 3}
|
- {fileID: 21300000, guid: 57e4117f4cd6ae54284898652e70d553, type: 3}
|
||||||
bindAsDefault: 1
|
bindAsDefault: 1
|
||||||
isAtlasV2: 1
|
isAtlasV2: 0
|
||||||
cachedData: {fileID: 0}
|
cachedData: {fileID: 0}
|
||||||
|
m_MasterAtlas: {fileID: 0}
|
||||||
|
m_PackedSprites:
|
||||||
|
- {fileID: 21300000, guid: 2761fc23b4aa7e34187ac5ffbc3fad9b, type: 3}
|
||||||
|
- {fileID: 21300000, guid: f9a06e163014f4f46b14f4499d3e7240, type: 3}
|
||||||
|
- {fileID: 21300000, guid: d623a2b7e069a4c4592d3da48f476189, type: 3}
|
||||||
|
- {fileID: 21300000, guid: 57e4117f4cd6ae54284898652e70d553, type: 3}
|
||||||
|
m_PackedSpriteNamesToIndex:
|
||||||
|
- red_button
|
||||||
|
- blue_button
|
||||||
|
- white_background
|
||||||
|
- white_button
|
||||||
|
m_RenderDataMap: {}
|
||||||
|
m_Tag: UIRaw_Atlas_Common
|
||||||
m_IsVariant: 0
|
m_IsVariant: 0
|
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c91b064c2cd7a34448ae0d6d7ee58e7f
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 4343727234628468602
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
@@ -1,7 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: b9eaf6bdacd0683468b1dd697e3d2bce
|
|
||||||
SpriteAtlasImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
@@ -7,6 +7,8 @@ using UnityEngine;
|
|||||||
using UnityEngine.U2D;
|
using UnityEngine.U2D;
|
||||||
using Object = UnityEngine.Object;
|
using Object = UnityEngine.Object;
|
||||||
|
|
||||||
|
namespace GameFramework.Editor
|
||||||
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 图集导入管线。
|
/// 图集导入管线。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -41,16 +43,15 @@ public static class EditorSpriteSaveInfo
|
|||||||
private const string NormalAtlasDir = "Assets/AssetArt/Atlas";
|
private const string NormalAtlasDir = "Assets/AssetArt/Atlas";
|
||||||
private const string UISpritePath = "Assets/AssetRaw/UIRaw";
|
private const string UISpritePath = "Assets/AssetRaw/UIRaw";
|
||||||
private const string UIAtlasPath = "Assets/AssetRaw/UIRaw/Atlas";
|
private const string UIAtlasPath = "Assets/AssetRaw/UIRaw/Atlas";
|
||||||
private const string UIRawPath = "Assets/AssetRaw/UIRaw/UIRaw";
|
private static readonly List<string> _dirtyAtlasList = new List<string>();
|
||||||
private static List<string> m_dirtyAtlasList = new List<string>();
|
private static readonly Dictionary<string, List<string>> _allASprites = new Dictionary<string, List<string>>();
|
||||||
private static Dictionary<string, List<string>> m_allASprites = new Dictionary<string, List<string>>();
|
private static readonly Dictionary<string, string> _uiAtlasMap = new Dictionary<string, string>();
|
||||||
private static Dictionary<string, string> m_uiAtlasMap = new Dictionary<string, string>();
|
private static bool _isInit = false;
|
||||||
private static bool m_inited = false;
|
|
||||||
private static bool m_dirty = false;
|
private static bool m_dirty = false;
|
||||||
|
|
||||||
public static void Init()
|
public static void Init()
|
||||||
{
|
{
|
||||||
if (m_inited)
|
if (_isInit)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -73,16 +74,17 @@ public static class EditorSpriteSaveInfo
|
|||||||
var objects = sa.GetPackables();
|
var objects = sa.GetPackables();
|
||||||
foreach (var o in objects)
|
foreach (var o in objects)
|
||||||
{
|
{
|
||||||
if (!m_allASprites.TryGetValue(atlasName, out var list))
|
if (!_allASprites.TryGetValue(atlasName, out var list))
|
||||||
{
|
{
|
||||||
list = new List<string>();
|
list = new List<string>();
|
||||||
m_allASprites.Add(atlasName, list);
|
_allASprites.Add(atlasName, list);
|
||||||
}
|
}
|
||||||
|
|
||||||
list.Add(AssetDatabase.GetAssetPath(o));
|
list.Add(AssetDatabase.GetAssetPath(o));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
m_inited = true;
|
_isInit = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void CheckDirty()
|
public static void CheckDirty()
|
||||||
@@ -93,15 +95,15 @@ public static class EditorSpriteSaveInfo
|
|||||||
|
|
||||||
AssetDatabase.Refresh();
|
AssetDatabase.Refresh();
|
||||||
float lastProgress = -1;
|
float lastProgress = -1;
|
||||||
for (int i = 0; i < m_dirtyAtlasList.Count; i++)
|
for (int i = 0; i < _dirtyAtlasList.Count; i++)
|
||||||
{
|
{
|
||||||
string atlasName = m_dirtyAtlasList[i];
|
string atlasName = _dirtyAtlasList[i];
|
||||||
Debug.Log("更新图集 : " + atlasName);
|
Debug.Log("更新图集 : " + atlasName);
|
||||||
var curProgress = (float)i / m_dirtyAtlasList.Count;
|
var curProgress = (float)i / _dirtyAtlasList.Count;
|
||||||
if (curProgress > lastProgress + 0.01f)
|
if (curProgress > lastProgress + 0.01f)
|
||||||
{
|
{
|
||||||
lastProgress = curProgress;
|
lastProgress = curProgress;
|
||||||
var progressText = $"当前进度:{i}/{m_dirtyAtlasList.Count} {atlasName}";
|
var progressText = $"当前进度:{i}/{_dirtyAtlasList.Count} {atlasName}";
|
||||||
bool cancel = EditorUtility.DisplayCancelableProgressBar("刷新图集" + atlasName, progressText, curProgress);
|
bool cancel = EditorUtility.DisplayCancelableProgressBar("刷新图集" + atlasName, progressText, curProgress);
|
||||||
if (cancel)
|
if (cancel)
|
||||||
{
|
{
|
||||||
@@ -116,7 +118,7 @@ public static class EditorSpriteSaveInfo
|
|||||||
EditorUtility.ClearProgressBar();
|
EditorUtility.ClearProgressBar();
|
||||||
AssetDatabase.SaveAssets();
|
AssetDatabase.SaveAssets();
|
||||||
AssetDatabase.Refresh();
|
AssetDatabase.Refresh();
|
||||||
m_dirtyAtlasList.Clear();
|
_dirtyAtlasList.Clear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -169,6 +171,7 @@ public static class EditorSpriteSaveInfo
|
|||||||
if (andPlatformSettings.format != TextureImporterFormat.ASTC_6x6)
|
if (andPlatformSettings.format != TextureImporterFormat.ASTC_6x6)
|
||||||
{
|
{
|
||||||
andPlatformSettings.format = TextureImporterFormat.ASTC_6x6;
|
andPlatformSettings.format = TextureImporterFormat.ASTC_6x6;
|
||||||
|
andPlatformSettings.compressionQuality = 50;
|
||||||
ti.SetPlatformTextureSettings(andPlatformSettings);
|
ti.SetPlatformTextureSettings(andPlatformSettings);
|
||||||
modify = true;
|
modify = true;
|
||||||
}
|
}
|
||||||
@@ -188,6 +191,22 @@ public static class EditorSpriteSaveInfo
|
|||||||
ti.SetPlatformTextureSettings(iosPlatformSettings);
|
ti.SetPlatformTextureSettings(iosPlatformSettings);
|
||||||
modify = true;
|
modify = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//调整WebGL格式
|
||||||
|
var webglSettings = ti.GetPlatformTextureSettings("WebGL");
|
||||||
|
if (!webglSettings.overridden)
|
||||||
|
{
|
||||||
|
webglSettings.overridden = true;
|
||||||
|
modify = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (webglSettings.format != TextureImporterFormat.ASTC_6x6)
|
||||||
|
{
|
||||||
|
webglSettings.format = TextureImporterFormat.ASTC_6x6;
|
||||||
|
webglSettings.compressionQuality = 50;
|
||||||
|
ti.SetPlatformTextureSettings(webglSettings);
|
||||||
|
modify = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -215,7 +234,7 @@ public static class EditorSpriteSaveInfo
|
|||||||
|
|
||||||
public static string GetSpritePath(string assetPath)
|
public static string GetSpritePath(string assetPath)
|
||||||
{
|
{
|
||||||
string path = assetPath.Substring(0, assetPath.LastIndexOf("."));
|
string path = assetPath.Substring(0, assetPath.LastIndexOf(".", StringComparison.Ordinal));
|
||||||
path = path.Replace("Assets/AssetRaw/", "");
|
path = path.Replace("Assets/AssetRaw/", "");
|
||||||
return path;
|
return path;
|
||||||
}
|
}
|
||||||
@@ -262,15 +281,15 @@ public static class EditorSpriteSaveInfo
|
|||||||
|
|
||||||
var spriteName = Path.GetFileNameWithoutExtension(assetPath);
|
var spriteName = Path.GetFileNameWithoutExtension(assetPath);
|
||||||
var spritePath = GetSpritePath(assetPath);
|
var spritePath = GetSpritePath(assetPath);
|
||||||
if (!m_uiAtlasMap.TryGetValue(spriteName, out string oldAssetPath) || spritePath == oldAssetPath)
|
if (!_uiAtlasMap.TryGetValue(spriteName, out string oldAssetPath) || spritePath == oldAssetPath)
|
||||||
{
|
{
|
||||||
m_uiAtlasMap[spriteName] = spritePath;
|
_uiAtlasMap[spriteName] = spritePath;
|
||||||
m_dirty = true;
|
m_dirty = true;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Debug.LogError($"有重名的图片:{spriteName}\n旧图集:{oldAssetPath}\n新图集:{spritePath} ");
|
Debug.LogError($"有重名的图片:{spriteName}\n旧图集:{oldAssetPath}\n新图集:{spritePath} ");
|
||||||
m_uiAtlasMap[spriteName] = spritePath;
|
_uiAtlasMap[spriteName] = spritePath;
|
||||||
m_dirty = true;
|
m_dirty = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -288,19 +307,19 @@ public static class EditorSpriteSaveInfo
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
List<string> ret;
|
List<string> ret;
|
||||||
if (!m_allASprites.TryGetValue(atlasName, out ret))
|
if (!_allASprites.TryGetValue(atlasName, out ret))
|
||||||
{
|
{
|
||||||
ret = new List<string>();
|
ret = new List<string>();
|
||||||
m_allASprites.Add(atlasName, ret);
|
_allASprites.Add(atlasName, ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ret.Contains(assetPath))
|
if (!ret.Contains(assetPath))
|
||||||
{
|
{
|
||||||
ret.Add(assetPath);
|
ret.Add(assetPath);
|
||||||
m_dirty = true;
|
m_dirty = true;
|
||||||
if (!m_dirtyAtlasList.Contains(atlasName))
|
if (!_dirtyAtlasList.Contains(atlasName))
|
||||||
{
|
{
|
||||||
m_dirtyAtlasList.Add(atlasName);
|
_dirtyAtlasList.Add(atlasName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -320,7 +339,7 @@ public static class EditorSpriteSaveInfo
|
|||||||
|
|
||||||
Init();
|
Init();
|
||||||
string atlasName = GetPackageTag(assetPath);
|
string atlasName = GetPackageTag(assetPath);
|
||||||
if (!m_allASprites.TryGetValue(atlasName, out var ret))
|
if (!_allASprites.TryGetValue(atlasName, out var ret))
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -334,18 +353,18 @@ public static class EditorSpriteSaveInfo
|
|||||||
if (assetPath.StartsWith(UISpritePath))
|
if (assetPath.StartsWith(UISpritePath))
|
||||||
{
|
{
|
||||||
var spriteName = Path.GetFileNameWithoutExtension(assetPath);
|
var spriteName = Path.GetFileNameWithoutExtension(assetPath);
|
||||||
if (m_uiAtlasMap.ContainsKey(spriteName))
|
if (_uiAtlasMap.ContainsKey(spriteName))
|
||||||
{
|
{
|
||||||
m_uiAtlasMap.Remove(spriteName);
|
_uiAtlasMap.Remove(spriteName);
|
||||||
m_dirty = true;
|
m_dirty = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ret.Remove(assetPath);
|
ret.Remove(assetPath);
|
||||||
m_dirty = true;
|
m_dirty = true;
|
||||||
if (!m_dirtyAtlasList.Contains(atlasName))
|
if (!_dirtyAtlasList.Contains(atlasName))
|
||||||
{
|
{
|
||||||
m_dirtyAtlasList.Add(atlasName);
|
_dirtyAtlasList.Add(atlasName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -354,7 +373,7 @@ public static class EditorSpriteSaveInfo
|
|||||||
public static void SaveAtlas(string atlasName, bool isUI)
|
public static void SaveAtlas(string atlasName, bool isUI)
|
||||||
{
|
{
|
||||||
List<Object> spriteList = new List<Object>();
|
List<Object> spriteList = new List<Object>();
|
||||||
if (m_allASprites.TryGetValue(atlasName, out var list))
|
if (_allASprites.TryGetValue(atlasName, out var list))
|
||||||
{
|
{
|
||||||
list.Sort(StringComparer.Ordinal);
|
list.Sort(StringComparer.Ordinal);
|
||||||
|
|
||||||
@@ -368,8 +387,7 @@ public static class EditorSpriteSaveInfo
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var pathv2 = $"{NormalAtlasDir}/{atlasName}.spriteatlasv2";
|
var path = $"{NormalAtlasDir}/{atlasName}.spriteatlas";
|
||||||
var path = $"{NormalAtlasDir}/{atlasName}.asset";
|
|
||||||
|
|
||||||
if (spriteList.Count == 0)
|
if (spriteList.Count == 0)
|
||||||
{
|
{
|
||||||
@@ -377,15 +395,12 @@ public static class EditorSpriteSaveInfo
|
|||||||
{
|
{
|
||||||
AssetDatabase.DeleteAsset(path);
|
AssetDatabase.DeleteAsset(path);
|
||||||
}
|
}
|
||||||
if (File.Exists(pathv2))
|
|
||||||
{
|
|
||||||
AssetDatabase.DeleteAsset(pathv2);
|
|
||||||
}
|
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var atlas = new SpriteAtlasAsset();
|
var atlas = new SpriteAtlas();
|
||||||
|
// var atlas = new SpriteAtlasAsset();
|
||||||
var setting = new SpriteAtlasPackingSettings
|
var setting = new SpriteAtlasPackingSettings
|
||||||
{
|
{
|
||||||
blockOffset = 1,
|
blockOffset = 1,
|
||||||
@@ -407,29 +422,34 @@ public static class EditorSpriteSaveInfo
|
|||||||
if (!iphonePlatformSetting.overridden)
|
if (!iphonePlatformSetting.overridden)
|
||||||
{
|
{
|
||||||
iphonePlatformSetting.overridden = true;
|
iphonePlatformSetting.overridden = true;
|
||||||
iphonePlatformSetting.format = isOpaque ? TextureImporterFormat.ASTC_5x5 : TextureImporterFormat.ASTC_5x5;
|
iphonePlatformSetting.format = TextureImporterFormat.ASTC_5x5;
|
||||||
iphonePlatformSetting.compressionQuality = 100;
|
iphonePlatformSetting.compressionQuality = 100;
|
||||||
atlas.SetPlatformSettings(iphonePlatformSetting);
|
atlas.SetPlatformSettings(iphonePlatformSetting);
|
||||||
}
|
}
|
||||||
|
|
||||||
var androidPlatformSetting = atlas.GetPlatformSettings("Android");
|
var androidPlatformSetting = atlas.GetPlatformSettings("Android");
|
||||||
if (isOpaque && !androidPlatformSetting.overridden)
|
if (!androidPlatformSetting.overridden)
|
||||||
{
|
{
|
||||||
androidPlatformSetting.overridden = true;
|
androidPlatformSetting.overridden = true;
|
||||||
androidPlatformSetting.format = TextureImporterFormat.ETC_RGB4;
|
androidPlatformSetting.format = TextureImporterFormat.ASTC_6x6;
|
||||||
androidPlatformSetting.compressionQuality = 100;
|
androidPlatformSetting.compressionQuality = 100;
|
||||||
atlas.SetPlatformSettings(androidPlatformSetting);
|
atlas.SetPlatformSettings(androidPlatformSetting);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var webglSettings = atlas.GetPlatformSettings("WebGL");
|
||||||
|
if (!webglSettings.overridden)
|
||||||
|
{
|
||||||
|
webglSettings.overridden = true;
|
||||||
|
webglSettings.format = TextureImporterFormat.ASTC_6x6;
|
||||||
|
webglSettings.compressionQuality = 50;
|
||||||
|
atlas.SetPlatformSettings(webglSettings);
|
||||||
|
}
|
||||||
|
|
||||||
atlas.SetPackingSettings(setting);
|
atlas.SetPackingSettings(setting);
|
||||||
atlas.Add(spriteList.ToArray());
|
atlas.Add(spriteList.ToArray());
|
||||||
|
|
||||||
AssetDatabase.CreateAsset(atlas, path);
|
AssetDatabase.CreateAsset(atlas, path);
|
||||||
if (File.Exists(pathv2))
|
AssetDatabase.SaveAssets();
|
||||||
{
|
|
||||||
AssetDatabase.DeleteAsset(pathv2);
|
|
||||||
}
|
|
||||||
File.Move(path, pathv2);
|
|
||||||
AssetDatabase.Refresh();
|
AssetDatabase.Refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -437,15 +457,15 @@ public static class EditorSpriteSaveInfo
|
|||||||
|
|
||||||
#region 重新生成图集
|
#region 重新生成图集
|
||||||
|
|
||||||
private static Dictionary<string, List<string>> m_tempAllASprites = new Dictionary<string, List<string>>();
|
private static readonly Dictionary<string, List<string>> m_tempAllASprites = new Dictionary<string, List<string>>();
|
||||||
|
|
||||||
[MenuItem("TEngine/图集/重新生成UI图集")]
|
[MenuItem("TEngine/Atlas/重新生成UI图集", false, 90)]
|
||||||
static void ForceGenAtlas()
|
static void ForceGenAtlas()
|
||||||
{
|
{
|
||||||
Init();
|
Init();
|
||||||
List<string> needSaveAtlas = new List<string>();
|
List<string> needSaveAtlas = new List<string>();
|
||||||
m_tempAllASprites.Clear();
|
m_tempAllASprites.Clear();
|
||||||
m_allASprites.Clear();
|
_allASprites.Clear();
|
||||||
var findAssets = AssetDatabase.FindAssets("t:sprite", new[] { UIAtlasPath });
|
var findAssets = AssetDatabase.FindAssets("t:sprite", new[] { UIAtlasPath });
|
||||||
foreach (var findAsset in findAssets)
|
foreach (var findAsset in findAssets)
|
||||||
{
|
{
|
||||||
@@ -471,7 +491,7 @@ public static class EditorSpriteSaveInfo
|
|||||||
var atlasName = iter.Current.Key;
|
var atlasName = iter.Current.Key;
|
||||||
var newSpritesList = iter.Current.Value;
|
var newSpritesList = iter.Current.Value;
|
||||||
|
|
||||||
if (m_allASprites.TryGetValue(atlasName, out var existSprites))
|
if (_allASprites.TryGetValue(atlasName, out var existSprites))
|
||||||
{
|
{
|
||||||
if (existSprites.Count != newSpritesList.Count)
|
if (existSprites.Count != newSpritesList.Count)
|
||||||
{
|
{
|
||||||
@@ -500,7 +520,7 @@ public static class EditorSpriteSaveInfo
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
needSave = true;
|
needSave = true;
|
||||||
m_allASprites.Add(atlasName, new List<string>(newSpritesList));
|
_allASprites.Add(atlasName, new List<string>(newSpritesList));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (needSave && !needSaveAtlas.Contains(atlasName))
|
if (needSave && !needSaveAtlas.Contains(atlasName))
|
||||||
@@ -525,3 +545,4 @@ public static class EditorSpriteSaveInfo
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user