mirror of
https://github.com/aelurum/AssetStudio.git
synced 2025-05-25 05:40:21 -04:00
Support 2020.2
This commit is contained in:
parent
e1cf36aa3c
commit
32ce032655
@ -174,7 +174,7 @@ namespace AssetStudio
|
|||||||
GetStreams(version);
|
GetStreams(version);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_DataSize = reader.ReadBytes(reader.ReadInt32());
|
m_DataSize = reader.ReadUInt8Array();
|
||||||
reader.AlignStream();
|
reader.AlignStream();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -653,9 +653,9 @@ namespace AssetStudio
|
|||||||
|
|
||||||
if (version[0] >= 5) //5.0 and up
|
if (version[0] >= 5) //5.0 and up
|
||||||
{
|
{
|
||||||
var m_BakedConvexCollisionMesh = reader.ReadBytes(reader.ReadInt32());
|
var m_BakedConvexCollisionMesh = reader.ReadUInt8Array();
|
||||||
reader.AlignStream();
|
reader.AlignStream();
|
||||||
var m_BakedTriangleCollisionMesh = reader.ReadBytes(reader.ReadInt32());
|
var m_BakedTriangleCollisionMesh = reader.ReadUInt8Array();
|
||||||
reader.AlignStream();
|
reader.AlignStream();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ namespace AssetStudio
|
|||||||
var m_Loop = reader.ReadBoolean();
|
var m_Loop = reader.ReadBoolean();
|
||||||
reader.AlignStream();
|
reader.AlignStream();
|
||||||
m_AudioClip = new PPtr<AudioClip>(reader);
|
m_AudioClip = new PPtr<AudioClip>(reader);
|
||||||
m_MovieData = reader.ReadBytes(reader.ReadInt32());
|
m_MovieData = reader.ReadUInt8Array();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,16 @@ using System.Linq;
|
|||||||
|
|
||||||
namespace AssetStudio
|
namespace AssetStudio
|
||||||
{
|
{
|
||||||
|
public class Hash128
|
||||||
|
{
|
||||||
|
public byte[] bytes;
|
||||||
|
|
||||||
|
public Hash128(BinaryReader reader)
|
||||||
|
{
|
||||||
|
bytes = reader.ReadBytes(16);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public class StructParameter
|
public class StructParameter
|
||||||
{
|
{
|
||||||
public MatrixParameter[] m_MatrixParams;
|
public MatrixParameter[] m_MatrixParams;
|
||||||
@ -438,33 +448,33 @@ namespace AssetStudio
|
|||||||
kShaderGpuProgramGLES31AEP = 2,
|
kShaderGpuProgramGLES31AEP = 2,
|
||||||
kShaderGpuProgramGLES31 = 3,
|
kShaderGpuProgramGLES31 = 3,
|
||||||
kShaderGpuProgramGLES3 = 4,
|
kShaderGpuProgramGLES3 = 4,
|
||||||
kShaderGpuProgramGLES = 5,
|
kShaderGpuProgramGLES = 5,
|
||||||
kShaderGpuProgramGLCore32 = 6,
|
kShaderGpuProgramGLCore32 = 6,
|
||||||
kShaderGpuProgramGLCore41 = 7,
|
kShaderGpuProgramGLCore41 = 7,
|
||||||
kShaderGpuProgramGLCore43 = 8,
|
kShaderGpuProgramGLCore43 = 8,
|
||||||
kShaderGpuProgramDX9VertexSM20 = 9,
|
kShaderGpuProgramDX9VertexSM20 = 9,
|
||||||
kShaderGpuProgramDX9VertexSM30 = 10,
|
kShaderGpuProgramDX9VertexSM30 = 10,
|
||||||
kShaderGpuProgramDX9PixelSM20 = 11,
|
kShaderGpuProgramDX9PixelSM20 = 11,
|
||||||
kShaderGpuProgramDX9PixelSM30 = 12,
|
kShaderGpuProgramDX9PixelSM30 = 12,
|
||||||
kShaderGpuProgramDX10Level9Vertex = 13,
|
kShaderGpuProgramDX10Level9Vertex = 13,
|
||||||
kShaderGpuProgramDX10Level9Pixel = 14,
|
kShaderGpuProgramDX10Level9Pixel = 14,
|
||||||
kShaderGpuProgramDX11VertexSM40 = 15,
|
kShaderGpuProgramDX11VertexSM40 = 15,
|
||||||
kShaderGpuProgramDX11VertexSM50 = 16,
|
kShaderGpuProgramDX11VertexSM50 = 16,
|
||||||
kShaderGpuProgramDX11PixelSM40 = 17,
|
kShaderGpuProgramDX11PixelSM40 = 17,
|
||||||
kShaderGpuProgramDX11PixelSM50 = 18,
|
kShaderGpuProgramDX11PixelSM50 = 18,
|
||||||
kShaderGpuProgramDX11GeometrySM40 = 19,
|
kShaderGpuProgramDX11GeometrySM40 = 19,
|
||||||
kShaderGpuProgramDX11GeometrySM50 = 20,
|
kShaderGpuProgramDX11GeometrySM50 = 20,
|
||||||
kShaderGpuProgramDX11HullSM50 = 21,
|
kShaderGpuProgramDX11HullSM50 = 21,
|
||||||
kShaderGpuProgramDX11DomainSM50 = 22,
|
kShaderGpuProgramDX11DomainSM50 = 22,
|
||||||
kShaderGpuProgramMetalVS = 23,
|
kShaderGpuProgramMetalVS = 23,
|
||||||
kShaderGpuProgramMetalFS = 24,
|
kShaderGpuProgramMetalFS = 24,
|
||||||
kShaderGpuProgramSPIRV = 25,
|
kShaderGpuProgramSPIRV = 25,
|
||||||
kShaderGpuProgramConsoleVS = 26,
|
kShaderGpuProgramConsoleVS = 26,
|
||||||
kShaderGpuProgramConsoleFS = 27,
|
kShaderGpuProgramConsoleFS = 27,
|
||||||
kShaderGpuProgramConsoleHS = 28,
|
kShaderGpuProgramConsoleHS = 28,
|
||||||
kShaderGpuProgramConsoleDS = 29,
|
kShaderGpuProgramConsoleDS = 29,
|
||||||
kShaderGpuProgramConsoleGS = 30,
|
kShaderGpuProgramConsoleGS = 30,
|
||||||
kShaderGpuProgramRayTracing = 31,
|
kShaderGpuProgramRayTracing = 31,
|
||||||
};
|
};
|
||||||
|
|
||||||
public class SerializedSubProgram
|
public class SerializedSubProgram
|
||||||
@ -599,6 +609,10 @@ namespace AssetStudio
|
|||||||
|
|
||||||
public class SerializedPass
|
public class SerializedPass
|
||||||
{
|
{
|
||||||
|
public Hash128[] m_EditorDataHash;
|
||||||
|
public byte[] m_Platforms;
|
||||||
|
public ushort[] m_LocalKeywordMask;
|
||||||
|
public ushort[] m_GlobalKeywordMask;
|
||||||
public KeyValuePair<string, int>[] m_NameIndices;
|
public KeyValuePair<string, int>[] m_NameIndices;
|
||||||
public PassType m_Type;
|
public PassType m_Type;
|
||||||
public SerializedShaderState m_State;
|
public SerializedShaderState m_State;
|
||||||
@ -619,6 +633,23 @@ namespace AssetStudio
|
|||||||
{
|
{
|
||||||
var version = reader.version;
|
var version = reader.version;
|
||||||
|
|
||||||
|
if (version[0] > 2020 || (version[0] == 2020 && version[1] >= 2)) //2020.2 and up
|
||||||
|
{
|
||||||
|
int numEditorDataHash = reader.ReadInt32();
|
||||||
|
m_EditorDataHash = new Hash128[numEditorDataHash];
|
||||||
|
for (int i = 0; i < numEditorDataHash; i++)
|
||||||
|
{
|
||||||
|
m_EditorDataHash[i] = new Hash128(reader);
|
||||||
|
}
|
||||||
|
reader.AlignStream();
|
||||||
|
m_Platforms = reader.ReadUInt8Array();
|
||||||
|
reader.AlignStream();
|
||||||
|
m_LocalKeywordMask = reader.ReadUInt16Array();
|
||||||
|
reader.AlignStream();
|
||||||
|
m_GlobalKeywordMask = reader.ReadUInt16Array();
|
||||||
|
reader.AlignStream();
|
||||||
|
}
|
||||||
|
|
||||||
int numIndices = reader.ReadInt32();
|
int numIndices = reader.ReadInt32();
|
||||||
m_NameIndices = new KeyValuePair<string, int>[numIndices];
|
m_NameIndices = new KeyValuePair<string, int>[numIndices];
|
||||||
for (int i = 0; i < numIndices; i++)
|
for (int i = 0; i < numIndices; i++)
|
||||||
@ -793,17 +824,17 @@ namespace AssetStudio
|
|||||||
compressedLengths = reader.ReadUInt32Array();
|
compressedLengths = reader.ReadUInt32Array();
|
||||||
decompressedLengths = reader.ReadUInt32Array();
|
decompressedLengths = reader.ReadUInt32Array();
|
||||||
}
|
}
|
||||||
compressedBlob = reader.ReadBytes(reader.ReadInt32());
|
compressedBlob = reader.ReadUInt8Array();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_Script = reader.ReadBytes(reader.ReadInt32());
|
m_Script = reader.ReadUInt8Array();
|
||||||
reader.AlignStream();
|
reader.AlignStream();
|
||||||
var m_PathName = reader.ReadAlignedString();
|
var m_PathName = reader.ReadAlignedString();
|
||||||
if (version[0] == 5 && version[1] >= 3) //5.3 - 5.4
|
if (version[0] == 5 && version[1] >= 3) //5.3 - 5.4
|
||||||
{
|
{
|
||||||
decompressedSize = reader.ReadUInt32();
|
decompressedSize = reader.ReadUInt32();
|
||||||
m_SubProgramBlob = reader.ReadBytes(reader.ReadInt32());
|
m_SubProgramBlob = reader.ReadUInt8Array();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -124,7 +124,7 @@ namespace AssetStudio
|
|||||||
m_SubMeshes[i] = new SubMesh(reader);
|
m_SubMeshes[i] = new SubMesh(reader);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_IndexBuffer = reader.ReadBytes(reader.ReadInt32());
|
m_IndexBuffer = reader.ReadUInt8Array();
|
||||||
reader.AlignStream();
|
reader.AlignStream();
|
||||||
|
|
||||||
m_VertexData = new VertexData(reader);
|
m_VertexData = new VertexData(reader);
|
||||||
|
@ -13,6 +13,7 @@ namespace AssetStudio
|
|||||||
public Vector4 uvTransform;
|
public Vector4 uvTransform;
|
||||||
public float downscaleMultiplier;
|
public float downscaleMultiplier;
|
||||||
public SpriteSettings settingsRaw;
|
public SpriteSettings settingsRaw;
|
||||||
|
public SecondarySpriteTexture[] secondaryTextures;
|
||||||
|
|
||||||
public SpriteAtlasData(ObjectReader reader)
|
public SpriteAtlasData(ObjectReader reader)
|
||||||
{
|
{
|
||||||
@ -28,6 +29,16 @@ namespace AssetStudio
|
|||||||
uvTransform = reader.ReadVector4();
|
uvTransform = reader.ReadVector4();
|
||||||
downscaleMultiplier = reader.ReadSingle();
|
downscaleMultiplier = reader.ReadSingle();
|
||||||
settingsRaw = new SpriteSettings(reader);
|
settingsRaw = new SpriteSettings(reader);
|
||||||
|
if (version[0] > 2020 || (version[0] == 2020 && version[1] >= 2)) //2020.2 and up
|
||||||
|
{
|
||||||
|
var secondaryTexturesSize = reader.ReadInt32();
|
||||||
|
secondaryTextures = new SecondarySpriteTexture[secondaryTexturesSize];
|
||||||
|
for (int i = 0; i < secondaryTexturesSize; i++)
|
||||||
|
{
|
||||||
|
secondaryTextures[i] = new SecondarySpriteTexture(reader);
|
||||||
|
}
|
||||||
|
reader.AlignStream();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ namespace AssetStudio
|
|||||||
|
|
||||||
public TextAsset(ObjectReader reader) : base(reader)
|
public TextAsset(ObjectReader reader) : base(reader)
|
||||||
{
|
{
|
||||||
m_Script = reader.ReadBytes(reader.ReadInt32());
|
m_Script = reader.ReadUInt8Array();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -13,6 +13,10 @@ namespace AssetStudio
|
|||||||
{
|
{
|
||||||
var m_ForcedFallbackFormat = reader.ReadInt32();
|
var m_ForcedFallbackFormat = reader.ReadInt32();
|
||||||
var m_DownscaleFallback = reader.ReadBoolean();
|
var m_DownscaleFallback = reader.ReadBoolean();
|
||||||
|
if (version[0] > 2020 || (version[0] == 2020 && version[1] >= 2)) //2020.2 and up
|
||||||
|
{
|
||||||
|
var m_IsAlphaChannelOptional = reader.ReadBoolean();
|
||||||
|
}
|
||||||
reader.AlignStream();
|
reader.AlignStream();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -120,6 +120,11 @@ namespace AssetStudio
|
|||||||
{
|
{
|
||||||
var m_ColorSpace = reader.ReadInt32();
|
var m_ColorSpace = reader.ReadInt32();
|
||||||
}
|
}
|
||||||
|
if (version[0] > 2020 || (version[0] == 2020 && version[1] >= 2)) //2020.2 and up
|
||||||
|
{
|
||||||
|
var m_PlatformBlob = reader.ReadUInt8Array();
|
||||||
|
reader.AlignStream();
|
||||||
|
}
|
||||||
var image_data_size = reader.ReadInt32();
|
var image_data_size = reader.ReadInt32();
|
||||||
if (image_data_size == 0 && ((version[0] == 5 && version[1] >= 3) || version[0] > 5))//5.3.0 and up
|
if (image_data_size == 0 && ((version[0] == 5 && version[1] >= 3) || version[0] > 5))//5.3.0 and up
|
||||||
{
|
{
|
||||||
|
@ -102,6 +102,11 @@ namespace AssetStudio
|
|||||||
return ReadArray(reader.ReadBoolean, reader.ReadInt32());
|
return ReadArray(reader.ReadBoolean, reader.ReadInt32());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static byte[] ReadUInt8Array(this BinaryReader reader)
|
||||||
|
{
|
||||||
|
return reader.ReadBytes(reader.ReadInt32());
|
||||||
|
}
|
||||||
|
|
||||||
public static ushort[] ReadUInt16Array(this BinaryReader reader)
|
public static ushort[] ReadUInt16Array(this BinaryReader reader)
|
||||||
{
|
{
|
||||||
return ReadArray(reader.ReadUInt16, reader.ReadInt32());
|
return ReadArray(reader.ReadUInt16, reader.ReadInt32());
|
||||||
|
@ -663,7 +663,7 @@ namespace AssetStudio
|
|||||||
m_LocalKeywords[i] = reader.ReadAlignedString();
|
m_LocalKeywords[i] = reader.ReadAlignedString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
m_ProgramCode = reader.ReadBytes(reader.ReadInt32());
|
m_ProgramCode = reader.ReadUInt8Array();
|
||||||
reader.AlignStream();
|
reader.AlignStream();
|
||||||
|
|
||||||
//TODO
|
//TODO
|
||||||
|
Loading…
Reference in New Issue
Block a user