Imrpove support for Unity 6.6+

This commit is contained in:
VaDiM
2026-07-26 10:11:38 +03:00
parent c15093f848
commit 9f91ea667c
6 changed files with 42 additions and 1 deletions
+3
View File
@@ -728,6 +728,9 @@ namespace AssetStudio
case ClassIDType.PlayerSettings:
obj = new PlayerSettings(objectReader);
break;
case ClassIDType.BuildProfilePlayerSettings: //from 6000.7
obj = new BuildProfilePlayerSettings(objectReader);
break;
case ClassIDType.PreloadData when objectReader.version >= (2, 5):
obj = new PreloadData(objectReader);
break;
+2
View File
@@ -332,6 +332,7 @@ namespace AssetStudio
BuildInstructionImporter = 403037117,
EditorProjectAccess = 426301858,
PrefabImporter = 468431735,
WebGPUDeviceFilterLists = 475525288,
TestObjectWithSerializedArray = 478637458,
TestObjectWithSerializedAnimationCurve = 478637459,
TilemapRenderer = 483693784,
@@ -370,6 +371,7 @@ namespace AssetStudio
PropertyModificationsTargetTestObject = 1111377672,
ReferencesArtifactGenerator = 1114811875,
RenderAs2D = 1120581460,
BuildProfilePlayerSettings = 1138963649,
BlockShaderSourceArtifact = 1149764431,
AssemblyDefinitionAsset = 1152215463,
SceneVisibilityState = 1154873562,
@@ -0,0 +1,24 @@
namespace AssetStudio
{
public sealed class BuildProfilePlayerSettings : NamedObject
{
public string companyName;
public string productName;
public BuildProfilePlayerSettings(ObjectReader reader) : base(reader)
{
var productGUID = reader.Position += 16;
var AndroidProfiler = reader.ReadBoolean();
var AndroidFilterTouchesWhenObscured = reader.ReadBoolean();
var AndroidEnableSustainedPerformanceMode = reader.ReadBoolean();
reader.AlignStream();
var defaultScreenOrientation = reader.ReadInt32();
var targetDevice = reader.ReadInt32();
var useOnDemandResources = reader.ReadBoolean();
reader.AlignStream();
var accelerometerFrequency = reader.ReadInt32();
companyName = reader.ReadAlignedString();
productName = reader.ReadAlignedString();
}
}
}
+8 -1
View File
@@ -769,7 +769,7 @@ namespace AssetStudio
}
}
if (version >= (2, 5)) //2.5 and up
if (version.IsInRange((2, 5), (6000, 6))) //2.5 - 6000.6 down
{
int m_MeshUsageFlags = reader.ReadInt32();
}
@@ -779,6 +779,13 @@ namespace AssetStudio
int m_CookingOptions = reader.ReadInt32();
}
if (version >= (6000, 6)) //6000.6 and up
{
var m_PreBakeConvexCollisionMesh = reader.ReadBoolean();
var m_PreBakeTriangleCollisionMesh = reader.ReadBoolean();
reader.AlignStream();
}
if (version >= 5) //5.0 and up
{
var m_BakedConvexCollisionMeshSize = reader.ReadInt32();
+1
View File
@@ -119,6 +119,7 @@ namespace AssetStudio
{1188, "fixed_array"},
{1200, "EntityId"},
{1209, "LoadableObjectId"},
{1226, "LoadableSceneId"},
};
}
}
+4
View File
@@ -326,6 +326,10 @@ namespace AssetStudioGUI
case PlayerSettings m_PlayerSettings:
productName = m_PlayerSettings.productName;
break;
case BuildProfilePlayerSettings m_BuildProfilePlayerSettings:
assetItem.Text = m_BuildProfilePlayerSettings.m_Name;
productName = string.IsNullOrEmpty(m_BuildProfilePlayerSettings.productName) ? productName : m_BuildProfilePlayerSettings.productName;
break;
case AssetBundle m_AssetBundle:
var isStreamedSceneAssetBundle = m_AssetBundle.m_IsStreamedSceneAssetBundle;
if (!isStreamedSceneAssetBundle)