mirror of
https://github.com/aelurum/AssetStudio.git
synced 2025-07-15 11:04:16 -04:00
fixed PlayerSettings in unity 2017.1
split code improve read struct
This commit is contained in:
@ -39,7 +39,7 @@ namespace Unity_Studio
|
||||
if ((sourceFile.version[0] == 5 && sourceFile.version[1] < 1) || (sourceFile.version[0] == 4 && sourceFile.version[1] == 6 && sourceFile.version[2] >= 3))
|
||||
{ int targetIOSGraphics = a_Stream.ReadInt32(); }
|
||||
|
||||
if (sourceFile.version[0] == 5 && (sourceFile.version[1] > 2 || (sourceFile.version[1] == 2 && sourceFile.version[2] >= 1)))
|
||||
if (sourceFile.version[0] >= 5 || sourceFile.version[0] == 5 && (sourceFile.version[1] > 2 || (sourceFile.version[1] == 2 && sourceFile.version[2] >= 1)))
|
||||
{ bool useOnDemandResources = a_Stream.ReadBoolean(); a_Stream.AlignStream(4); }
|
||||
|
||||
if (sourceFile.version[0] < 5 || (sourceFile.version[0] == 5 && sourceFile.version[1] < 3))
|
||||
|
@ -112,6 +112,8 @@ namespace Unity_Studio
|
||||
return decompressedBlob;
|
||||
}
|
||||
var align = (member.Flag & 0x4000) != 0;
|
||||
if (member.alignBefore)
|
||||
a_Stream.AlignStream(4);
|
||||
if (varTypeStr == "SInt8")//sbyte
|
||||
{
|
||||
a_Stream.ReadSByte();
|
||||
@ -132,7 +134,7 @@ namespace Unity_Studio
|
||||
{
|
||||
a_Stream.ReadInt32();
|
||||
}
|
||||
else if (varTypeStr == "UInt32" || varTypeStr == "unsigned int")//UInt32
|
||||
else if (varTypeStr == "UInt32" || varTypeStr == "unsigned int" || varTypeStr == "Type*")//UInt32
|
||||
{
|
||||
a_Stream.ReadUInt32();
|
||||
}
|
||||
@ -166,7 +168,7 @@ namespace Unity_Studio
|
||||
if ((members[i - 1].Flag & 0x4000) != 0)
|
||||
align = true;
|
||||
var size = a_Stream.ReadInt32();
|
||||
var array = AssetPreloadData.ReadArray(members, level, i);
|
||||
var array = ClassStructHelper.ReadArray(members, level, i);
|
||||
for (int j = 0; j < size; j++)
|
||||
{
|
||||
ReadSerializedShader(array, a_Stream);
|
||||
@ -175,7 +177,11 @@ namespace Unity_Studio
|
||||
}
|
||||
else
|
||||
{
|
||||
align = false;
|
||||
if (align)
|
||||
{
|
||||
align = false;
|
||||
ClassStructHelper.SetAlignBefore(members, level, i + 1);
|
||||
}
|
||||
}
|
||||
if (align)
|
||||
a_Stream.AlignStream(4);
|
||||
|
Reference in New Issue
Block a user