[GUI] Fix sprite hashes when alpha mask is disabled

This commit is contained in:
VaDiM
2026-08-08 11:54:43 +03:00
parent 4f62ea1ba7
commit b31ad421f4
3 changed files with 5 additions and 5 deletions
+1 -1
View File
@@ -86,7 +86,7 @@ namespace AssetStudioCLI
var keepSpriteSize = CLIOptions.o_spriteCroppingMode.Value == SpriteCroppingMode.SpriteRect;
var converter = new SpriteConverter((Sprite)item.Asset, keepSpriteSize);
if (CLIOptions.o_filenameFormat.Value == FilenameFormat.AssetName_Hash)
item.Hash = converter.GetSpriteHash();
item.Hash = converter.GetSpriteHash(maskMode: SpriteMaskMode.On);
if (!TryExportFile(exportPath, item, $".{type}", out var exportFullPath))
return false;
+2 -2
View File
@@ -82,13 +82,13 @@ namespace AssetStudioGUI
{
debugLog = "";
var type = Properties.Settings.Default.convertType;
var spriteMaskMode = Properties.Settings.Default.exportSpriteWithMask ? SpriteMaskMode.On : SpriteMaskMode.Off;
var converter = new SpriteConverter((Sprite)item.Asset, Properties.Settings.Default.keepSpriteSize);
if (Properties.Settings.Default.filenameFormat == 3) //asset name@hash
item.Hash = converter.GetSpriteHash();
item.Hash = converter.GetSpriteHash(maskMode: spriteMaskMode);
if (!TryExportFile(exportPath, item, $".{type}", out var exportFullPath))
return false;
var spriteMaskMode = Properties.Settings.Default.exportSpriteWithMask ? SpriteMaskMode.On : SpriteMaskMode.Off;
if (converter.TryConvertToImage(out var image, maskMode: spriteMaskMode))
{
using (image)
+2 -2
View File
@@ -293,7 +293,7 @@ namespace AssetStudio
}
}
public ulong GetSpriteHash()
public ulong GetSpriteHash(SpriteMaskMode maskMode)
{
ulong spriteHash = 0;
if (m_Texture2D == null)
@@ -301,7 +301,7 @@ namespace AssetStudio
spriteHash = m_Texture2D.GetImageDataHash();
if (m_AlphaTexture2D != null)
if (maskMode != SpriteMaskMode.Off && m_AlphaTexture2D != null)
{
spriteHash ^= m_AlphaTexture2D.GetImageDataHash();
}