From 9a602edefcae8819e84f83fba0b4c5a414e77907 Mon Sep 17 00:00:00 2001 From: Andrew Skowronski Date: Thu, 18 Dec 2025 10:07:22 -0500 Subject: [PATCH 1/8] Update version to 1.3 --- UnityDataTool/UnityDataTool.csproj | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/UnityDataTool/UnityDataTool.csproj b/UnityDataTool/UnityDataTool.csproj index 1feecd8..4e6320e 100644 --- a/UnityDataTool/UnityDataTool.csproj +++ b/UnityDataTool/UnityDataTool.csproj @@ -4,10 +4,10 @@ Exe net9.0 latest - 1.2.1 - 1.2.1.0 - 1.2.1.0 - 1.2.1 + 1.3.0 + 1.3.0.0 + 1.3.0.0 + 1.3.0 From 736e718f15da072e2ad21b53d2f2bfd089fae959 Mon Sep 17 00:00:00 2001 From: Andrew Skowronski Date: Fri, 19 Dec 2025 15:39:23 -0500 Subject: [PATCH 2/8] Add MonoScript handler to Analyze command Extracts MonoScript metadata (class name, namespace, assembly name) into monoscripts table This helps find what exact C# classes are referenced for MonoBehaviours and ScriptableObjects script_object_view added to provide convenient view of all MonoBehaviours with their C# type and monoscript_view to show all the MonoScript objects (e.g. all C# types used in the build content) The documentation is updated to show the more precise and simple lookups we can perform now to find MonoBehaviours for a particular class. --- Analyzer/Properties/Resources.Designer.cs | 45 +++++++++++++++++ Analyzer/Properties/Resources.resx | 3 ++ Analyzer/Resources/MonoScript.sql | 34 +++++++++++++ Analyzer/SQLite/Handlers/MonoScriptHandler.cs | 49 +++++++++++++++++++ Analyzer/SQLite/Parsers/Models/BuildLayout.cs | 2 +- .../Writers/SerializedFileSQLiteWriter.cs | 1 + Analyzer/SerializedObjects/MonoScript.cs | 22 +++++++++ Documentation/analyze-examples.md | 44 ++++++++++++----- UnityDataTool.Tests/ExpectedDataGenerator.cs | 22 +++++---- UnityDataTool.Tests/SQLTestHelper.cs | 26 ++++++++++ .../UnityDataToolAssetBundleTests.cs | 34 +++++++++++++ 11 files changed, 258 insertions(+), 24 deletions(-) create mode 100644 Analyzer/Resources/MonoScript.sql create mode 100644 Analyzer/SQLite/Handlers/MonoScriptHandler.cs create mode 100644 Analyzer/SerializedObjects/MonoScript.cs diff --git a/Analyzer/Properties/Resources.Designer.cs b/Analyzer/Properties/Resources.Designer.cs index 0271b92..8fb39a8 100644 --- a/Analyzer/Properties/Resources.Designer.cs +++ b/Analyzer/Properties/Resources.Designer.cs @@ -790,5 +790,50 @@ internal static string Texture2D { return ResourceManager.GetString("Texture2D", resourceCulture); } } + + /// + /// Looks up a localized string similar to CREATE TABLE IF NOT EXISTS monoscripts( + /// id INTEGER, + /// class_name TEXT, + /// namespace TEXT, + /// assembly_name TEXT, + /// PRIMARY KEY (id) + ///); + /// + ///CREATE VIEW monoscript_view AS + ///SELECT + /// o.id, + /// o.object_id, + /// o.asset_bundle, + /// o.serialized_file, + /// m.class_name, + /// m.namespace, + /// m.assembly_name + ///FROM object_view o INNER JOIN monoscripts m ON o.id = m.id; + /// + ///CREATE VIEW script_object_view AS + ///SELECT + /// mb.id, + /// mb.object_id, + /// mb.asset_bundle, + /// mb.serialized_file, + /// mb.name, + /// mb.type, + /// mb.size, + /// mb.pretty_size, + /// ms.class_name, + /// ms.namespace, + /// ms.assembly_name + ///FROM object_view mb + ///INNER JOIN refs r ON mb.id = r.object + ///INNER JOIN monoscript_view ms ON r.referenced_object = ms.id + ///WHERE mb.type = 'MonoBehaviour' AND r.property_type = 'MonoScript'; + ///. + /// + internal static string MonoScript { + get { + return ResourceManager.GetString("MonoScript", resourceCulture); + } + } } } diff --git a/Analyzer/Properties/Resources.resx b/Analyzer/Properties/Resources.resx index bc44646..da823c0 100644 --- a/Analyzer/Properties/Resources.resx +++ b/Analyzer/Properties/Resources.resx @@ -223,4 +223,7 @@ ..\Resources\AddrBuildSchemaDataPairs.sql;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + + ..\Resources\MonoScript.sql;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + diff --git a/Analyzer/Resources/MonoScript.sql b/Analyzer/Resources/MonoScript.sql new file mode 100644 index 0000000..3b0a36b --- /dev/null +++ b/Analyzer/Resources/MonoScript.sql @@ -0,0 +1,34 @@ +CREATE TABLE IF NOT EXISTS monoscripts( + id INTEGER, + class_name TEXT, + namespace TEXT, + assembly_name TEXT, + PRIMARY KEY (id) +); + +CREATE VIEW monoscript_view AS +SELECT + o.id, + o.object_id, + o.asset_bundle, + o.serialized_file, + m.class_name, + m.namespace, + m.assembly_name +FROM object_view o INNER JOIN monoscripts m ON o.id = m.id; + +CREATE VIEW script_object_view AS +SELECT + mb.id, + mb.object_id, + mb.asset_bundle, + mb.serialized_file, + ms.class_name, + ms.namespace, + ms.assembly_name, + mb.name, + mb.size +FROM object_view mb +INNER JOIN refs r ON mb.id = r.object +INNER JOIN monoscript_view ms ON r.referenced_object = ms.id +WHERE mb.type = 'MonoBehaviour' AND r.property_type = 'MonoScript'; diff --git a/Analyzer/SQLite/Handlers/MonoScriptHandler.cs b/Analyzer/SQLite/Handlers/MonoScriptHandler.cs new file mode 100644 index 0000000..6d22587 --- /dev/null +++ b/Analyzer/SQLite/Handlers/MonoScriptHandler.cs @@ -0,0 +1,49 @@ +using System; +using Microsoft.Data.Sqlite; +using UnityDataTools.Analyzer.SerializedObjects; +using UnityDataTools.FileSystem.TypeTreeReaders; + + +namespace UnityDataTools.Analyzer.SQLite.Handlers; + +public class MonoScriptHandler : ISQLiteHandler +{ + SqliteCommand m_InsertCommand; + + public void Init(SqliteConnection db) + { + using var command = db.CreateCommand(); + command.CommandText = Resources.MonoScript; + command.ExecuteNonQuery(); + + m_InsertCommand = db.CreateCommand(); + m_InsertCommand.CommandText = "INSERT INTO monoscripts(id, class_name, namespace, assembly_name) VALUES(@id, @class_name, @namespace, @assembly_name)"; + m_InsertCommand.Parameters.Add("@id", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@class_name", SqliteType.Text); + m_InsertCommand.Parameters.Add("@namespace", SqliteType.Text); + m_InsertCommand.Parameters.Add("@assembly_name", SqliteType.Text); + } + + public void Process(Context ctx, long objectId, RandomAccessReader reader, out string name, out long streamDataSize) + { + var monoScript = MonoScript.Read(reader); + m_InsertCommand.Transaction = ctx.Transaction; + m_InsertCommand.Parameters["@id"].Value = objectId; + m_InsertCommand.Parameters["@class_name"].Value = monoScript.ClassName; + m_InsertCommand.Parameters["@namespace"].Value = monoScript.Namespace; + m_InsertCommand.Parameters["@assembly_name"].Value = monoScript.AssemblyName; + m_InsertCommand.ExecuteNonQuery(); + + name = monoScript.ClassName; + streamDataSize = 0; + } + + public void Finalize(SqliteConnection db) + { + } + + void IDisposable.Dispose() + { + m_InsertCommand?.Dispose(); + } +} diff --git a/Analyzer/SQLite/Parsers/Models/BuildLayout.cs b/Analyzer/SQLite/Parsers/Models/BuildLayout.cs index b18af84..16d7781 100644 --- a/Analyzer/SQLite/Parsers/Models/BuildLayout.cs +++ b/Analyzer/SQLite/Parsers/Models/BuildLayout.cs @@ -126,7 +126,7 @@ public class ReferenceData public AssetObject[] Objects; // Array of object data public ReferenceId[] ReferencingAssets; - // For BuildLayout/File + // For BuildLayout/File public ReferenceId[] Assets; public BundleObjectInfo BundleObjectInfo; // Object with Size property public ReferenceId[] ExternalReferences; diff --git a/Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs b/Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs index fdbda66..63c1c0d 100644 --- a/Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs +++ b/Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs @@ -37,6 +37,7 @@ public class SerializedFileSQLiteWriter : IDisposable { "AnimationClip", new AnimationClipHandler() }, { "AssetBundle", new AssetBundleHandler() }, { "PreloadData", new PreloadDataHandler() }, + { "MonoScript", new MonoScriptHandler() }, }; // serialized files diff --git a/Analyzer/SerializedObjects/MonoScript.cs b/Analyzer/SerializedObjects/MonoScript.cs new file mode 100644 index 0000000..379bd22 --- /dev/null +++ b/Analyzer/SerializedObjects/MonoScript.cs @@ -0,0 +1,22 @@ +using UnityDataTools.FileSystem.TypeTreeReaders; + +namespace UnityDataTools.Analyzer.SerializedObjects; + +public class MonoScript +{ + public string ClassName { get; init; } + public string Namespace { get; init; } + public string AssemblyName { get; init; } + + private MonoScript() { } + + public static MonoScript Read(RandomAccessReader reader) + { + return new MonoScript() + { + ClassName = reader["m_ClassName"].GetValue(), + Namespace = reader["m_Namespace"].GetValue(), + AssemblyName = reader["m_AssemblyName"].GetValue() + }; + } +} diff --git a/Documentation/analyze-examples.md b/Documentation/analyze-examples.md index e3dd6f2..5d69c89 100644 --- a/Documentation/analyze-examples.md +++ b/Documentation/analyze-examples.md @@ -100,41 +100,59 @@ Note: Both MonoBehaviours and ScriptableObjects have the same serialized type "M The previous example shows how to find all MonoBehaviours and ScriptableObjects. But you may want to filter this based on the actual scripting class. This is a bit more involved than the previous examples, so lets first breakdown the approach. -The serialized data for scripting class does not directly sort the class name, instead it stores a reference to a MonoScript. The MonoScript in turn records the assembly, namespace and classname. +The serialized data for scripting class does not directly store the class name, instead it stores a reference to a MonoScript. The MonoScript in turn records the assembly, namespace and classname. This is an example MonoScript from a `UnityDataTool dump` of a Serialized File: ``` ID: -5763254701832525334 (ClassID: 115) MonoScript - m_Name (string) ReferencedUnityObjects + m_Name (string) SpriteSkin m_ExecutionOrder (int) 0 m_PropertiesHash (Hash128) ... - m_ClassName (string) ReferencedUnityObjects - m_Namespace (string) Unity.Scenes - m_AssemblyName (string) Unity.Scenes + m_ClassName (string) SpriteSkin + m_Namespace (string) UnityEngine.U2D.Animation + m_AssemblyName (string) Unity.2D.Animation.Runtime ``` -Currently UnityDataTool does not implement custom handling for MonoScript objects, so the ClassName, Namespace and AssemblyName fields are not in the database. However the main object table records the m_Name field of object, and for a MonoScript that should match the m_Classname. For the common case, where the class name is itself unique in a project, it is possible to use the name field as the way to identify instances of the script. - -For example to list all distinct class names in the build you can run this query +UnityDataTool extracts MonoScript information into the `monoscripts` table and `monoscript_view`, which provide the class name, namespace, and assembly name for each script. This makes it easy to list all scripting classes in the build: ``` -SELECT DISTINCT name FROM object_view WHERE type = 'MonoScript'; +SELECT class_name, namespace, assembly_name FROM monoscript_view; ``` The actual scripting objects of that type may be spread all through your AssetBundles (or Player build). To find them we need to make use of the `refs` table, which records the references from each object to other objects. If we find each MonoBehaviour object that references the MonoScript with the desired class name then we have found all instances of that class. -For example, to search for all instances of the class ReferencedUnityObjects we could run this query: +The `script_object_view` provides a convenient way to query MonoBehaviour objects along with their associated script information. This view joins MonoBehaviour objects with their referenced MonoScript, bringing the class_name, namespace, and assembly_name into each row. + +For example, to search for all instances of the class SpriteSkin in the UnityEngine.U2D.Animation namespace, you can simply query: + +``` +SELECT asset_bundle, serialized_file, name, object_id, class_name, namespace, assembly_name +FROM script_object_view +WHERE class_name = 'SpriteSkin' + AND namespace = 'UnityEngine.U2D.Animation'; +``` + +If the class name is unique in your project, you can simplify the query by omitting the namespace filter: + +``` +SELECT asset_bundle, serialized_file, name, object_id, class_name, namespace +FROM script_object_view +WHERE class_name = 'SpriteSkin'; +``` + +Alternatively, you can write the query manually using the underlying tables: ``` SELECT mb.asset_bundle, mb.serialized_file, mb.name, mb.object_id FROM object_view mb INNER JOIN refs r ON mb.id = r.object -INNER JOIN objects ms ON r.referenced_object = ms.id -WHERE mb.type = 'MonoBehaviour' +INNER JOIN monoscript_view ms ON r.referenced_object = ms.id +WHERE mb.type = 'MonoBehaviour' AND r.property_type = 'MonoScript' - AND ms.name = 'ReferencedUnityObjects'; + AND ms.class_name = 'SpriteSkin' + AND ms.namespace = 'UnityEngine.U2D.Animation'; ``` ## Example: Quick summary for individual AssetBundles diff --git a/UnityDataTool.Tests/ExpectedDataGenerator.cs b/UnityDataTool.Tests/ExpectedDataGenerator.cs index b127a3e..77707c2 100644 --- a/UnityDataTool.Tests/ExpectedDataGenerator.cs +++ b/UnityDataTool.Tests/ExpectedDataGenerator.cs @@ -36,12 +36,13 @@ public static void Generate(Context context) using (var cmd = db.CreateCommand()) { cmd.CommandText = - @"SELECT + @"SELECT (SELECT COUNT(*) FROM animation_clips), (SELECT COUNT(*) FROM asset_bundles), (SELECT COUNT(*) FROM assets), (SELECT COUNT(*) FROM audio_clips), (SELECT COUNT(*) FROM meshes), + (SELECT COUNT(*) FROM monoscripts), (SELECT COUNT(*) FROM objects), (SELECT COUNT(*) FROM refs), (SELECT COUNT(*) FROM serialized_files), @@ -61,15 +62,16 @@ public static void Generate(Context context) expectedData.Add("assets_count", reader.GetInt32(2)); expectedData.Add("audio_clips_count", reader.GetInt32(3)); expectedData.Add("meshes_count", reader.GetInt32(4)); - expectedData.Add("objects_count", reader.GetInt32(5)); - expectedData.Add("refs_count", reader.GetInt32(6)); - expectedData.Add("serialized_files_count", reader.GetInt32(7)); - expectedData.Add("shader_subprograms_count", reader.GetInt32(8)); - expectedData.Add("shaders_count", reader.GetInt32(9)); - expectedData.Add("shader_keywords_count", reader.GetInt32(10)); - expectedData.Add("shader_subprogram_keywords_count", reader.GetInt32(11)); - expectedData.Add("textures_count", reader.GetInt32(12)); - expectedData.Add("types_count", reader.GetInt32(13)); + expectedData.Add("monoscripts_count", reader.GetInt32(5)); + expectedData.Add("objects_count", reader.GetInt32(6)); + expectedData.Add("refs_count", reader.GetInt32(7)); + expectedData.Add("serialized_files_count", reader.GetInt32(8)); + expectedData.Add("shader_subprograms_count", reader.GetInt32(9)); + expectedData.Add("shaders_count", reader.GetInt32(10)); + expectedData.Add("shader_keywords_count", reader.GetInt32(11)); + expectedData.Add("shader_subprogram_keywords_count", reader.GetInt32(12)); + expectedData.Add("textures_count", reader.GetInt32(13)); + expectedData.Add("types_count", reader.GetInt32(14)); } var csprojFolder = Directory.GetParent(context.TestDataFolder).Parent.Parent.Parent.FullName; diff --git a/UnityDataTool.Tests/SQLTestHelper.cs b/UnityDataTool.Tests/SQLTestHelper.cs index d26f3dc..3f1c713 100644 --- a/UnityDataTool.Tests/SQLTestHelper.cs +++ b/UnityDataTool.Tests/SQLTestHelper.cs @@ -106,4 +106,30 @@ public static void AssertQueryString(SqliteConnection db, string sql, string exp reader.Read(); Assert.AreEqual(expectedValue, reader.GetString(0), description); } + + /// + /// Asserts that a table exists in the database. + /// + /// The database connection to use. + /// The name of the table to check for. + public static void AssertTableExists(SqliteConnection db, string tableName) + { + using var cmd = db.CreateCommand(); + cmd.CommandText = $"SELECT name FROM sqlite_master WHERE type='table' AND name='{tableName}'"; + using var reader = cmd.ExecuteReader(); + Assert.IsTrue(reader.Read(), $"{tableName} table should exist"); + } + + /// + /// Asserts that a view exists in the database. + /// + /// The database connection to use. + /// The name of the view to check for. + public static void AssertViewExists(SqliteConnection db, string viewName) + { + using var cmd = db.CreateCommand(); + cmd.CommandText = $"SELECT name FROM sqlite_master WHERE type='view' AND name='{viewName}'"; + using var reader = cmd.ExecuteReader(); + Assert.IsTrue(reader.Read(), $"{viewName} view should exist"); + } } diff --git a/UnityDataTool.Tests/UnityDataToolAssetBundleTests.cs b/UnityDataTool.Tests/UnityDataToolAssetBundleTests.cs index 7a6e2ad..b47ae73 100644 --- a/UnityDataTool.Tests/UnityDataToolAssetBundleTests.cs +++ b/UnityDataTool.Tests/UnityDataToolAssetBundleTests.cs @@ -210,6 +210,40 @@ public async Task Analyze_WithOutputFile_DatabaseCorrect( ValidateDatabase(databasePath, true); } + [Test] + public async Task Analyze_MonoScripts_DatabaseContainsExpectedContent() + { + var databasePath = SQLTestHelper.GetDatabasePath(m_TestOutputFolder); + var analyzePath = Path.Combine(Context.UnityDataFolder); + + Assert.AreEqual(0, await Program.Main(new string[] { "analyze", analyzePath })); + + using var db = SQLTestHelper.OpenDatabase(databasePath); + + // Verify MonoScript table and views exist + SQLTestHelper.AssertTableExists(db, "monoscripts"); + SQLTestHelper.AssertViewExists(db, "monoscript_view"); + SQLTestHelper.AssertViewExists(db, "script_object_view"); + + // Verify MonoScript table contains data + SQLTestHelper.AssertQueryInt(db, "SELECT COUNT(*) FROM monoscripts", + 1, + "Unexpected number of MonoScripts"); + + // Verify the specific MonoScript from the example + // Note: Assembly name format changed in Unity 2023.1 from 'Assembly-CSharp.dll' to 'Assembly-CSharp' + SQLTestHelper.AssertQueryInt(db, + "SELECT COUNT(*) FROM monoscript_view WHERE class_name = 'SerializeReferencePolymorphismExample' AND assembly_name LIKE 'Assembly-CSharp%'", + 1, + "Expected to find SerializeReferencePolymorphismExample MonoScript"); + + // Verify script_object_view finds the SerializeReferencePolymorphismExample MonoBehaviour + SQLTestHelper.AssertQueryInt(db, + "SELECT COUNT(*) FROM script_object_view WHERE class_name = 'SerializeReferencePolymorphismExample'", + 1, + "Expected to find exactly one MonoBehaviour instance of SerializeReferencePolymorphismExample"); + } + private void ValidateDatabase(string databasePath, bool withRefs) { using var db = SQLTestHelper.OpenDatabase(databasePath); From 3e97d72f74e096c069b52492a53ab402f0dbb919 Mon Sep 17 00:00:00 2001 From: Andrew Skowronski Date: Sun, 28 Dec 2025 19:18:58 -0500 Subject: [PATCH 3/8] Move analyze command documentation into Documentation --- AGENTS.md | 1 + {UnityDataTool/Commands => Documentation}/analyze.md | 0 {UnityDataTool/Commands => Documentation}/archive.md | 0 {UnityDataTool/Commands => Documentation}/dump.md | 0 {UnityDataTool/Commands => Documentation}/find-refs.md | 0 UnityDataTool/README.md | 8 ++++---- 6 files changed, 5 insertions(+), 4 deletions(-) rename {UnityDataTool/Commands => Documentation}/analyze.md (100%) rename {UnityDataTool/Commands => Documentation}/archive.md (100%) rename {UnityDataTool/Commands => Documentation}/dump.md (100%) rename {UnityDataTool/Commands => Documentation}/find-refs.md (100%) diff --git a/AGENTS.md b/AGENTS.md index 08b8cd6..9159e74 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -123,6 +123,7 @@ UnityDataTool (CLI executable) **Entry Points**: - `UnityDataTool/Program.cs` - CLI using System.CommandLine - `UnityDataTool/Commands/` - Command handlers (Analyze.cs, Dump.cs, Archive.cs, FindReferences.cs) +- `Documentation/` - Command documentation (analyze.md, dump.md, archive.md, find-refs.md) **Core Libraries**: - `UnityFileSystem/UnityFileSystem.cs` - Init(), MountArchive(), OpenSerializedFile() diff --git a/UnityDataTool/Commands/analyze.md b/Documentation/analyze.md similarity index 100% rename from UnityDataTool/Commands/analyze.md rename to Documentation/analyze.md diff --git a/UnityDataTool/Commands/archive.md b/Documentation/archive.md similarity index 100% rename from UnityDataTool/Commands/archive.md rename to Documentation/archive.md diff --git a/UnityDataTool/Commands/dump.md b/Documentation/dump.md similarity index 100% rename from UnityDataTool/Commands/dump.md rename to Documentation/dump.md diff --git a/UnityDataTool/Commands/find-refs.md b/Documentation/find-refs.md similarity index 100% rename from UnityDataTool/Commands/find-refs.md rename to Documentation/find-refs.md diff --git a/UnityDataTool/README.md b/UnityDataTool/README.md index b47c70a..6e3509f 100644 --- a/UnityDataTool/README.md +++ b/UnityDataTool/README.md @@ -6,10 +6,10 @@ A command-line tool for analyzing and inspecting Unity build output—AssetBundl | Command | Description | |---------|-------------| -| [`analyze`](Commands/analyze.md) | Extract data from Unity files into a SQLite database | -| [`dump`](Commands/dump.md) | Convert SerializedFiles to human-readable text | -| [`archive`](Commands/archive.md) | List or extract contents of Unity Archives | -| [`find-refs`](Commands/find-refs.md) | Trace reference chains to objects *(experimental)* | +| [`analyze`](../Documentation/analyze.md) | Extract data from Unity files into a SQLite database | +| [`dump`](../Documentation/dump.md) | Convert SerializedFiles to human-readable text | +| [`archive`](../Documentation/archive.md) | List or extract contents of Unity Archives | +| [`find-refs`](../Documentation/find-refs.md) | Trace reference chains to objects *(experimental)* | --- From 8b3a692f437d4513c06a35666dd13c8cf44bb496 Mon Sep 17 00:00:00 2001 From: Andrew Skowronski Date: Sun, 28 Dec 2025 19:41:03 -0500 Subject: [PATCH 4/8] Centralize docs in Documentation Move README.md content in various subfolders into the main Documentation folder --- AGENTS.md | 2 +- Analyzer/README.md | 203 +---------------------------- Documentation/analyze-examples.md | 4 +- Documentation/analyze.md | 2 +- Documentation/analyzer.md | 204 ++++++++++++++++++++++++++++++ Documentation/dump.md | 2 +- Documentation/find-refs.md | 2 +- Documentation/referencefinder.md | 76 +++++++++++ Documentation/textdumper.md | 60 +++++++++ Documentation/unitydatatool.md | 80 ++++++++++++ README.md | 12 +- ReferenceFinder/README.md | 75 +---------- TextDumper/README.md | 59 +-------- UnityDataTool/README.md | 79 +----------- 14 files changed, 436 insertions(+), 424 deletions(-) create mode 100644 Documentation/analyzer.md create mode 100644 Documentation/referencefinder.md create mode 100644 Documentation/textdumper.md create mode 100644 Documentation/unitydatatool.md diff --git a/AGENTS.md b/AGENTS.md index 9159e74..8fef68c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -208,7 +208,7 @@ The SQLite output uses views extensively to join base `objects` table with type- - `asset_view` - Explicitly assigned assets only - `shader_keyword_ratios` - Keyword variant analysis -See `Analyzer/README.md` and `Documentation/addressables-build-reports.md` for complete database schema documentation. +See `Documentation/analyzer.md` and `Documentation/addressables-build-reports.md` for complete database schema documentation. ### Common Issues diff --git a/Analyzer/README.md b/Analyzer/README.md index 574711b..5d4c2b9 100644 --- a/Analyzer/README.md +++ b/Analyzer/README.md @@ -1,204 +1,3 @@ # Analyzer -The Analyzer is a class library that can be used to analyze the content of Unity data files such -as AssetBundles and SerializedFiles. It iterates through all the serialized objects and uses the -TypeTree to extract information about these objects (e.g. name, size, etc.) - -The most common use of this library is through the [analyze](../UnityDataTool/README.md#analyzeanalyse) -command of the UnityDataTool. This uses the Analyze library to generate a SQLite database. - -Once generated, a tool such as the [DB Browser for SQLite](https://sqlitebrowser.org/), or the command line `sqlite3` tool, can be used to look at the content of the database. - -# Example usage - -See [this topic](../Documentation/analyze-examples.md) for examples of how to use the SQLite output of the UnityDataTool Analyze command. - -# DataBase Reference - -The database provides different views. The views join multiple tables together and often it is not necessary to write your own SQL queries to find the information you want, especially when you are using a visual SQLite tool. - -This section gives an overview of the main views. - -## object_view - -This is the main view where the information about all the objects in the AssetBundles is available. -Its columns are: -* id: a unique id without any meaning outside of the database -* object_id: the Unity object id (unique inside its SerializedFile but not necessarily acros all - AssetBundles) -* asset_bundle: the name of the AssetBundle containing the object (will be null if the source file - was a SerializedFile and not an AssetBundle) -* serialized_file: the name of the SerializedFile containing the object -* type: the type of the object -* name: the name of the object, if it had one -* game_object: the id of the GameObject containing this object, if any (mostly for Components) -* size: the size of the object in bytes (e.g. 3343772) -* pretty_size: the size in an easier to read format (e.g. 3.2 MB) - -## view_breakdown_by_type - -This view lists the total number and size of the objects, aggregated by type. - -## view_potential_duplicates - -This view lists the objects that are possibly included more than once in the AssetBundles. This can -happen when an asset is referenced from multiple AssetBundles but is not assigned to one. In this -case, Unity will include the asset in all the AssetBundles with a reference to it. The -view_potential_duplicates provides the number of instances and the total size of the potentially -duplicated assets. It also lists all the AssetBundles where the asset was found. - -If the skipReferences option is used, there will be a lot of false positives in that view. Otherwise, -it should be very accurate because CRCs are used to determine if objects are identical. - -## asset_view (AssetBundleProcessor) - -This view lists all the assets that have been explicitly assigned to AssetBundles. The dependencies -that were automatically added by Unity at build time won't appear in this view. The columns are the -same as those in the *object_view* with the addition of the *asset_name* that contains the filename -of the asset. - -## asset_dependencies_view (AssetBundleProcessor) - -This view lists the dependencies of all the assets. You can filter by id or asset_name to get all -the dependencies of an asset. Conversely, filtering by dep_id will return all the assets that -depend on this object. This can be useful to figure out why an asset was included in a build. - -## animation_view (AnimationClipProcessor) - -This provides additional information about AnimationClips. The columns are the same as those in -the *object_view*, with the addition of: -* legacy: 1 if it's a legacy animation, 0 otherwise -* events: the number of events - -## audio_clip_view (AudioClipProcessor) - -This provides additional information about AudioClips. The columns are the same as those in -the *object_view*, with the addition of: -* bits_per_sample: number of bits per sample -* frequency: sampling frequency -* channels: number of channels -* load_type: either *Compressed in Memory*, *Decompress on Load* or *Streaming* -* format: compression format - -## mesh_view (MeshProcessor) - -This provides additional information about Meshes. The columns are the same as those in -the *object_view*, with the addition of: -* sub_meshes: the number of sub-meshes -* blend_shapes: the number of blend shapes -* bones: the number of bones -* indices: the number of vertex indices -* vertices: the number of vertices -* compression: 1 if compressed, 0 otherwise -* rw_enabled: 1 if the mesh has the *R/W Enabled* option, 0 otherwise -* vertex_size: number of bytes used by each vertex -* channels: name and type of the vertex channels - -## texture_view (Texture2DProcessor) - -This provides additional information about Texture2Ds. The columns are the same as those in -the *object_view*, with the addition of: -* width/height: texture resolution -* format: compression format -* mip_count: number of mipmaps -* rw_enabled: 1 if the mesh has the *R/W Enabled* option, 0 otherwise - -## shader_view (ShaderProcessor) - -This provides additional information about Shaders. The columns are the same as those in -the *object_view*, with the addition of: -* decompressed_size: the approximate size in bytes that this shader will need at runtime when - loaded -* sub_shaders: the number of sub-shaders -* sub_programs: the number of sub-programs (usually one per shader variant, stage and pass) -* unique_programs: the number of unique program (variants with identical programs will share the - same program in memory) -* keywords: list of all the keywords affecting the shader - -## shader_subprogram_view (ShaderProcessor) - -This view lists all the shader sub-programs and has the same columns as the *shader_view* with the -addition of: -* api: the API of the shader (e.g. DX11, Metal, GLES, etc.) -* pass: the pass number of the sub-program -* pass_name: the pass name, if available -* hw_tier: the hardware tier of the sub-program (as defined in the Graphics settings) -* shader_type: the type of shader (e.g. vertex, fragment, etc.) -* sub_program: the subprogram index for this pass and shader type -* keywords: the shader keywords specific to this sub-program - -## shader_keyword_ratios - -This view can help to determine which shader keywords are causing a large number of variants. To -understand how it works, let's define a "program" as a unique combination of shader, subshader, -hardware tier, pass number, API (DX, Metal, etc.), and shader type (vertex, fragment, etc). - -Each row of the view corresponds to a combination of one program and one of its keywords. The -columns are: - -* shader_id: the shader id -* name: the shader name -* sub_shader: the sub-shader number -* hw_tier: the hardware tier of the sub-program (as defined in the Graphics settings) -* pass: the pass number of the sub-program -* api: the API of the shader (e.g. DX11, Metal, GLES, etc.) -* pass_name: the pass name, if available -* shader_type: the type of shader (e.g. vertex, fragment, etc.) -* total_variants: total number of variants for this program. -* keyword: one of the program's keywords -* variants: number of variants including this keyword. -* ratio: variants/total_variants - -The ratio can be used to determine how a keyword affects the number of variants. When it is equal -to 0.5, it means that it is in half of the variants. Basically, that means that it is not stripped -at all because each of the program's variants has a version with and without that keyword. -Therefore, keywords with a ratio close to 0.5 are good targets for stripping. When the ratio is -close to 0 or 1, it means that the keyword is in almost none or almost all of the variants and -stripping it won't make a big difference. - -## view_breakdowns_shaders (ShaderProcessor) - -This view lists all the shaders aggregated by name. The *instances* column indicates how many time -the shader was found in the data files. It also provides the total size per shader and the list of -AssetBundles in which they were found. - -# Advanced - -## Using the library - -The [AnalyzerTool](./AnalyzerTool.cs) class is the API entry point. The main method is called -Analyze. It is currently hard coded to write using the [SQLiteWriter](./SQLite/SQLiteWriter.cs), -but this approach could be extended to add support for other outputs. - -Calling this method will recursively process the files matching the search pattern in the provided -path. It will add a row in the 'objects' table for each serialized object. This table contain basic -information such as the size and the name of the object (if it has one). - -## Extending the Library - -The extracted information is forwarded to an object implementing the [IWriter](./IWriter.cs) -interface. The library provides the [SQLiteWriter](./SQLite/SQLiteWriter.cs) implementation that -writes the data into a SQLite database. - -The core properties that apply to all Unity Objects are extracted into the `objects` table. -However much of the most useful Analyze functionality comes by virtue of the type-specific information that is extracted for -important types like Meshes, Shaders, Texture2D and AnimationClips. For example, when a Mesh object is encountered in a Serialized -File, then rows are added to both the `objects` table and the `meshes` table. The meshes table contains columns that only apply to Mesh objects, for example the number of vertices, indices, bones, and channels. The `mesh_view` is a view that joins the `objects` table with the `meshes` table, so that you can see all the properties of a Mesh object in one place. - -Each supported Unity object type follows the same pattern: -* A Handler class in the SQLite/Handlers, e.g. [MeshHandler.cs](./SQLite/Handler/MeshHandler.cs). -* The registration of the handler in the m_Handlers dictionary in [SerializedFileSQLiteWriter.cs](./SQLite/Writers/SerializedFileSQLiteWriter.cs). -* SQL statements defining extra tables and views associated with the type, e.g. [Mesh.sql](./SQLite/Resources/Mesh.sql). -* A Reader class that uses RandomAccessReader to read properties from the serialized object, e.g. [Mesh.cs](./SerializedObjects/Mesh.cs). - -It would be possible to extend the Analyze library to add additional columns for the existing types, or by following the same pattern to add additional types. The [dump](../UnityDataTool/README.md#dump) feature of UnityDataTool is a useful way to see the property names and other details of the serialization for a type. Based on that information, code in the Reader class can use the RandomAccessReader to retrieve those properties to bring them into the SQLite database. - -## Supporting Other File Formats - -Another direction of possible extension is to support analyzing additional file formats, beyond Unity SerializedFiles. - -This the approach taken to analyze Addressables Build Layout files, which are JSON files using the format defined in [BuildLayout.cs](./SQLite/Parsers/Models/BuildLayout.cs). - -Support for another file format could be added by deriving an additional class from SQLiteWriter and implementing a class derived from ISQLiteFileParser. Then follow the existing code structure convention to add new Commands (derived from AbstractCommand) and Resource .sql files to establish additional tables in the database. - -An example of another file format that could be useful to support, as the tool evolves, are the yaml [.manifest files](https://docs.unity3d.com/Manual/assetbundles-file-format.html), generated by BuildPipeline.BuildAssetBundles(). +See [Documentation/analyzer.md](../Documentation/analyzer.md) diff --git a/Documentation/analyze-examples.md b/Documentation/analyze-examples.md index 5d69c89..a0a87e9 100644 --- a/Documentation/analyze-examples.md +++ b/Documentation/analyze-examples.md @@ -2,9 +2,9 @@ This topic gives some examples of using the SQLite output of the UnityDataTools Analyze command. -The command line arguments to invoke Analyze are documented [here](../UnityDataTool/README.md#analyzeanalyse). +The command line arguments to invoke Analyze are documented [here](unitydatatool.md#analyzeanalyse). -The definition of the views, and some internal details about how Analyze is implemented, can be found [here](../Analyzer/README.md). +The definition of the views, and some internal details about how Analyze is implemented, can be found [here](analyzer.md). ## Running Queries from the Command line diff --git a/Documentation/analyze.md b/Documentation/analyze.md index 15a6c31..16c4553 100644 --- a/Documentation/analyze.md +++ b/Documentation/analyze.md @@ -60,7 +60,7 @@ The analyze command works with the following types of directories: The analysis creates a SQLite database that can be explored using tools like [DB Browser for SQLite](https://sqlitebrowser.org/) or the command line `sqlite3` tool. -**Refer to the [Analyzer documentation](../../Analyzer/README.md) for the database schema reference and information about extending this command.** +**Refer to the [Analyzer documentation](analyzer.md) for the database schema reference and information about extending this command.** --- diff --git a/Documentation/analyzer.md b/Documentation/analyzer.md new file mode 100644 index 0000000..aa67f4c --- /dev/null +++ b/Documentation/analyzer.md @@ -0,0 +1,204 @@ +# Analyzer + +The Analyzer is a class library that can be used to analyze the content of Unity data files such +as AssetBundles and SerializedFiles. It iterates through all the serialized objects and uses the +TypeTree to extract information about these objects (e.g. name, size, etc.) + +The most common use of this library is through the [analyze](unitydatatool.md#analyzeanalyse) +command of the UnityDataTool. This uses the Analyze library to generate a SQLite database. + +Once generated, a tool such as the [DB Browser for SQLite](https://sqlitebrowser.org/), or the command line `sqlite3` tool, can be used to look at the content of the database. + +# Example usage + +See [this topic](analyze-examples.md) for examples of how to use the SQLite output of the UnityDataTool Analyze command. + +# DataBase Reference + +The database provides different views. The views join multiple tables together and often it is not necessary to write your own SQL queries to find the information you want, especially when you are using a visual SQLite tool. + +This section gives an overview of the main views. + +## object_view + +This is the main view where the information about all the objects in the AssetBundles is available. +Its columns are: +* id: a unique id without any meaning outside of the database +* object_id: the Unity object id (unique inside its SerializedFile but not necessarily acros all + AssetBundles) +* asset_bundle: the name of the AssetBundle containing the object (will be null if the source file + was a SerializedFile and not an AssetBundle) +* serialized_file: the name of the SerializedFile containing the object +* type: the type of the object +* name: the name of the object, if it had one +* game_object: the id of the GameObject containing this object, if any (mostly for Components) +* size: the size of the object in bytes (e.g. 3343772) +* pretty_size: the size in an easier to read format (e.g. 3.2 MB) + +## view_breakdown_by_type + +This view lists the total number and size of the objects, aggregated by type. + +## view_potential_duplicates + +This view lists the objects that are possibly included more than once in the AssetBundles. This can +happen when an asset is referenced from multiple AssetBundles but is not assigned to one. In this +case, Unity will include the asset in all the AssetBundles with a reference to it. The +view_potential_duplicates provides the number of instances and the total size of the potentially +duplicated assets. It also lists all the AssetBundles where the asset was found. + +If the skipReferences option is used, there will be a lot of false positives in that view. Otherwise, +it should be very accurate because CRCs are used to determine if objects are identical. + +## asset_view (AssetBundleProcessor) + +This view lists all the assets that have been explicitly assigned to AssetBundles. The dependencies +that were automatically added by Unity at build time won't appear in this view. The columns are the +same as those in the *object_view* with the addition of the *asset_name* that contains the filename +of the asset. + +## asset_dependencies_view (AssetBundleProcessor) + +This view lists the dependencies of all the assets. You can filter by id or asset_name to get all +the dependencies of an asset. Conversely, filtering by dep_id will return all the assets that +depend on this object. This can be useful to figure out why an asset was included in a build. + +## animation_view (AnimationClipProcessor) + +This provides additional information about AnimationClips. The columns are the same as those in +the *object_view*, with the addition of: +* legacy: 1 if it's a legacy animation, 0 otherwise +* events: the number of events + +## audio_clip_view (AudioClipProcessor) + +This provides additional information about AudioClips. The columns are the same as those in +the *object_view*, with the addition of: +* bits_per_sample: number of bits per sample +* frequency: sampling frequency +* channels: number of channels +* load_type: either *Compressed in Memory*, *Decompress on Load* or *Streaming* +* format: compression format + +## mesh_view (MeshProcessor) + +This provides additional information about Meshes. The columns are the same as those in +the *object_view*, with the addition of: +* sub_meshes: the number of sub-meshes +* blend_shapes: the number of blend shapes +* bones: the number of bones +* indices: the number of vertex indices +* vertices: the number of vertices +* compression: 1 if compressed, 0 otherwise +* rw_enabled: 1 if the mesh has the *R/W Enabled* option, 0 otherwise +* vertex_size: number of bytes used by each vertex +* channels: name and type of the vertex channels + +## texture_view (Texture2DProcessor) + +This provides additional information about Texture2Ds. The columns are the same as those in +the *object_view*, with the addition of: +* width/height: texture resolution +* format: compression format +* mip_count: number of mipmaps +* rw_enabled: 1 if the mesh has the *R/W Enabled* option, 0 otherwise + +## shader_view (ShaderProcessor) + +This provides additional information about Shaders. The columns are the same as those in +the *object_view*, with the addition of: +* decompressed_size: the approximate size in bytes that this shader will need at runtime when + loaded +* sub_shaders: the number of sub-shaders +* sub_programs: the number of sub-programs (usually one per shader variant, stage and pass) +* unique_programs: the number of unique program (variants with identical programs will share the + same program in memory) +* keywords: list of all the keywords affecting the shader + +## shader_subprogram_view (ShaderProcessor) + +This view lists all the shader sub-programs and has the same columns as the *shader_view* with the +addition of: +* api: the API of the shader (e.g. DX11, Metal, GLES, etc.) +* pass: the pass number of the sub-program +* pass_name: the pass name, if available +* hw_tier: the hardware tier of the sub-program (as defined in the Graphics settings) +* shader_type: the type of shader (e.g. vertex, fragment, etc.) +* sub_program: the subprogram index for this pass and shader type +* keywords: the shader keywords specific to this sub-program + +## shader_keyword_ratios + +This view can help to determine which shader keywords are causing a large number of variants. To +understand how it works, let's define a "program" as a unique combination of shader, subshader, +hardware tier, pass number, API (DX, Metal, etc.), and shader type (vertex, fragment, etc). + +Each row of the view corresponds to a combination of one program and one of its keywords. The +columns are: + +* shader_id: the shader id +* name: the shader name +* sub_shader: the sub-shader number +* hw_tier: the hardware tier of the sub-program (as defined in the Graphics settings) +* pass: the pass number of the sub-program +* api: the API of the shader (e.g. DX11, Metal, GLES, etc.) +* pass_name: the pass name, if available +* shader_type: the type of shader (e.g. vertex, fragment, etc.) +* total_variants: total number of variants for this program. +* keyword: one of the program's keywords +* variants: number of variants including this keyword. +* ratio: variants/total_variants + +The ratio can be used to determine how a keyword affects the number of variants. When it is equal +to 0.5, it means that it is in half of the variants. Basically, that means that it is not stripped +at all because each of the program's variants has a version with and without that keyword. +Therefore, keywords with a ratio close to 0.5 are good targets for stripping. When the ratio is +close to 0 or 1, it means that the keyword is in almost none or almost all of the variants and +stripping it won't make a big difference. + +## view_breakdowns_shaders (ShaderProcessor) + +This view lists all the shaders aggregated by name. The *instances* column indicates how many time +the shader was found in the data files. It also provides the total size per shader and the list of +AssetBundles in which they were found. + +# Advanced + +## Using the library + +The [AnalyzerTool](../Analyzer/AnalyzerTool.cs) class is the API entry point. The main method is called +Analyze. It is currently hard coded to write using the [SQLiteWriter](../Analyzer/SQLite/SQLiteWriter.cs), +but this approach could be extended to add support for other outputs. + +Calling this method will recursively process the files matching the search pattern in the provided +path. It will add a row in the 'objects' table for each serialized object. This table contain basic +information such as the size and the name of the object (if it has one). + +## Extending the Library + +The extracted information is forwarded to an object implementing the [IWriter](../Analyzer/IWriter.cs) +interface. The library provides the [SQLiteWriter](../Analyzer/SQLite/SQLiteWriter.cs) implementation that +writes the data into a SQLite database. + +The core properties that apply to all Unity Objects are extracted into the `objects` table. +However much of the most useful Analyze functionality comes by virtue of the type-specific information that is extracted for +important types like Meshes, Shaders, Texture2D and AnimationClips. For example, when a Mesh object is encountered in a Serialized +File, then rows are added to both the `objects` table and the `meshes` table. The meshes table contains columns that only apply to Mesh objects, for example the number of vertices, indices, bones, and channels. The `mesh_view` is a view that joins the `objects` table with the `meshes` table, so that you can see all the properties of a Mesh object in one place. + +Each supported Unity object type follows the same pattern: +* A Handler class in the SQLite/Handlers, e.g. [MeshHandler.cs](../Analyzer/SQLite/Handler/MeshHandler.cs). +* The registration of the handler in the m_Handlers dictionary in [SerializedFileSQLiteWriter.cs](../Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs). +* SQL statements defining extra tables and views associated with the type, e.g. [Mesh.sql](../Analyzer/SQLite/Resources/Mesh.sql). +* A Reader class that uses RandomAccessReader to read properties from the serialized object, e.g. [Mesh.cs](../Analyzer/SerializedObjects/Mesh.cs). + +It would be possible to extend the Analyze library to add additional columns for the existing types, or by following the same pattern to add additional types. The [dump](unitydatatool.md#dump) feature of UnityDataTool is a useful way to see the property names and other details of the serialization for a type. Based on that information, code in the Reader class can use the RandomAccessReader to retrieve those properties to bring them into the SQLite database. + +## Supporting Other File Formats + +Another direction of possible extension is to support analyzing additional file formats, beyond Unity SerializedFiles. + +This the approach taken to analyze Addressables Build Layout files, which are JSON files using the format defined in [BuildLayout.cs](../Analyzer/SQLite/Parsers/Models/BuildLayout.cs). + +Support for another file format could be added by deriving an additional class from SQLiteWriter and implementing a class derived from ISQLiteFileParser. Then follow the existing code structure convention to add new Commands (derived from AbstractCommand) and Resource .sql files to establish additional tables in the database. + +An example of another file format that could be useful to support, as the tool evolves, are the yaml [.manifest files](https://docs.unity3d.com/Manual/assetbundles-file-format.html), generated by BuildPipeline.BuildAssetBundles(). diff --git a/Documentation/dump.md b/Documentation/dump.md index 398775b..d23b7f2 100644 --- a/Documentation/dump.md +++ b/Documentation/dump.md @@ -90,7 +90,7 @@ ID: -8138362113332287275 (ClassID: 135) SphereCollider z float 0 ``` -**Refer to the [TextDumper documentation](../../TextDumper/README.md) for detailed output format explanation.** +**Refer to the [TextDumper documentation](textdumper.md) for detailed output format explanation.** --- diff --git a/Documentation/find-refs.md b/Documentation/find-refs.md index 9f4e8fb..890493f 100644 --- a/Documentation/find-refs.md +++ b/Documentation/find-refs.md @@ -93,5 +93,5 @@ Found 1 reference chain(s). | `[Component of X (id=Y)]` | Shows the GameObject for Components | | `[Script = X]` | Shows the script name for MonoBehaviours | -**Refer to the [ReferenceFinder documentation](../../ReferenceFinder/README.md) for more details.** +**Refer to the [ReferenceFinder documentation](referencefinder.md) for more details.** diff --git a/Documentation/referencefinder.md b/Documentation/referencefinder.md new file mode 100644 index 0000000..9231c32 --- /dev/null +++ b/Documentation/referencefinder.md @@ -0,0 +1,76 @@ +# ReferenceFinder + +The ReferenceFinder is an experimental library that can be used to find reference +chains leading to specific objects. It can be useful to determine why an asset was included into +a build. + +## How to use + +The API consists of a single class called ReferenceFinder. It requires a database that was +previously created by the [Analyzer](analyzer.md) with extractReferences option. It takes +an object id or name as input and will find reference chains originating from a root asset to the +specified object(s). A root asset is an asset that was explicitly added to an AssetBundle at build +time. + +The ReferenceFinder has two public methods named FindReferences, one taking an object id and the +other an object name and type. They both have these additional parameters: +* databasePath (string): path of the source database. +* outputFile (string): output filename. +* findAll (bool): determines if the method should find all reference chains leading to a single + object or if it should stop at the first one. + +## How to interpret the output file + +The content of the output file looks like this: + + Reference chains to + ID: 1234 + Type: Transform + AssetBundle: asset_bundle_name + SerializedFile: CAB-353837edf22eb1c4d651c39d27a233b7 + + Found reference in: + MyPrefab.prefab + (AssetBundle = MyAssetBundle; SerializedFile = CAB-353837edf22eb1c4d651c39d27a233b7) + GameObject (id=1348) MyPrefab + ↓ m_Component.Array[0].component + RectTransform (id=721) [Component of MyPrefab (id=1348)] + ↓ m_Children.Array[9] + RectTransform (id=1285) [Component of MyButton (id=1284)] + ↓ m_GameObject + GameObject (id=1284) MyButton + ↓ m_Component.Array[3].component + MonoBehaviour (id=1288) [Script = Button] [Component of MyButton (id=1284)] + ↓ m_OnClick.m_PersistentCalls.m_Calls.Array[0].m_Target + MonoBehaviour (id=1347) [Script = MyButtonEffect] [Component of MyPrefab (id=1348)] + ↓ effectText + MonoBehaviour (id=688) [Script = TextMeshProUGUI] [Component of MyButtonText (id=588)] + ↓ m_GameObject + GameObject (id=588) MyButtonText + ↓ m_Component.Array[0].component + RectTransform (id=587) [Component of MyButtonText (id=588)] + ↓ m_Father + RectTransform (id=589) [Component of MyButtonImage (id=944)] + ↓ m_Children.Array[10] + Transform (id=1234) [Component of MyButtonEffectLayer (1) (id=938)] + ↓ m_GameObject + GameObject (id=938) MyButtonEffectLayer (1) + ↓ m_Component.Array[0].component + Transform (id=1234) [Component of MyButtonEffectLayer (1) (id=938)] + + Analyzed 266 object(s). + Found 1 reference chain(s). + +For each object matching the id or name and type provided, the output file will provide the +information related to it. In this case, it was a Transform in the AssetBundle named MyAssetBundle. +It will then list all the root objects having at least one reference chain leading to that object. +In this case, there was a prefab named MyPrefab that had a hierarchy of GameObjects where one had a +reference on the Transform. + +For each reference in the chain, the name of the property is provided. For example, we can see that +the first reference in the chain is from the m_Component.Array\[0\].component property of the +MyPrefab GameObject. This is the first item in the array of Components of the GameObject and it +points to a RectTransform. When the referenced object is a Component, the corresponding GameObject +name is also provided (in this case, it's obviously MyPrefab). When MonoBehaviour are encountered, +the name of the corresponding Script is provided too (because MonoBehaviour names are empty for +some reason). The last item in the chain is the object that was provided as input. diff --git a/Documentation/textdumper.md b/Documentation/textdumper.md new file mode 100644 index 0000000..ffb9563 --- /dev/null +++ b/Documentation/textdumper.md @@ -0,0 +1,60 @@ +# TextDumper + +The TextDumper is a class library that can be used to dump the content of a Unity data +file (AssetBundle or SerializedFile) into human-readable yaml-style text file. + +## How to use + +The library consists of a single class called [TextDumperTool](../TextDumper/TextDumperTool.cs). It has a method named Dump and takes four parameters: +* path (string): path of the data file. +* outputPath (string): path where the output files will be created. +* skipLargeArrays (bool): if true, the content of arrays larger than 1KB won't be dumped. +* objectId (long, optional): if specified and not 0, only the object with this signed 64-bit id will be dumped. If 0 (default), all objects are dumped. + +## How to interpret the output files + +There will be one output file per SerializedFile. Depending on the type of the input file, there can +be more than one output file (e.g. AssetBundles are archives that can contain several +SerializedFiles). + +The first lines of the output file looks like this: + + External References + path(1): "Library/unity default resources" GUID: 0000000000000000e000000000000000 Type: 0 + path(2): "Resources/unity_builtin_extra" GUID: 0000000000000000f000000000000000 Type: 0 + path(3): "archive:/CAB-35fce856128a6714740898681ea54bbe/CAB-35fce856128a6714740898681ea54bbe" GUID: 00000000000000000000000000000000 Type: 0 + +This information can be used to dereference PPtrs. A PPtr is a type used by Unity to locate and load +objects in SerializedFiles. It has two fields: +* m_FileID: The file identifier is an index in the External References list above (the number in parenthesis). It will be 0 if the asset is in the same file. +* m_PathID: The object identifier in the file. Each object in a file has a unique 64 identifier, often called a Local File Identifier (LFID). + +The string after the path is the SerializedFile name corresponding to the file identifier in +parenthesis. In the case of AssetBundles this can be the path of a file inside another AssetBundle (e.g. a path starting with "archive:". The GUID and Type are internal data used by Unity. + +The rest of the file will contain an entry similar to this one for each object in the files: + + ID: -8138362113332287275 (ClassID: 135) SphereCollider + m_GameObject PPtr + m_FileID int 0 + m_PathID SInt64 -1473921323670530447 + m_Material PPtr + m_FileID int 0 + m_PathID SInt64 0 + m_IsTrigger bool False + m_Enabled bool True + m_Radius float 0.5 + m_Center Vector3f + x float 0 + y float 0 + z float 0 + +The first line contains the object identifier, the internal ClassID used by Unity, and the type name +corresponding to this ClassID. Note that the object identifier is guaranteed to be unique in this +file only. + +The next lines are the serialized fields of the objects. The first value is the field +name, the second is the type and the last is the value. If there is no value, it means that it is a +sub-object that is dumped on the next lines with a higher indentation level. + +Note: This tool is similar to the binary2text.exe executable that is included with Unity. However the syntax of the output is somewhat different. diff --git a/Documentation/unitydatatool.md b/Documentation/unitydatatool.md new file mode 100644 index 0000000..945eec5 --- /dev/null +++ b/Documentation/unitydatatool.md @@ -0,0 +1,80 @@ +# UnityDataTool + +A command-line tool for analyzing and inspecting Unity build output—AssetBundles, Player builds, Addressables, and more. + +## Commands + +| Command | Description | +|---------|-------------| +| [`analyze`](analyze.md) | Extract data from Unity files into a SQLite database | +| [`dump`](dump.md) | Convert SerializedFiles to human-readable text | +| [`archive`](archive.md) | List or extract contents of Unity Archives | +| [`find-refs`](find-refs.md) | Trace reference chains to objects *(experimental)* | + +--- + +## Quick Start + +```bash +# Show all commands +UnityDataTool --help + +# Analyze AssetBundles into SQLite database +UnityDataTool analyze /path/to/bundles -o database.db + +# Dump a file to text format +UnityDataTool dump /path/to/file.bundle -o /output/path + +# Extract archive contents +UnityDataTool archive extract file.bundle -o contents/ + +# Find reference chains to an object +UnityDataTool find-refs database.db -n "ObjectName" -t "Texture2D" +``` + +Use `--help` with any command for details: `UnityDataTool analyze --help` + +Use `--version` to print the tool version. + + +## Installation + +### Building + +First, build the solution as described in the [main README](../README.md#how-to-build). + +The executable will be at: +``` +UnityDataTool/bin/Release/net9.0/UnityDataTool.exe +``` + +> **Tip:** Add the directory containing `UnityDataTool.exe` to your `PATH` environment variable for easy access. + +### Mac Instructions + +On Mac, publish the project to get an executable: + +**Intel Mac:** +```bash +dotnet publish UnityDataTool -c Release -r osx-x64 -p:PublishSingleFile=true -p:UseAppHost=true +``` + +**Apple Silicon Mac:** +```bash +dotnet publish UnityDataTool -c Release -r osx-arm64 -p:PublishSingleFile=true -p:UseAppHost=true +``` + +If you see a warning about `UnityFileSystemApi.dylib` not being verified, go to **System Preferences → Security & Privacy** and allow the file. + +--- + +## Related Documentation + +| Topic | Description | +|-------|-------------| +| [Analyzer Database Reference](analyzer.md) | SQLite schema, views, and extending the analyzer | +| [TextDumper Output Format](textdumper.md) | Understanding dump output | +| [ReferenceFinder Details](referencefinder.md) | Reference chain output format | +| [Analyze Examples](analyze-examples.md) | Practical database queries | +| [Comparing Builds](comparing-builds.md) | Strategies for build comparison | +| [Unity Content Format](unity-content-format.md) | TypeTrees and file formats | diff --git a/README.md b/README.md index 50a107e..4a20384 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ The UnityDataTool is a command line tool and showcase of the UnityFileSystemApi The main purpose is for analysis of the content of Unity data files, for example AssetBundles and Player content. -The [command line tool](./UnityDataTool/README.md) runs directly on Unity data files, without requiring the Editor to be running. It covers most functionality of the Unity tools WebExtract and binary2text, with better performance. And it adds a lot of additional functionality, for example the ability to create a SQLite database for detailed analysis of build content. See [examples](./Documentation/analyze-examples.md) and [comparing builds](./Documentation/comparing-builds.md) for examples of how to use the command line tool. +The [command line tool](./Documentation/unitydatatool.md) runs directly on Unity data files, without requiring the Editor to be running. It covers most functionality of the Unity tools WebExtract and binary2text, with better performance. And it adds a lot of additional functionality, for example the ability to create a SQLite database for detailed analysis of build content. See [examples](./Documentation/analyze-examples.md) and [comparing builds](./Documentation/comparing-builds.md) for examples of how to use the command line tool. It is designed to scale for large build outputs and has been used to fine-tune big Unity-based games. @@ -15,12 +15,12 @@ The command line tool uses the UnityFileSystemApi library to access the content ## Repository content The repository contains the following items: -* [UnityDataTool](UnityDataTool/README.md): a command-line tool providing access to the Analyzer, TextDumper and other class libraries. -* [Analyzer](Analyzer/README.md): a class library that can be used to extract key information +* [UnityDataTool](Documentation/unitydatatool.md): a command-line tool providing access to the Analyzer, TextDumper and other class libraries. +* [Analyzer](Documentation/analyzer.md): a class library that can be used to extract key information from Unity data files and output it into a SQLite database. -* [TextDumper](TextDumper/README.md): a class library that can be used to dump SerializedFiles into +* [TextDumper](Documentation/textdumper.md): a class library that can be used to dump SerializedFiles into a human-readable format (similar to binary2text). -* [ReferenceFinder](ReferenceFinder/README.md): a class library that can be used to find +* [ReferenceFinder](Documentation/referencefinder.md): a class library that can be used to find reference chains from objects to other objects using a database created by the Analyzer * UnityFileSystem: source code and binaries of a .NET class library exposing the functionalities or the UnityFileSystemApi native library. @@ -61,7 +61,7 @@ The file name is as follows: On Windows, the executable is written to `UnityDataTool\bin\Release\net9.0`. Add this location to your system PATH for convenient access. -See the [command-line tool documentation](./UnityDataTool/README.md) for usage instructions. +See the [command-line tool documentation](./Documentation/unitydatatool.md) for usage instructions. ## Purpose of UnityFileSystemApi diff --git a/ReferenceFinder/README.md b/ReferenceFinder/README.md index ae387bf..64c8191 100644 --- a/ReferenceFinder/README.md +++ b/ReferenceFinder/README.md @@ -1,76 +1,3 @@ # ReferenceFinder -The ReferenceFinder is an experimental library that can be used to find reference -chains leading to specific objects. It can be useful to determine why an asset was included into -a build. - -## How to use - -The API consists of a single class called ReferenceFinder. It requires a database that was -previously created by the [Analyzer](../Analyzer/README.md) with extractReferences option. It takes -an object id or name as input and will find reference chains originating from a root asset to the -specified object(s). A root asset is an asset that was explicitly added to an AssetBundle at build -time. - -The ReferenceFinder has two public methods named FindReferences, one taking an object id and the -other an object name and type. They both have these additional parameters: -* databasePath (string): path of the source database. -* outputFile (string): output filename. -* findAll (bool): determines if the method should find all reference chains leading to a single - object or if it should stop at the first one. - -## How to interpret the output file - -The content of the output file looks like this: - - Reference chains to - ID: 1234 - Type: Transform - AssetBundle: asset_bundle_name - SerializedFile: CAB-353837edf22eb1c4d651c39d27a233b7 - - Found reference in: - MyPrefab.prefab - (AssetBundle = MyAssetBundle; SerializedFile = CAB-353837edf22eb1c4d651c39d27a233b7) - GameObject (id=1348) MyPrefab - ↓ m_Component.Array[0].component - RectTransform (id=721) [Component of MyPrefab (id=1348)] - ↓ m_Children.Array[9] - RectTransform (id=1285) [Component of MyButton (id=1284)] - ↓ m_GameObject - GameObject (id=1284) MyButton - ↓ m_Component.Array[3].component - MonoBehaviour (id=1288) [Script = Button] [Component of MyButton (id=1284)] - ↓ m_OnClick.m_PersistentCalls.m_Calls.Array[0].m_Target - MonoBehaviour (id=1347) [Script = MyButtonEffect] [Component of MyPrefab (id=1348)] - ↓ effectText - MonoBehaviour (id=688) [Script = TextMeshProUGUI] [Component of MyButtonText (id=588)] - ↓ m_GameObject - GameObject (id=588) MyButtonText - ↓ m_Component.Array[0].component - RectTransform (id=587) [Component of MyButtonText (id=588)] - ↓ m_Father - RectTransform (id=589) [Component of MyButtonImage (id=944)] - ↓ m_Children.Array[10] - Transform (id=1234) [Component of MyButtonEffectLayer (1) (id=938)] - ↓ m_GameObject - GameObject (id=938) MyButtonEffectLayer (1) - ↓ m_Component.Array[0].component - Transform (id=1234) [Component of MyButtonEffectLayer (1) (id=938)] - - Analyzed 266 object(s). - Found 1 reference chain(s). - -For each object matching the id or name and type provided, the output file will provide the -information related to it. In this case, it was a Transform in the AssetBundle named MyAssetBundle. -It will then list all the root objects having at least one reference chain leading to that object. -In this case, there was a prefab named MyPrefab that had a hierarchy of GameObjects where one had a -reference on the Transform. - -For each reference in the chain, the name of the property is provided. For example, we can see that -the first reference in the chain is from the m_Component.Array\[0\].component property of the -MyPrefab GameObject. This is the first item in the array of Components of the GameObject and it -points to a RectTransform. When the referenced object is a Component, the corresponding GameObject -name is also provided (in this case, it's obviously MyPrefab). When MonoBehaviour are encountered, -the name of the corresponding Script is provided too (because MonoBehaviour names are empty for -some reason). The last item in the chain is the object that was provided as input. +See [Documentation/referencefinder.md](../Documentation/referencefinder.md) diff --git a/TextDumper/README.md b/TextDumper/README.md index 11b6b8e..8b801b4 100644 --- a/TextDumper/README.md +++ b/TextDumper/README.md @@ -1,60 +1,3 @@ # TextDumper -The TextDumper is a class library that can be used to dump the content of a Unity data -file (AssetBundle or SerializedFile) into human-readable yaml-style text file. - -## How to use - -The library consists of a single class called [TextDumperTool](./TextDumperTool.cs). It has a method named Dump and takes four parameters: -* path (string): path of the data file. -* outputPath (string): path where the output files will be created. -* skipLargeArrays (bool): if true, the content of arrays larger than 1KB won't be dumped. -* objectId (long, optional): if specified and not 0, only the object with this signed 64-bit id will be dumped. If 0 (default), all objects are dumped. - -## How to interpret the output files - -There will be one output file per SerializedFile. Depending on the type of the input file, there can -be more than one output file (e.g. AssetBundles are archives that can contain several -SerializedFiles). - -The first lines of the output file looks like this: - - External References - path(1): "Library/unity default resources" GUID: 0000000000000000e000000000000000 Type: 0 - path(2): "Resources/unity_builtin_extra" GUID: 0000000000000000f000000000000000 Type: 0 - path(3): "archive:/CAB-35fce856128a6714740898681ea54bbe/CAB-35fce856128a6714740898681ea54bbe" GUID: 00000000000000000000000000000000 Type: 0 - -This information can be used to dereference PPtrs. A PPtr is a type used by Unity to locate and load -objects in SerializedFiles. It has two fields: -* m_FileID: The file identifier is an index in the External References list above (the number in parenthesis). It will be 0 if the asset is in the same file. -* m_PathID: The object identifier in the file. Each object in a file has a unique 64 identifier, often called a Local File Identifier (LFID). - -The string after the path is the SerializedFile name corresponding to the file identifier in -parenthesis. In the case of AssetBundles this can be the path of a file inside another AssetBundle (e.g. a path starting with "archive:". The GUID and Type are internal data used by Unity. - -The rest of the file will contain an entry similar to this one for each object in the files: - - ID: -8138362113332287275 (ClassID: 135) SphereCollider - m_GameObject PPtr - m_FileID int 0 - m_PathID SInt64 -1473921323670530447 - m_Material PPtr - m_FileID int 0 - m_PathID SInt64 0 - m_IsTrigger bool False - m_Enabled bool True - m_Radius float 0.5 - m_Center Vector3f - x float 0 - y float 0 - z float 0 - -The first line contains the object identifier, the internal ClassID used by Unity, and the type name -corresponding to this ClassID. Note that the object identifier is guaranteed to be unique in this -file only. - -The next lines are the serialized fields of the objects. The first value is the field -name, the second is the type and the last is the value. If there is no value, it means that it is a -sub-object that is dumped on the next lines with a higher indentation level. - -Note: This tool is similar to the binary2text.exe executable that is included with Unity. However the syntax of the output is somewhat different. \ No newline at end of file +See [Documentation/textdumper.md](../Documentation/textdumper.md) diff --git a/UnityDataTool/README.md b/UnityDataTool/README.md index 6e3509f..8a871ca 100644 --- a/UnityDataTool/README.md +++ b/UnityDataTool/README.md @@ -1,80 +1,3 @@ # UnityDataTool -A command-line tool for analyzing and inspecting Unity build output—AssetBundles, Player builds, Addressables, and more. - -## Commands - -| Command | Description | -|---------|-------------| -| [`analyze`](../Documentation/analyze.md) | Extract data from Unity files into a SQLite database | -| [`dump`](../Documentation/dump.md) | Convert SerializedFiles to human-readable text | -| [`archive`](../Documentation/archive.md) | List or extract contents of Unity Archives | -| [`find-refs`](../Documentation/find-refs.md) | Trace reference chains to objects *(experimental)* | - ---- - -## Quick Start - -```bash -# Show all commands -UnityDataTool --help - -# Analyze AssetBundles into SQLite database -UnityDataTool analyze /path/to/bundles -o database.db - -# Dump a file to text format -UnityDataTool dump /path/to/file.bundle -o /output/path - -# Extract archive contents -UnityDataTool archive extract file.bundle -o contents/ - -# Find reference chains to an object -UnityDataTool find-refs database.db -n "ObjectName" -t "Texture2D" -``` - -Use `--help` with any command for details: `UnityDataTool analyze --help` - -Use `--version` to print the tool version. - - -## Installation - -### Building - -First, build the solution as described in the [main README](../README.md#how-to-build). - -The executable will be at: -``` -UnityDataTool/bin/Release/net9.0/UnityDataTool.exe -``` - -> **Tip:** Add the directory containing `UnityDataTool.exe` to your `PATH` environment variable for easy access. - -### Mac Instructions - -On Mac, publish the project to get an executable: - -**Intel Mac:** -```bash -dotnet publish UnityDataTool -c Release -r osx-x64 -p:PublishSingleFile=true -p:UseAppHost=true -``` - -**Apple Silicon Mac:** -```bash -dotnet publish UnityDataTool -c Release -r osx-arm64 -p:PublishSingleFile=true -p:UseAppHost=true -``` - -If you see a warning about `UnityFileSystemApi.dylib` not being verified, go to **System Preferences → Security & Privacy** and allow the file. - ---- - -## Related Documentation - -| Topic | Description | -|-------|-------------| -| [Analyzer Database Reference](../Analyzer/README.md) | SQLite schema, views, and extending the analyzer | -| [TextDumper Output Format](../TextDumper/README.md) | Understanding dump output | -| [ReferenceFinder Details](../ReferenceFinder/README.md) | Reference chain output format | -| [Analyze Examples](../Documentation/analyze-examples.md) | Practical database queries | -| [Comparing Builds](../Documentation/comparing-builds.md) | Strategies for build comparison | -| [Unity Content Format](../Documentation/unity-content-format.md) | TypeTrees and file formats | +See [Documentation/unitydatatool.md](../Documentation/unitydatatool.md) From a0c80e09d7556b0550bd898cd2ffafdfee3a1ed1 Mon Sep 17 00:00:00 2001 From: Andrew Skowronski Date: Sun, 28 Dec 2025 19:45:56 -0500 Subject: [PATCH 5/8] Documentation - use "command-" prefix Documentation about the different analyze commands now has "command-" prefix --- AGENTS.md | 2 +- Documentation/{analyze.md => command-analyze.md} | 0 Documentation/{archive.md => command-archive.md} | 2 +- Documentation/{dump.md => command-dump.md} | 0 Documentation/{find-refs.md => command-find-refs.md} | 2 +- Documentation/unitydatatool.md | 8 ++++---- 6 files changed, 7 insertions(+), 7 deletions(-) rename Documentation/{analyze.md => command-analyze.md} (100%) rename Documentation/{archive.md => command-archive.md} (94%) rename Documentation/{dump.md => command-dump.md} (100%) rename Documentation/{find-refs.md => command-find-refs.md} (95%) diff --git a/AGENTS.md b/AGENTS.md index 8fef68c..82f5783 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -123,7 +123,7 @@ UnityDataTool (CLI executable) **Entry Points**: - `UnityDataTool/Program.cs` - CLI using System.CommandLine - `UnityDataTool/Commands/` - Command handlers (Analyze.cs, Dump.cs, Archive.cs, FindReferences.cs) -- `Documentation/` - Command documentation (analyze.md, dump.md, archive.md, find-refs.md) +- `Documentation/` - Command documentation (command-analyze.md, command-dump.md, command-archive.md, command-find-refs.md) **Core Libraries**: - `UnityFileSystem/UnityFileSystem.cs` - Init(), MountArchive(), OpenSerializedFile() diff --git a/Documentation/analyze.md b/Documentation/command-analyze.md similarity index 100% rename from Documentation/analyze.md rename to Documentation/command-analyze.md diff --git a/Documentation/archive.md b/Documentation/command-archive.md similarity index 94% rename from Documentation/archive.md rename to Documentation/command-archive.md index 80e59f5..a563926 100644 --- a/Documentation/archive.md +++ b/Documentation/command-archive.md @@ -58,7 +58,7 @@ contents/BuildPlayer-Scene2.sharedAssets contents/BuildPlayer-Scene2 ``` -> **Note:** The extracted files are binary SerializedFiles, not text. Use the [`dump`](dump.md) command to convert them to readable text format. +> **Note:** The extracted files are binary SerializedFiles, not text. Use the [`dump`](command-dump.md) command to convert them to readable text format. --- diff --git a/Documentation/dump.md b/Documentation/command-dump.md similarity index 100% rename from Documentation/dump.md rename to Documentation/command-dump.md diff --git a/Documentation/find-refs.md b/Documentation/command-find-refs.md similarity index 95% rename from Documentation/find-refs.md rename to Documentation/command-find-refs.md index 890493f..3e44fe2 100644 --- a/Documentation/find-refs.md +++ b/Documentation/command-find-refs.md @@ -23,7 +23,7 @@ UnityDataTool find-refs [options] ## Prerequisites -This command requires a database created by the [`analyze`](analyze.md) command **without** the `--skip-references` option. +This command requires a database created by the [`analyze`](command-analyze.md) command **without** the `--skip-references` option. --- diff --git a/Documentation/unitydatatool.md b/Documentation/unitydatatool.md index 945eec5..94b5344 100644 --- a/Documentation/unitydatatool.md +++ b/Documentation/unitydatatool.md @@ -6,10 +6,10 @@ A command-line tool for analyzing and inspecting Unity build output—AssetBundl | Command | Description | |---------|-------------| -| [`analyze`](analyze.md) | Extract data from Unity files into a SQLite database | -| [`dump`](dump.md) | Convert SerializedFiles to human-readable text | -| [`archive`](archive.md) | List or extract contents of Unity Archives | -| [`find-refs`](find-refs.md) | Trace reference chains to objects *(experimental)* | +| [`analyze`](command-analyze.md) | Extract data from Unity files into a SQLite database | +| [`dump`](command-dump.md) | Convert SerializedFiles to human-readable text | +| [`archive`](command-archive.md) | List or extract contents of Unity Archives | +| [`find-refs`](command-find-refs.md) | Trace reference chains to objects *(experimental)* | --- From c643ac83f8c85b3b7a7ae8715c7e12cc33a06715 Mon Sep 17 00:00:00 2001 From: Andrew Skowronski <86242170+SkowronskiAndrew@users.noreply.github.com> Date: Tue, 30 Dec 2025 10:11:16 -0500 Subject: [PATCH 6/8] Analyze - Support BuildReport files (#45) Adds comprehensive support for analyzing Unity BuildReport files, enabling detailed inspection of build contents and source asset tracking. --- AGENTS.md | 17 + Analyzer/Properties/Resources.Designer.cs | 125 +- Analyzer/Properties/Resources.resx | 6 + Analyzer/Resources/BuildReport.sql | 52 + Analyzer/Resources/PackedAssets.sql | 61 + .../SQLite/Handlers/BuildReportHandler.cs | 132 + .../SQLite/Handlers/PackedAssetsHandler.cs | 122 + .../Writers/SerializedFileSQLiteWriter.cs | 2 + Analyzer/SerializedObjects/BuildReport.cs | 213 + Analyzer/SerializedObjects/PackedAssets.cs | 61 + Analyzer/Util/GuidHelper.cs | 45 + .../Diagnostics-TextBasedBuildReport.png | Bin 0 -> 15047 bytes Documentation/analyze-examples.md | 3 + Documentation/analyzer.md | 18 + Documentation/buildreport.md | 250 + .../AssetBundle.buildreport} | Bin .../BuildReports/AssetBundle.buildreport.txt | 633 +++ .../Data/BuildReports/Player.buildreport | Bin 0 -> 66784 bytes .../Data/BuildReports/Player.buildreport.txt | 4140 +++++++++++++++++ TestCommon/Data/BuildReports/README.md | 9 + UnityDataTool.Tests/BuildReportTests.cs | 275 +- 21 files changed, 6154 insertions(+), 10 deletions(-) create mode 100644 Analyzer/Resources/BuildReport.sql create mode 100644 Analyzer/Resources/PackedAssets.sql create mode 100644 Analyzer/SQLite/Handlers/BuildReportHandler.cs create mode 100644 Analyzer/SQLite/Handlers/PackedAssetsHandler.cs create mode 100644 Analyzer/SerializedObjects/BuildReport.cs create mode 100644 Analyzer/SerializedObjects/PackedAssets.cs create mode 100644 Analyzer/Util/GuidHelper.cs create mode 100644 Documentation/Diagnostics-TextBasedBuildReport.png create mode 100644 Documentation/buildreport.md rename TestCommon/Data/{BuildReport1/LastBuild.buildreport => BuildReports/AssetBundle.buildreport} (100%) create mode 100644 TestCommon/Data/BuildReports/AssetBundle.buildreport.txt create mode 100644 TestCommon/Data/BuildReports/Player.buildreport create mode 100644 TestCommon/Data/BuildReports/Player.buildreport.txt create mode 100644 TestCommon/Data/BuildReports/README.md diff --git a/AGENTS.md b/AGENTS.md index 82f5783..93fd1f1 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -47,6 +47,23 @@ dotnet test --filter "FullyQualifiedName~SerializedFile" Test projects: UnityFileSystem.Tests, Analyzer.Tests, UnityDataTool.Tests, TestCommon (helper library) +### Code Style + +#### Comments + +* Write comments that explain "why". A few high level comments explaining the purpose of classes or methods is very helpful. Comments explaining tricky code are also helpful. +* Avoid comments that are redundant with the code. Do not comment before each line of code explaining what it does unless there is something that is not obvious going on. +* Do not use formal C# XML format when commenting methods, unless it is in an important interface class like UnityFileSystem. + +#### Formatting + +To repair white space or style issues, run: + +``` +dotnet format whitespace . --folder +dotnet format style +``` + ### Running the Tool ```bash # Show all commands diff --git a/Analyzer/Properties/Resources.Designer.cs b/Analyzer/Properties/Resources.Designer.cs index 8fb39a8..6eab80f 100644 --- a/Analyzer/Properties/Resources.Designer.cs +++ b/Analyzer/Properties/Resources.Designer.cs @@ -628,7 +628,67 @@ internal static string AudioClip { return ResourceManager.GetString("AudioClip", resourceCulture); } } - + + /// + /// Looks up a localized string similar to CREATE TABLE IF NOT EXISTS build_reports( + /// id INTEGER, + /// build_type TEXT, + /// build_result TEXT, + /// platform_name TEXT, + /// subtarget INTEGER, + /// start_time TEXT, + /// end_time TEXT, + /// total_time_seconds INTEGER, + /// total_size INTEGER, + /// build_guid TEXT, + /// total_errors INTEGER, + /// total_warnings INTEGER, + /// options INTEGER, + /// asset_bundle_options INTEGER, + /// output_path TEXT, + /// crc INTEGER, + /// PRIMARY KEY (id) + ///); + /// + ///CREATE TABLE IF NOT EXISTS build_report_files( + /// build_report_id INTEGER NOT NULL, + /// file_index INTEGER NOT NULL, + /// path TEXT NOT NULL, + /// role TEXT NOT NULL, + /// size INTEGER NOT NULL, + /// PRIMARY KEY (build_report_id, file_index), + /// FOREIGN KEY (build_report_id) REFERENCES build_reports(id) + ///); + /// + ///CREATE TABLE IF NOT EXISTS build_report_archive_contents( + /// build_report_id INTEGER NOT NULL, + /// assetbundle TEXT NOT NULL, + /// assetbundle_content TEXT NOT NULL, + /// PRIMARY KEY (build_report_id, assetbundle_content), + /// FOREIGN KEY (build_report_id) REFERENCES build_reports(id) + ///); + /// + ///CREATE VIEW build_report_files_view AS + ///SELECT + /// o.serialized_file, + /// br.id AS build_report_id, + /// br.build_type, + /// br.platform_name, + /// brf.file_index, + /// brf.path, + /// brf.role, + /// brf.size + ///FROM build_report_files brf + ///INNER JOIN build_reports br ON brf.build_report_id = br.id + ///INNER JOIN object_view o ON br.id = o.id; + ///. + /// + internal static string BuildReport { + get { + return ResourceManager.GetString("BuildReport", resourceCulture); + } + } + /// /// Looks up a localized string similar to CREATE INDEX refs_object_index ON refs(object); ///CREATE INDEX refs_referenced_object_index ON refs(referenced_object); @@ -835,5 +895,68 @@ internal static string MonoScript { return ResourceManager.GetString("MonoScript", resourceCulture); } } + + /// + /// Looks up a localized string similar to CREATE TABLE IF NOT EXISTS build_report_packed_assets( + /// id INTEGER, + /// path TEXT, + /// file_header_size INTEGER, + /// PRIMARY KEY (id) + ///); + /// + ///CREATE TABLE IF NOT EXISTS build_report_source_assets( + /// id INTEGER PRIMARY KEY AUTOINCREMENT, + /// source_asset_guid TEXT NOT NULL, + /// build_time_asset_path TEXT NOT NULL, + /// UNIQUE(source_asset_guid, build_time_asset_path) + ///); + /// + ///CREATE TABLE IF NOT EXISTS build_report_packed_asset_info( + /// packed_assets_id INTEGER, + /// object_id INTEGER, + /// type INTEGER, + /// size INTEGER, + /// offset INTEGER, + /// source_asset_id INTEGER NOT NULL, + /// FOREIGN KEY (packed_assets_id) REFERENCES build_report_packed_assets(id), + /// FOREIGN KEY (source_asset_id) REFERENCES build_report_source_assets(id) + ///); + /// + ///CREATE VIEW build_report_packed_assets_view AS + ///SELECT + /// pa.id, + /// o.object_id, + /// brac.assetbundle, + /// sf.name as build_report, + /// pa.path, + /// pa.file_header_size + ///FROM build_report_packed_assets pa + ///INNER JOIN objects o ON pa.id = o.id + ///INNER JOIN serialized_files sf ON o.serialized_file = sf.id + ///LEFT JOIN objects br_obj ON o.serialized_file = br_obj.serialized_file AND br_obj.type = 1125 + ///LEFT JOIN build_report_archive_contents brac ON br_obj.id = brac.build_report_id AND pa.path = brac.assetbundle_content; + /// + ///CREATE VIEW build_report_packed_asset_contents_view AS + ///SELECT + /// o.serialized_file, + /// pa.path, + /// pac.packed_assets_id, + /// pac.object_id, + /// pac.type, + /// pac.size, + /// pac.offset, + /// sa.source_asset_guid, + /// sa.build_time_asset_path + ///FROM build_report_packed_asset_info pac + ///LEFT JOIN build_report_packed_assets pa ON pac.packed_assets_id = pa.id + ///LEFT JOIN object_view o ON o.id = pa.id + ///LEFT JOIN build_report_source_assets sa ON pac.source_asset_id = sa.id; + ///. + /// + internal static string PackedAssets { + get { + return ResourceManager.GetString("PackedAssets", resourceCulture); + } + } } } diff --git a/Analyzer/Properties/Resources.resx b/Analyzer/Properties/Resources.resx index da823c0..1722f57 100644 --- a/Analyzer/Properties/Resources.resx +++ b/Analyzer/Properties/Resources.resx @@ -127,6 +127,9 @@ ..\Resources\AudioClip.sql;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + + ..\Resources\BuildReport.sql;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + ..\Resources\Finalize.sql;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252 @@ -226,4 +229,7 @@ ..\Resources\MonoScript.sql;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + + ..\Resources\PackedAssets.sql;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + diff --git a/Analyzer/Resources/BuildReport.sql b/Analyzer/Resources/BuildReport.sql new file mode 100644 index 0000000..eab8bb9 --- /dev/null +++ b/Analyzer/Resources/BuildReport.sql @@ -0,0 +1,52 @@ +CREATE TABLE IF NOT EXISTS build_reports( + id INTEGER, + build_type TEXT, + build_result TEXT, + platform_name TEXT, + subtarget INTEGER, + start_time TEXT, + end_time TEXT, + total_time_seconds INTEGER, + total_size INTEGER, + build_guid TEXT, + total_errors INTEGER, + total_warnings INTEGER, + options INTEGER, + asset_bundle_options INTEGER, + output_path TEXT, + crc INTEGER, + PRIMARY KEY (id) +); + +CREATE TABLE IF NOT EXISTS build_report_files( + build_report_id INTEGER NOT NULL, + file_index INTEGER NOT NULL, + path TEXT NOT NULL, + role TEXT NOT NULL, + size INTEGER NOT NULL, + PRIMARY KEY (build_report_id, file_index), + FOREIGN KEY (build_report_id) REFERENCES build_reports(id) +); + +CREATE TABLE IF NOT EXISTS build_report_archive_contents( + build_report_id INTEGER NOT NULL, + assetbundle TEXT NOT NULL, + assetbundle_content TEXT NOT NULL, + PRIMARY KEY (build_report_id, assetbundle_content), + FOREIGN KEY (build_report_id) REFERENCES build_reports(id) +); + +CREATE VIEW build_report_files_view AS +SELECT + o.serialized_file, + br.id AS build_report_id, + br.build_type, + br.platform_name, + brf.file_index, + brf.path, + brf.role, + brf.size +FROM build_report_files brf +INNER JOIN build_reports br ON brf.build_report_id = br.id +INNER JOIN object_view o ON br.id = o.id; + diff --git a/Analyzer/Resources/PackedAssets.sql b/Analyzer/Resources/PackedAssets.sql new file mode 100644 index 0000000..dd55bb0 --- /dev/null +++ b/Analyzer/Resources/PackedAssets.sql @@ -0,0 +1,61 @@ +CREATE TABLE IF NOT EXISTS build_report_packed_assets( + id INTEGER, + path TEXT, + file_header_size INTEGER, + PRIMARY KEY (id) +); + +CREATE TABLE IF NOT EXISTS build_report_source_assets( + id INTEGER PRIMARY KEY AUTOINCREMENT, + source_asset_guid TEXT NOT NULL, + build_time_asset_path TEXT NOT NULL, + UNIQUE(source_asset_guid, build_time_asset_path) +); + +CREATE TABLE IF NOT EXISTS build_report_packed_asset_info( + packed_assets_id INTEGER, + object_id INTEGER, + type INTEGER, + size INTEGER, + offset INTEGER, + source_asset_id INTEGER NOT NULL, + FOREIGN KEY (packed_assets_id) REFERENCES build_report_packed_assets(id), + FOREIGN KEY (source_asset_id) REFERENCES build_report_source_assets(id) +); + +CREATE VIEW build_report_packed_assets_view AS +SELECT + pa.id, + o.object_id, + brac.assetbundle, + pa.path, + pa.file_header_size, + br_obj.id as build_report_id, + sf.name as build_report_filename +FROM build_report_packed_assets pa +INNER JOIN objects o ON pa.id = o.id +INNER JOIN serialized_files sf ON o.serialized_file = sf.id +LEFT JOIN objects br_obj ON o.serialized_file = br_obj.serialized_file AND br_obj.type = 1125 +LEFT JOIN build_report_archive_contents brac ON br_obj.id = brac.build_report_id AND pa.path = brac.assetbundle_content; + +CREATE VIEW build_report_packed_asset_contents_view AS +SELECT + sf.name as serialized_file, + brac.assetbundle, + pa.path, + pac.packed_assets_id, + pac.object_id, + pac.type, + pac.size, + pac.offset, + sa.source_asset_guid, + sa.build_time_asset_path, + br_obj.id as build_report_id +FROM build_report_packed_asset_info pac +LEFT JOIN build_report_packed_assets pa ON pac.packed_assets_id = pa.id +LEFT JOIN objects o ON o.id = pa.id +INNER JOIN serialized_files sf ON o.serialized_file = sf.id +LEFT JOIN build_report_source_assets sa ON pac.source_asset_id = sa.id +LEFT JOIN objects br_obj ON o.serialized_file = br_obj.serialized_file AND br_obj.type = 1125 +LEFT JOIN build_report_archive_contents brac ON br_obj.id = brac.build_report_id AND pa.path = brac.assetbundle_content; + diff --git a/Analyzer/SQLite/Handlers/BuildReportHandler.cs b/Analyzer/SQLite/Handlers/BuildReportHandler.cs new file mode 100644 index 0000000..8535ab1 --- /dev/null +++ b/Analyzer/SQLite/Handlers/BuildReportHandler.cs @@ -0,0 +1,132 @@ +using System; +using Microsoft.Data.Sqlite; +using UnityDataTools.Analyzer.SerializedObjects; +using UnityDataTools.FileSystem.TypeTreeReaders; + +namespace UnityDataTools.Analyzer.SQLite.Handlers; + +public class BuildReportHandler : ISQLiteHandler +{ + private SqliteCommand m_InsertCommand; + private SqliteCommand m_InsertFileCommand; + private SqliteCommand m_InsertArchiveContentCommand; + + public void Init(SqliteConnection db) + { + using var command = db.CreateCommand(); + command.CommandText = Properties.Resources.BuildReport ?? throw new InvalidOperationException("BuildReport resource not found"); + command.ExecuteNonQuery(); + + m_InsertCommand = db.CreateCommand(); + m_InsertCommand.CommandText = @"INSERT INTO build_reports( + id, build_type, build_result, platform_name, subtarget, start_time, end_time, total_time_seconds, + total_size, build_guid, total_errors, total_warnings, options, asset_bundle_options, + output_path, crc + ) VALUES( + @id, @build_type, @build_result, @platform_name, @subtarget, @start_time, @end_time, @total_time_seconds, + @total_size, @build_guid, @total_errors, @total_warnings, @options, @asset_bundle_options, + @output_path, @crc + )"; + + m_InsertCommand.Parameters.Add("@id", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@build_type", SqliteType.Text); + m_InsertCommand.Parameters.Add("@build_result", SqliteType.Text); + m_InsertCommand.Parameters.Add("@platform_name", SqliteType.Text); + m_InsertCommand.Parameters.Add("@subtarget", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@start_time", SqliteType.Text); + m_InsertCommand.Parameters.Add("@end_time", SqliteType.Text); + m_InsertCommand.Parameters.Add("@total_time_seconds", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@total_size", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@build_guid", SqliteType.Text); + m_InsertCommand.Parameters.Add("@total_errors", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@total_warnings", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@options", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@asset_bundle_options", SqliteType.Integer); + m_InsertCommand.Parameters.Add("@output_path", SqliteType.Text); + m_InsertCommand.Parameters.Add("@crc", SqliteType.Integer); + + m_InsertFileCommand = db.CreateCommand(); + m_InsertFileCommand.CommandText = @"INSERT INTO build_report_files( + build_report_id, file_index, path, role, size + ) VALUES( + @build_report_id, @file_index, @path, @role, @size + )"; + + m_InsertFileCommand.Parameters.Add("@build_report_id", SqliteType.Integer); + m_InsertFileCommand.Parameters.Add("@file_index", SqliteType.Integer); + m_InsertFileCommand.Parameters.Add("@path", SqliteType.Text); + m_InsertFileCommand.Parameters.Add("@role", SqliteType.Text); + m_InsertFileCommand.Parameters.Add("@size", SqliteType.Integer); + + m_InsertArchiveContentCommand = db.CreateCommand(); + m_InsertArchiveContentCommand.CommandText = @"INSERT INTO build_report_archive_contents( + build_report_id, assetbundle, assetbundle_content + ) VALUES( + @build_report_id, @assetbundle, @assetbundle_content + )"; + + m_InsertArchiveContentCommand.Parameters.Add("@build_report_id", SqliteType.Integer); + m_InsertArchiveContentCommand.Parameters.Add("@assetbundle", SqliteType.Text); + m_InsertArchiveContentCommand.Parameters.Add("@assetbundle_content", SqliteType.Text); + } + + public void Process(Context ctx, long objectId, RandomAccessReader reader, out string name, out long streamDataSize) + { + var buildReport = BuildReport.Read(reader); + m_InsertCommand.Transaction = ctx.Transaction; + m_InsertCommand.Parameters["@id"].Value = objectId; + m_InsertCommand.Parameters["@build_type"].Value = BuildReport.GetBuildTypeString(buildReport.BuildType); + m_InsertCommand.Parameters["@build_result"].Value = buildReport.BuildResult; + m_InsertCommand.Parameters["@platform_name"].Value = buildReport.PlatformName; + m_InsertCommand.Parameters["@subtarget"].Value = buildReport.Subtarget; + m_InsertCommand.Parameters["@start_time"].Value = buildReport.StartTime; + m_InsertCommand.Parameters["@end_time"].Value = buildReport.EndTime; + m_InsertCommand.Parameters["@total_time_seconds"].Value = buildReport.TotalTimeSeconds; + m_InsertCommand.Parameters["@total_size"].Value = (long)buildReport.TotalSize; + m_InsertCommand.Parameters["@build_guid"].Value = buildReport.BuildGuid; + m_InsertCommand.Parameters["@total_errors"].Value = buildReport.TotalErrors; + m_InsertCommand.Parameters["@total_warnings"].Value = buildReport.TotalWarnings; + m_InsertCommand.Parameters["@options"].Value = buildReport.Options; + m_InsertCommand.Parameters["@asset_bundle_options"].Value = buildReport.AssetBundleOptions; + m_InsertCommand.Parameters["@output_path"].Value = buildReport.OutputPath; + m_InsertCommand.Parameters["@crc"].Value = buildReport.Crc; + + m_InsertCommand.ExecuteNonQuery(); + + // Insert files + foreach (var file in buildReport.Files) + { + m_InsertFileCommand.Transaction = ctx.Transaction; + m_InsertFileCommand.Parameters["@build_report_id"].Value = objectId; + m_InsertFileCommand.Parameters["@file_index"].Value = file.Id; + m_InsertFileCommand.Parameters["@path"].Value = file.Path; + m_InsertFileCommand.Parameters["@role"].Value = file.Role; + m_InsertFileCommand.Parameters["@size"].Value = (long)file.Size; + m_InsertFileCommand.ExecuteNonQuery(); + } + + // Insert archive contents mapping + foreach (var mapping in buildReport.fileListAssetBundleHelper.internalNameToArchiveMapping) + { + m_InsertArchiveContentCommand.Transaction = ctx.Transaction; + m_InsertArchiveContentCommand.Parameters["@build_report_id"].Value = objectId; + m_InsertArchiveContentCommand.Parameters["@assetbundle"].Value = mapping.Value; + m_InsertArchiveContentCommand.Parameters["@assetbundle_content"].Value = mapping.Key; + m_InsertArchiveContentCommand.ExecuteNonQuery(); + } + + streamDataSize = 0; + name = buildReport.Name; + } + + public void Finalize(SqliteConnection db) + { + } + + void IDisposable.Dispose() + { + m_InsertCommand?.Dispose(); + m_InsertFileCommand?.Dispose(); + m_InsertArchiveContentCommand?.Dispose(); + } +} diff --git a/Analyzer/SQLite/Handlers/PackedAssetsHandler.cs b/Analyzer/SQLite/Handlers/PackedAssetsHandler.cs new file mode 100644 index 0000000..c2f62db --- /dev/null +++ b/Analyzer/SQLite/Handlers/PackedAssetsHandler.cs @@ -0,0 +1,122 @@ +using System; +using System.Collections.Generic; +using Microsoft.Data.Sqlite; +using UnityDataTools.Analyzer.SerializedObjects; +using UnityDataTools.FileSystem.TypeTreeReaders; + +namespace UnityDataTools.Analyzer.SQLite.Handlers; + +public class PackedAssetsHandler : ISQLiteHandler +{ + private SqliteCommand m_InsertPackedAssetsCommand; + private SqliteCommand m_InsertSourceAssetCommand; + private SqliteCommand m_GetSourceAssetIdCommand; + private SqliteCommand m_InsertContentsCommand; + private Dictionary<(string guid, string path), long> m_SourceAssetCache = new(); + + public void Init(SqliteConnection db) + { + using var command = db.CreateCommand(); + command.CommandText = Properties.Resources.PackedAssets ?? throw new InvalidOperationException("PackedAssets resource not found"); + command.ExecuteNonQuery(); + + m_InsertPackedAssetsCommand = db.CreateCommand(); + m_InsertPackedAssetsCommand.CommandText = @"INSERT INTO build_report_packed_assets( + id, path, file_header_size + ) VALUES( + @id, @path, @file_header_size + )"; + + m_InsertPackedAssetsCommand.Parameters.Add("@id", SqliteType.Integer); + m_InsertPackedAssetsCommand.Parameters.Add("@path", SqliteType.Text); + m_InsertPackedAssetsCommand.Parameters.Add("@file_header_size", SqliteType.Integer); + + m_InsertSourceAssetCommand = db.CreateCommand(); + m_InsertSourceAssetCommand.CommandText = @"INSERT OR IGNORE INTO build_report_source_assets( + source_asset_guid, build_time_asset_path + ) VALUES( + @source_asset_guid, @build_time_asset_path + )"; + m_InsertSourceAssetCommand.Parameters.Add("@source_asset_guid", SqliteType.Text); + m_InsertSourceAssetCommand.Parameters.Add("@build_time_asset_path", SqliteType.Text); + + m_GetSourceAssetIdCommand = db.CreateCommand(); + m_GetSourceAssetIdCommand.CommandText = @"SELECT id FROM build_report_source_assets + WHERE source_asset_guid = @source_asset_guid AND build_time_asset_path = @build_time_asset_path"; + m_GetSourceAssetIdCommand.Parameters.Add("@source_asset_guid", SqliteType.Text); + m_GetSourceAssetIdCommand.Parameters.Add("@build_time_asset_path", SqliteType.Text); + + m_InsertContentsCommand = db.CreateCommand(); + m_InsertContentsCommand.CommandText = @"INSERT INTO build_report_packed_asset_info( + packed_assets_id, object_id, type, size, offset, source_asset_id + ) VALUES( + @packed_assets_id, @object_id, @type, @size, @offset, @source_asset_id + )"; + + m_InsertContentsCommand.Parameters.Add("@packed_assets_id", SqliteType.Integer); + m_InsertContentsCommand.Parameters.Add("@object_id", SqliteType.Integer); + m_InsertContentsCommand.Parameters.Add("@type", SqliteType.Integer); + m_InsertContentsCommand.Parameters.Add("@size", SqliteType.Integer); + m_InsertContentsCommand.Parameters.Add("@offset", SqliteType.Integer); + m_InsertContentsCommand.Parameters.Add("@source_asset_id", SqliteType.Integer); + } + + public void Process(Context ctx, long objectId, RandomAccessReader reader, out string name, out long streamDataSize) + { + var packedAssets = PackedAssets.Read(reader); + + m_InsertPackedAssetsCommand.Transaction = ctx.Transaction; + m_InsertPackedAssetsCommand.Parameters["@id"].Value = objectId; + m_InsertPackedAssetsCommand.Parameters["@path"].Value = packedAssets.Path; + m_InsertPackedAssetsCommand.Parameters["@file_header_size"].Value = (long)packedAssets.FileHeaderSize; + m_InsertPackedAssetsCommand.ExecuteNonQuery(); + + // Insert contents + foreach (var content in packedAssets.Contents) + { + // Get or create source asset ID + var cacheKey = (content.SourceAssetGUID, content.BuildTimeAssetPath); + if (!m_SourceAssetCache.TryGetValue(cacheKey, out long sourceAssetId)) + { + // Insert the source asset (will be ignored if it already exists) + m_InsertSourceAssetCommand.Transaction = ctx.Transaction; + m_InsertSourceAssetCommand.Parameters["@source_asset_guid"].Value = content.SourceAssetGUID; + m_InsertSourceAssetCommand.Parameters["@build_time_asset_path"].Value = content.BuildTimeAssetPath; + m_InsertSourceAssetCommand.ExecuteNonQuery(); + + // Get the ID (whether just inserted or already existing) + m_GetSourceAssetIdCommand.Transaction = ctx.Transaction; + m_GetSourceAssetIdCommand.Parameters["@source_asset_guid"].Value = content.SourceAssetGUID; + m_GetSourceAssetIdCommand.Parameters["@build_time_asset_path"].Value = content.BuildTimeAssetPath; + sourceAssetId = (long)m_GetSourceAssetIdCommand.ExecuteScalar(); + + m_SourceAssetCache[cacheKey] = sourceAssetId; + } + + m_InsertContentsCommand.Transaction = ctx.Transaction; + m_InsertContentsCommand.Parameters["@packed_assets_id"].Value = objectId; + m_InsertContentsCommand.Parameters["@object_id"].Value = content.ObjectID; + m_InsertContentsCommand.Parameters["@type"].Value = content.Type; + m_InsertContentsCommand.Parameters["@size"].Value = (long)content.Size; + m_InsertContentsCommand.Parameters["@offset"].Value = (long)content.Offset; + m_InsertContentsCommand.Parameters["@source_asset_id"].Value = sourceAssetId; + m_InsertContentsCommand.ExecuteNonQuery(); + } + + streamDataSize = 0; + name = packedAssets.Path; + } + + public void Finalize(SqliteConnection db) + { + } + + void IDisposable.Dispose() + { + m_InsertPackedAssetsCommand?.Dispose(); + m_InsertSourceAssetCommand?.Dispose(); + m_GetSourceAssetIdCommand?.Dispose(); + m_InsertContentsCommand?.Dispose(); + } +} + diff --git a/Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs b/Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs index 63c1c0d..f91bcd4 100644 --- a/Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs +++ b/Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs @@ -38,6 +38,8 @@ public class SerializedFileSQLiteWriter : IDisposable { "AssetBundle", new AssetBundleHandler() }, { "PreloadData", new PreloadDataHandler() }, { "MonoScript", new MonoScriptHandler() }, + { "BuildReport", new BuildReportHandler() }, + { "PackedAssets", new PackedAssetsHandler() }, }; // serialized files diff --git a/Analyzer/SerializedObjects/BuildReport.cs b/Analyzer/SerializedObjects/BuildReport.cs new file mode 100644 index 0000000..ae274e9 --- /dev/null +++ b/Analyzer/SerializedObjects/BuildReport.cs @@ -0,0 +1,213 @@ +using System; +using System.Collections.Generic; +using System.IO; +using UnityDataTools.Analyzer.Util; +using UnityDataTools.FileSystem.TypeTreeReaders; + +namespace UnityDataTools.Analyzer.SerializedObjects; + +public class BuildReport +{ + public string Name { get; init; } + public string BuildGuid { get; init; } + public string PlatformName { get; init; } + public int Subtarget { get; init; } + public string StartTime { get; init; } + public string EndTime { get; init; } + public int Options { get; init; } + public int AssetBundleOptions { get; init; } + public string OutputPath { get; init; } + public uint Crc { get; init; } + public ulong TotalSize { get; init; } + public int TotalTimeSeconds { get; init; } + public int TotalErrors { get; init; } + public int TotalWarnings { get; init; } + public int BuildType { get; init; } + public string BuildResult { get; init; } + public List Files { get; init; } + public FileListAssetBundleHelper fileListAssetBundleHelper { get; init; } + + private BuildReport() { } + + public static BuildReport Read(RandomAccessReader reader) + { + var summary = reader["m_Summary"]; + + // Read the GUID (4 unsigned ints) + // Unity's GUID format reverses nibbles within each uint32 + var guidData = summary["buildGUID"]; + var guid0 = guidData["data[0]"].GetValue(); + var guid1 = guidData["data[1]"].GetValue(); + var guid2 = guidData["data[2]"].GetValue(); + var guid3 = guidData["data[3]"].GetValue(); + var guidString = GuidHelper.FormatUnityGuid(guid0, guid1, guid2, guid3); + + // Convert build start time from ticks to ISO 8601 UTC format + var startTimeTicks = summary["buildStartTime"]["ticks"].GetValue(); + var startTime = new DateTime(startTimeTicks, DateTimeKind.Utc).ToString("o"); + + // Convert ticks to seconds (TimeSpan.TicksPerSecond = 10,000,000) + var totalTimeTicks = summary["totalTimeTicks"].GetValue(); + var totalTimeSeconds = (int)Math.Round(totalTimeTicks / 10000000.0); + + var endTime = new DateTime(startTimeTicks + (long)totalTimeTicks, DateTimeKind.Utc).ToString("o"); + + // Read the files array + var filesList = new List(reader["m_Files"].GetArraySize()); + foreach (var fileElement in reader["m_Files"]) + { + filesList.Add(new BuildFile + { + Id = fileElement["id"].GetValue(), + Path = fileElement["path"].GetValue(), + Role = fileElement["role"].GetValue(), + Size = fileElement["totalSize"].GetValue() + }); + } + + TrimCommonPathPrefix(filesList); + + return new BuildReport() + { + Name = reader["m_Name"].GetValue(), + BuildGuid = guidString, + PlatformName = summary["platformName"].GetValue(), + Subtarget = summary["subtarget"].GetValue(), + StartTime = startTime, + EndTime = endTime, + Options = summary["options"].GetValue(), + AssetBundleOptions = summary["assetBundleOptions"].GetValue(), + OutputPath = summary["outputPath"].GetValue(), + Crc = summary["crc"].GetValue(), + TotalSize = summary["totalSize"].GetValue(), + TotalTimeSeconds = totalTimeSeconds, + TotalErrors = summary["totalErrors"].GetValue(), + TotalWarnings = summary["totalWarnings"].GetValue(), + BuildType = summary["buildType"].GetValue(), + BuildResult = GetBuildResultString(summary["buildResult"].GetValue()), + Files = filesList, + fileListAssetBundleHelper = new FileListAssetBundleHelper(filesList) + }; + } + + // Currently the file list has the absolute paths of the build output, but what we really want is the relative path. + // This code reuses the approach taken in the build report inspector of automatically stripping off whatever part of the path + // is repeated as the prefix on each file, which effectively finds the relative output path. + static void TrimCommonPathPrefix(List files) + { + if (files.Count == 0) + return; + string longestCommonRoot = files[0].Path; + foreach (var file in files) + { + for (var i = 0; i < longestCommonRoot.Length && i < file.Path.Length; i++) + { + if (longestCommonRoot[i] == file.Path[i]) + continue; + longestCommonRoot = longestCommonRoot.Substring(0, i); + } + } + + foreach (var file in files) + { + file.Path = file.Path.Substring(longestCommonRoot.Length); + } + } + + public static string GetBuildTypeString(int buildType) + { + return buildType switch + { + 1 => "Player", + 2 => "AssetBundle", + 3 => "Player, AssetBundle", + _ => buildType.ToString() + }; + } + + public static string GetBuildResultString(int buildResult) + { + return buildResult switch + { + 0 => "Unknown", + 1 => "Succeeded", + 2 => "Failed", + 3 => "Cancelled", + 4 => "Pending", + _ => buildResult.ToString() + }; + } +} + +public class BuildFile +{ + public uint Id { get; init; } + public string Path { get; set; } + public string Role { get; init; } + public ulong Size { get; init; } +} + + +/// Helper for matching files that are inside an Unity Archive file to the file containing it. +// Currently this only applies to AssetBundle builds, which can have many output files and which use hard to understand internal file names +// like "CAB-76a378bdc9304bd3c3a82de8dd97981a". +// For compressed Player builds the PackedAssets reports the internal files, but the file list does not report the unity3d content, +// so this code will not pick up the mapping. However because there is only a single unity3d file on most platforms this is less important +public class FileListAssetBundleHelper +{ + public Dictionary internalNameToArchiveMapping = new Dictionary(); + + public FileListAssetBundleHelper(List files) + { + CalculateAssetBundleMapping(files); + } + + /// + // Map between the internal file names inside Archive files back to the Archive filename. + + /* + Example input: + + - path: C:/Src/TestProject/Build/AssetBundles/audio.bundle/CAB-76a378bdc9304bd3c3a82de8dd97981a.resource + role: StreamingResourceFile + ... + - path: C:/Src/TestProject/Build/AssetBundles/audio.bundle + role: AssetBundle + ... + + Result: + CAB-76a378bdc9304bd3c3a82de8dd97981a.resource -> audio.bundle + */ + /// + private void CalculateAssetBundleMapping(List files) + { + internalNameToArchiveMapping.Clear(); + + // Track archive paths and their base filenames for AssetBundle or manifest files + var archivePathToFileName = new Dictionary(); + foreach (var file in files) + { + if (file.Role == "AssetBundle" || file.Role == "ManifestAssetBundle") + { + var justFileName = Path.GetFileName(file.Path); + archivePathToFileName[file.Path] = justFileName; + } + } + + if (archivePathToFileName.Count == 0) + return; + + // Map internal file names to their corresponding archive filenames + foreach (var file in files) + { + // Assumes internal files are not in subdirectories inside the archive + var justPath = Path.GetDirectoryName(file.Path)?.Replace('\\', '/'); + var justFileName = Path.GetFileName(file.Path); + + if (!string.IsNullOrEmpty(justPath) && archivePathToFileName.ContainsKey(justPath)) + { + internalNameToArchiveMapping[justFileName] = archivePathToFileName[justPath]; + } + } + } +} diff --git a/Analyzer/SerializedObjects/PackedAssets.cs b/Analyzer/SerializedObjects/PackedAssets.cs new file mode 100644 index 0000000..be7741a --- /dev/null +++ b/Analyzer/SerializedObjects/PackedAssets.cs @@ -0,0 +1,61 @@ +using System.Collections.Generic; +using UnityDataTools.Analyzer.Util; +using UnityDataTools.FileSystem.TypeTreeReaders; + +namespace UnityDataTools.Analyzer.SerializedObjects; + +public class PackedAssets +{ + public string Path { get; init; } + public ulong FileHeaderSize { get; init; } + public List Contents { get; init; } + + private PackedAssets() { } + + public static PackedAssets Read(RandomAccessReader reader) + { + var path = reader["m_ShortPath"].GetValue(); + var fileHeaderSize = reader["m_Overhead"].GetValue(); + + var contentsList = new List(reader["m_Contents"].GetArraySize()); + + foreach (var element in reader["m_Contents"]) + { + // Read GUID (4 unsigned ints) + var guidData = element["sourceAssetGUID"]; + var guid0 = guidData["data[0]"].GetValue(); + var guid1 = guidData["data[1]"].GetValue(); + var guid2 = guidData["data[2]"].GetValue(); + var guid3 = guidData["data[3]"].GetValue(); + var guidString = GuidHelper.FormatUnityGuid(guid0, guid1, guid2, guid3); + + contentsList.Add(new PackedAssetInfo + { + ObjectID = element["fileID"].GetValue(), + Type = element["classID"].GetValue(), + Size = element["packedSize"].GetValue(), + Offset = element["offset"].GetValue(), + SourceAssetGUID = guidString, + BuildTimeAssetPath = element["buildTimeAssetPath"].GetValue() + }); + } + + return new PackedAssets() + { + Path = path, + FileHeaderSize = fileHeaderSize, + Contents = contentsList + }; + } +} + +public class PackedAssetInfo +{ + public long ObjectID { get; init; } + public int Type { get; init; } + public ulong Size { get; init; } + public ulong Offset { get; init; } + public string SourceAssetGUID { get; init; } + public string BuildTimeAssetPath { get; init; } +} + diff --git a/Analyzer/Util/GuidHelper.cs b/Analyzer/Util/GuidHelper.cs new file mode 100644 index 0000000..f7a6bd0 --- /dev/null +++ b/Analyzer/Util/GuidHelper.cs @@ -0,0 +1,45 @@ +namespace UnityDataTools.Analyzer.Util; + +/// +/// Helper class for converting Unity GUID data to string format. +/// +public static class GuidHelper +{ + /// + /// Converts Unity GUID data array to string format matching Unity's GUIDToString function. + /// Unity stores GUIDs as 4 uint32 values and converts them to a 32-character hex string + /// with a specific byte ordering that differs from standard GUID/UUID formatting. + /// + /// + /// data[0]=3856716653 (0xe60765cd) becomes "d63d0e5e" + /// + public static string FormatUnityGuid(uint data0, uint data1, uint data2, uint data3) + { + char[] result = new char[32]; + FormatUInt32Reversed(data0, result, 0); + FormatUInt32Reversed(data1, result, 8); + FormatUInt32Reversed(data2, result, 16); + FormatUInt32Reversed(data3, result, 24); + return new string(result); + } + + /// + /// Formats a uint32 as 8 hex digits matching Unity's GUIDToString logic. + /// Unity's implementation extracts nibbles from most significant to least significant + /// (j=7 down to j=0) and writes them to output positions in the same order (offset+7 to offset+0), + /// which reverses the byte order compared to standard hex formatting. + /// + /// + /// For example: 0xe60765cd becomes "d63d0e5e" (bytes reversed: cd,65,07,e6 → e6,07,65,cd) + /// + private static void FormatUInt32Reversed(uint value, char[] output, int offset) + { + const string hexChars = "0123456789abcdef"; + for (int j = 7; j >= 0; j--) + { + uint nibble = (value >> (j * 4)) & 0xF; + output[offset + j] = hexChars[(int)nibble]; + } + } +} + diff --git a/Documentation/Diagnostics-TextBasedBuildReport.png b/Documentation/Diagnostics-TextBasedBuildReport.png new file mode 100644 index 0000000000000000000000000000000000000000..a21c76efdeeb90e7d4472ff9e10d92ee00331ff6 GIT binary patch literal 15047 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%0D|h8*KRTg99BM{q;3TBH7`1r8RNC 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 S0`QMdkz^zk#f!yW`~5Gg`jzwm literal 0 HcmV?d00001 diff --git a/Documentation/analyze-examples.md b/Documentation/analyze-examples.md index a0a87e9..23f5551 100644 --- a/Documentation/analyze-examples.md +++ b/Documentation/analyze-examples.md @@ -64,6 +64,9 @@ Universal Render Pipeline/Lit 115.5 KB 1b2fdfe013c58ffd57d7663 Shader Graphs/CustomLightingBuildingsB 113.4 KB 1b2fdfe013c58ffd57d7663eb8db3e60 ``` +## BuildReport support + +See [buildreport.md](buildreport.md) for information about using analyze to look at BuildReport files. ## Example: Using AI tools to help write queries diff --git a/Documentation/analyzer.md b/Documentation/analyzer.md index aa67f4c..2e95ed3 100644 --- a/Documentation/analyzer.md +++ b/Documentation/analyzer.md @@ -63,6 +63,20 @@ This view lists the dependencies of all the assets. You can filter by id or asse the dependencies of an asset. Conversely, filtering by dep_id will return all the assets that depend on this object. This can be useful to figure out why an asset was included in a build. +## monoscripts + +Show the class information for all the C# types of MonoBehaviour objects in the build output (including ScriptableObjects). + +This includes the assembly name, C# namespace and class name. + +## monoscripts_view + +This view is a convenient view for seeing which AssetBundle / SerializedFile contains each MonoScript object. + +## script_object_view + +This view lists all the MonoBehaviour and ScriptableObject objects in the build output, with their location, size and precise C# type (using the `monoscripts` and `refs` tables). This view is not populated if analyze is run with the `--skip-references` option. + ## animation_view (AnimationClipProcessor) This provides additional information about AnimationClips. The columns are the same as those in @@ -162,6 +176,10 @@ This view lists all the shaders aggregated by name. The *instances* column indic the shader was found in the data files. It also provides the total size per shader and the list of AssetBundles in which they were found. +## BuildReport + +See [BuildReport.md](buildreport.md) for details of the tables and views related to analyzing BuildReport files. + # Advanced ## Using the library diff --git a/Documentation/buildreport.md b/Documentation/buildreport.md new file mode 100644 index 0000000..1ce1d87 --- /dev/null +++ b/Documentation/buildreport.md @@ -0,0 +1,250 @@ +# BuildReport Support + +Unity generates a [BuildReport](https://docs.unity3d.com/ScriptReference/Build.Reporting.BuildReport.html) file for Player builds and when building AssetBundles via [BuildPipeline.BuildAssetBundles](https://docs.unity3d.com/ScriptReference/BuildPipeline.BuildAssetBundles.html). Build reports are **not** generated by the [Addressables](addressables-build-reports.md) package or Scriptable Build Pipeline. + +Build reports are written to `Library/LastBuild.buildreport` as Unity SerializedFiles (the same binary format used for build output). UnityDataTool can read this format and extract detailed build information using the same mechanisms as other Unity object types. + +## UnityDataTool Support + +Since build reports are SerializedFiles, you can use [`dump`](command-dump.md) to convert them to text format. + +The [`analyze`](command-analyze.md) command extracts build report data into dedicated database tables with custom handlers for: + +* **BuildReport** - The primary object containing build inputs and results +* **PackedAssets** - Describes the contents of each SerializedFile, .resS, or .resource file, including type, size, and source asset for each object or resource blob, enabling object-level analysis + +**Note:** PackedAssets information is not currently written for scenes in the build. + +## Examples + +These are some example queries that can be run after running analyze on a build report file. + +1. Show all successful builds recorded in the database. + +``` +SELECT * from build_reports WHERE build_result = "Succeeded" +``` + +2. Show information about the data in the build that originates from "Assets/Sprites/Snow.jpg". + +``` +SELECT * +FROM build_report_packed_asset_contents_view +WHERE build_time_asset_path like "Assets/Sprites/Snow.jpg" +``` + +3. Show the AssetBundles that contain content from "Assets/Sprites/Snow.jpg". + +``` +SELECT DISTINCT assetbundle +FROM build_report_packed_asset_contents_view +WHERE build_time_asset_path like "Assets/Sprites/Snow.jpg" +``` + +4. Show all source assets included in the build (excluding C# scripts, e.g. MonoScript objects) + +``` +SELECT build_time_asset_path from build_report_source_assets WHERE build_time_asset_path NOT LIKE "%.cs" +``` + +## Cross-Referencing with Build Output + +For comprehensive analysis, run `analyze` on both the build output **and** the matching build report file. Use a clean build to ensure PackedAssets information is fully populated. You may need to copy the build report into the build output directory so both are found by `analyze`. + +PackedAssets data provides source asset information for each object that isn't available when analyzing only the build output. Objects are listed in the same order as they appear in the output SerializedFile, .resS, or .resource file. + +### Database Relationships + +- Match `build_report_packed_assets` rows to analyzed SerializedFiles using `object_view.serialized_file` and `build_report_packed_assets.path` +- Match `build_report_packed_asset_info` entries to objects in the build output using `object_id` (local file ID) + +**Note:** build_report_packed_assets` also record .resS and .resource files. These rows will not match with the serialized_files table. + +**Note:** The source object's local file ID is not recorded in PackedAssetInfo. While you can identify the source asset (e.g., which Prefab), you cannot directly pinpoint the specific object within that asset. When needed, objects can often be distinguished by name or other properties. + +## Working with Multiple Build Reports + +Multiple build reports can be imported into the same database if their filenames differ. This enables: +- Comprehensive build history tracking +- Cross-build comparisons +- Identifying duplicated data between Player and AssetBundle builds + +See the schema sections below for guidance on writing queries that handle multiple build reports correctly. + +## Alternatives + +UnityDataTool provides low-level access to build reports. Consider these alternatives for easier or more convenient workflows: + +### BuildReportInspector Package + +View build reports in the Unity Editor using the [BuildReportInspector](https://github.com/Unity-Technologies/BuildReportInspector) package. + +### BuildReport API + +Access build report data programmatically within Unity using the BuildReport API: + +**1. Most recent build:** +Use [BuildPipeline.GetLatestReport()](https://docs.unity3d.com/ScriptReference/Build.Reporting.BuildReport.GetLatestReport.html) + +**2. Build report in Assets folder:** +Load via AssetDatabase API: + +```csharp +using UnityEditor; +using UnityEditor.Build.Reporting; +using UnityEngine; + +public class BuildReportInProjectUtility +{ + static public BuildReport LoadBuildReport(string buildReportPath) + { + var report = AssetDatabase.LoadAssetAtPath("Assets/MyBuildReport.buildReport"); + + if (report == null) + Debug.LogWarning($"Failed to load build report from {buildReportPath}"); + + return report; + } +} +``` + +**3. Build report outside Assets folder:** +For files in Library or elsewhere, use `InternalEditorUtility`: + + +```csharp +using System; +using System.IO; +using UnityEditor.Build.Reporting; +using UnityEditorInternal; +using UnityEngine; + +public class BuildReportUtility +{ + static public BuildReport LoadBuildReport(string buildReportPath) + { + if (!File.Exists(buildReportPath)) + return null; + + try + { + var objs = InternalEditorUtility.LoadSerializedFileAndForget(buildReportPath); + foreach (UnityEngine.Object obj in objs) + { + if (obj is BuildReport) + return obj as BuildReport; + } + } + catch (Exception ex) + { + Debug.LogWarning($"Failed to load build report from {buildReportPath}: {ex.Message}"); + } + return null; + } +} +``` + +### Text Format Access + +Build reports can be output in Unity's pseudo-YAML format using a diagnostic flag: + +![](Diagnostics-TextBasedBuildReport.png) + +Text files are significantly larger than binary. You can also convert to text by moving the binary file into your Unity project (assets default to text format). + +UnityDataTool's `dump` command produces a non-YAML text representation of build report contents. + +**When to use text formats:** +- Quick extraction of specific information via text processing tools (regex, YAML parsers, etc.) + +**When to use structured access:** +- Working with full structured data: use UnityDataTool's `analyze` command or Unity's BuildReport API + +### Addressables Build Reports + +The Addressables package generates `buildlayout.json` files instead of BuildReport files. While the format and schema differ, they contain similar information. See [Addressables Build Reports](addressables-build-reports.md) for details on importing these files with UnityDataTool. + +## Database Schema + +Build report data is stored in the following tables and views: + +| Name | Type | Description | +|------|------|-------------| +| `build_reports` | table | Build summary (type, result, platform, duration, etc.) | +| `build_report_files` | table | Files included in the build (path, role, size). See [BuildReport.GetFiles](https://docs.unity3d.com/ScriptReference/Build.Reporting.BuildReport.GetFiles.html) | +| `build_report_archive_contents` | table | Files inside each AssetBundle | +| `build_report_packed_assets` | table | SerializedFile, .resS, or .resource file info. See [PackedAssets](https://docs.unity3d.com/ScriptReference/Build.Reporting.PackedAssets.html) | +| `build_report_packed_asset_info` | table | Each object inside a SerializedFile (or data in .resS/.resource files). See [PackedAssetInfo](https://docs.unity3d.com/ScriptReference/Build.Reporting.PackedAssetInfo.html) | +| `build_report_source_assets` | table | Source asset GUID and path for each PackedAssetInfo reference | +| `build_report_files_view` | view | All files from all build reports | +| `build_report_packed_assets_view` | view | All PackedAssets with their BuildReport, AssetBundle, and SerializedFile | +| `build_report_packed_asset_contents_view` | view | All objects and resources tracked in build reports | + +The `build_reports` table contains primary build information. Additional tables store detailed content data. Views simplify queries by automatically joining tables, especially when working with multiple build reports. + +### Schema Overview + +Views automatically identify which build report each row belongs to, simplifying multi-report queries. To create custom queries, understand the table relationships: + +**Primary relationships:** +- `build_reports`: One row per analyzed BuildReport file, corresponding to the BuildReport object in the `objects` table via the `id` column +- `build_report_packed_assets`: Records the `id` of each PackedAssets object. Find the associated BuildReport via the shared `objects.serialized_file` value (PackedAssets are processed independently of BuildReport objects) + +**Auxiliary tables:** +- `build_report_files` and `build_report_archive_contents`: Stores the BuildReport object `id` for each row (as `build_report_id`). +- `build_report_packed_asset_info`: Stores the PackedAssets object `id` for each row (as `packed_assets_id`). +- `build_report_source_assets`: Normalized table of distinct source asset GUIDs and paths, linked via `build_report_packed_asset_info.source_asset_id` + +**Note:** BuildReport and PackedAssets objects are also linked in the `refs` table (BuildReport references PackedAssets in its appendices array), but this relationship is not used in built-in views since `refs` table population is optional. + +**Example: build_report_packed_assets_view** + +This view demonstrates key relationships: +- Finds the BuildReport object (`br_obj`) by type (1125) and shared `serialized_file` with the PackedAssets (`pa`) +- Retrieves the serialized file name from `serialized_files` table (`sf.name`) +- For AssetBundle builds, retrieves the AssetBundle name from `build_report_archive_contents` by matching BuildReport ID and PackedAssets path (`assetbundle` is NULL for Player builds) + +``` +CREATE VIEW build_report_packed_assets_view AS +SELECT + pa.id, + o.object_id, + brac.assetbundle, + pa.path, + pa.file_header_size, + br_obj.id as build_report_id, + sf.name as build_report_filename +FROM build_report_packed_assets pa +INNER JOIN objects o ON pa.id = o.id +INNER JOIN serialized_files sf ON o.serialized_file = sf.id +LEFT JOIN objects br_obj ON o.serialized_file = br_obj.serialized_file AND br_obj.type = 1125 +LEFT JOIN build_report_archive_contents brac ON br_obj.id = brac.build_report_id AND pa.path = brac.assetbundle_content; +``` + +### Column Naming + +For consistency and clarity, database columns use slightly different names than the BuildReport API: + +| Database Column | BuildReport API | Notes | +|-----------------|-----------------|-------| +| `build_report_packed_assets.path` | `PackedAssets.ShortPath` | Filename of the SerializedFile, .resS, or .resource file ("short" was redundant since only one path is recorded) | +| `build_report_packed_assets.file_header_size` | `PackedAssets.Overhead` | Size of the file header (zero for .resS and .resource files) | +| `build_report_packed_asset_info.object_id` | `PackedAssetInfo.fileID` | Local file ID of the object (renamed for consistency with `objects.object_id`) | +| `build_report_packed_asset_info.type` | `PackedAssetInfo.classID` | Unity object type (renamed for consistency with `objects.type`) | + +## Limitations + +**Duplicate filenames:** Multiple build reports cannot be imported into the same database if they share the same filename. This is a general UnityDataTool limitation that assumes unique SerializedFile names. + +**Type names:** While `build_report_packed_asset_info.type` records valid [Class IDs](https://docs.unity3d.com/Manual/ClassIDReference.html), the string type name may not exist in the `types` table. The `types` table is only populated when processing object instances (during TypeTree analysis). Analyzing both build output **and** build report together ensures types are fully populated; otherwise only numeric IDs are available. + +### Information Not Exported + +Currently, only the most useful BuildReport data is extracted to SQL. Additional data may be added as needed: + +* [Code stripping](https://docs.unity3d.com/ScriptReference/Build.Reporting.BuildReport-strippingInfo.html) appendix (IL2CPP Player builds) +* [ScenesUsingAssets](https://docs.unity3d.com/ScriptReference/Build.Reporting.BuildReport-scenesUsingAssets.html) (detailed build reports) +* `BuildReport.m_BuildSteps` array (SQL may not be ideal for this hierarchical data) +* `BuildAssetBundleInfoSet` appendix (undocumented object listing files in each AssetBundle; `build_report_archive_contents` currently derives this from the File list) +* Analytics-only appendices (unlikely to be valuable for analysis) + diff --git a/TestCommon/Data/BuildReport1/LastBuild.buildreport b/TestCommon/Data/BuildReports/AssetBundle.buildreport similarity index 100% rename from TestCommon/Data/BuildReport1/LastBuild.buildreport rename to TestCommon/Data/BuildReports/AssetBundle.buildreport diff --git a/TestCommon/Data/BuildReports/AssetBundle.buildreport.txt b/TestCommon/Data/BuildReports/AssetBundle.buildreport.txt new file mode 100644 index 0000000..e67e099 --- /dev/null +++ b/TestCommon/Data/BuildReports/AssetBundle.buildreport.txt @@ -0,0 +1,633 @@ +External References + +ID: -6210328523265720665 (ClassID: 1126) PackedAssets + m_ShortPath (string) CAB-76a378bdc9304bd3c3a82de8dd97981a.resource + m_Overhead (UInt64) 0 + m_Contents (vector) + Array[1] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 83 + packedSize (UInt64) 18496 + offset (UInt64) 0 + sourceAssetGUID (GUID) + data[0] (unsigned int) 510047344 + data[1] (unsigned int) 1200191226 + data[2] (unsigned int) 2021230213 + data[3] (unsigned int) 2122331027 + buildTimeAssetPath (string) Assets/audio/audio.mp3 + +ID: -5068572036128640151 (ClassID: 382020655) PluginBuildInfo + m_RuntimePlugins (vector) + Array[5] + data[0] (string) Newtonsoft.Json + data[1] (string) UnityAdsInitializationListener + data[2] (string) UnityAdsShowListener + data[3] (string) nunit.framework + data[4] (string) UnityAdsLoadListener + m_EditorPlugins (vector) + Array[15] + data[0] (string) Mono.Cecil.Pdb + data[1] (string) log4netPlastic + data[2] (string) JetBrains.Rider.PathLocator + data[3] (string) Mono.Cecil.Rocks + data[4] (string) unityplastic + data[5] (string) Mono.Cecil.Mdb + data[6] (string) Unity.Plastic.Newtonsoft.Json + data[7] (string) Unity.Analytics.Editor + data[8] (string) Unity.Plastic.Antlr3.Runtime + data[9] (string) zlib64Plastic + data[10] (string) liblz4Plastic + data[11] (string) lz4x64Plastic + data[12] (string) Unity.Analytics.Tracker + data[13] (string) AppleEventIntegration + data[14] (string) Mono.Cecil + +ID: -2699881322159949766 (ClassID: 1126) PackedAssets + m_ShortPath (string) CAB-6b49068aebcf9d3b05692c8efd933167 + m_Overhead (UInt64) 10720 + m_Contents (vector) + Array[7] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) -4266742476527514910 + classID (Type*) 213 + packedSize (UInt64) 464 + offset (UInt64) 10704 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1377324347 + data[1] (unsigned int) 1291145104 + data[2] (unsigned int) 2227835800 + data[3] (unsigned int) 660996637 + buildTimeAssetPath (string) Assets/Sprites/Snow 1.jpg + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) -3600607445234681765 + classID (Type*) 28 + packedSize (UInt64) 204 + offset (UInt64) 11168 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2731658232 + data[1] (unsigned int) 1324654785 + data[2] (unsigned int) 2360135852 + data[3] (unsigned int) 2253774587 + buildTimeAssetPath (string) Assets/Sprites/red.png + data[2] (BuildReportPackedAssetInfo) + fileID (SInt64) -2408881041259534328 + classID (Type*) 213 + packedSize (UInt64) 460 + offset (UInt64) 11376 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1179607688 + data[1] (unsigned int) 1278849281 + data[2] (unsigned int) 1374027963 + data[3] (unsigned int) 1900018330 + buildTimeAssetPath (string) Assets/Sprites/Snow.jpg + data[3] (BuildReportPackedAssetInfo) + fileID (SInt64) -1350043613627603771 + classID (Type*) 28 + packedSize (UInt64) 204 + offset (UInt64) 11840 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1179607688 + data[1] (unsigned int) 1278849281 + data[2] (unsigned int) 1374027963 + data[3] (unsigned int) 1900018330 + buildTimeAssetPath (string) Assets/Sprites/Snow.jpg + data[4] (BuildReportPackedAssetInfo) + fileID (SInt64) -39415655269619539 + classID (Type*) 28 + packedSize (UInt64) 208 + offset (UInt64) 12048 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1377324347 + data[1] (unsigned int) 1291145104 + data[2] (unsigned int) 2227835800 + data[3] (unsigned int) 660996637 + buildTimeAssetPath (string) Assets/Sprites/Snow 1.jpg + data[5] (BuildReportPackedAssetInfo) + fileID (SInt64) 1 + classID (Type*) 142 + packedSize (UInt64) 460 + offset (UInt64) 12256 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) AssetBundle Object + data[6] (BuildReportPackedAssetInfo) + fileID (SInt64) 3866367853307903194 + classID (Type*) 213 + packedSize (UInt64) 460 + offset (UInt64) 12720 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2731658232 + data[1] (unsigned int) 1324654785 + data[2] (unsigned int) 2360135852 + data[3] (unsigned int) 2253774587 + buildTimeAssetPath (string) Assets/Sprites/red.png + +ID: -1478881110413844972 (ClassID: 1126) PackedAssets + m_ShortPath (string) BuildPlayer-Scene2.sharedAssets + m_Overhead (UInt64) 83443 + m_Contents (vector) + Array[7] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 1 + classID (Type*) 150 + packedSize (UInt64) 121 + offset (UInt64) 83408 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 2 + classID (Type*) 142 + packedSize (UInt64) 184 + offset (UInt64) 83536 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) + data[2] (BuildReportPackedAssetInfo) + fileID (SInt64) 3 + classID (Type*) 21 + packedSize (UInt64) 1064 + offset (UInt64) 83728 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[3] (BuildReportPackedAssetInfo) + fileID (SInt64) 4 + classID (Type*) 21 + packedSize (UInt64) 268 + offset (UInt64) 84800 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[4] (BuildReportPackedAssetInfo) + fileID (SInt64) 5 + classID (Type*) 21 + packedSize (UInt64) 304 + offset (UInt64) 85072 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[5] (BuildReportPackedAssetInfo) + fileID (SInt64) 6 + classID (Type*) 48 + packedSize (UInt64) 49400 + offset (UInt64) 85376 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[6] (BuildReportPackedAssetInfo) + fileID (SInt64) 7 + classID (Type*) 48 + packedSize (UInt64) 6964 + offset (UInt64) 134784 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + +ID: -1012789659855765783 (ClassID: 1126) PackedAssets + m_ShortPath (string) CAB-a1e31f31856813b7384f999fbbf5e9b0 + m_Overhead (UInt64) 4040 + m_Contents (vector) + Array[2] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 1 + classID (Type*) 142 + packedSize (UInt64) 104 + offset (UInt64) 4032 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) AssetBundle Object + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 2 + classID (Type*) 290 + packedSize (UInt64) 184 + offset (UInt64) 4144 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Built-in AssetBundleManifest: AssetBundleManifest + +ID: 1 (ClassID: 1125) BuildReport + m_ObjectHideFlags (unsigned int) 0 + m_CorrespondingSourceObject (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_PrefabInstance (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_PrefabAsset (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_Name (string) Build AssetBundles + m_Summary (BuildSummary) + buildStartTime (DateTime) + ticks (SInt64) 638858729667744767 + buildGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + platformName (string) Win64 + platformGroupName (string) Standalone + subtarget (int) 2 + options (int) 0 + assetBundleOptions (int) 98817 + outputPath (string) C:/UnitySrc/BuildReportInspector/TestProject/Build/AssetBundles + crc (unsigned int) 4147003805 + totalSize (UInt64) 1434814 + totalTimeTicks (UInt64) 8038492 + totalErrors (int) 0 + totalWarnings (int) 0 + buildType (int) 2 + buildResult (int) 1 + multiProcessEnabled (bool) False + m_Files (vector) + Array[17] + data[0] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/audio.bundle/CAB-76a378bdc9304bd3c3a82de8dd97981a + role (string) SharedAssets + id (unsigned int) 0 + totalSize (UInt64) 3616 + data[1] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/audio.bundle/CAB-76a378bdc9304bd3c3a82de8dd97981a.resource + role (string) StreamingResourceFile + id (unsigned int) 1 + totalSize (UInt64) 18496 + data[2] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/audio.bundle + role (string) AssetBundle + id (unsigned int) 2 + totalSize (UInt64) 22256 + data[3] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/sprites.bundle/CAB-6b49068aebcf9d3b05692c8efd933167 + role (string) SharedAssets + id (unsigned int) 3 + totalSize (UInt64) 13180 + data[4] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/sprites.bundle/CAB-6b49068aebcf9d3b05692c8efd933167.resS + role (string) StreamingResourceFile + id (unsigned int) 4 + totalSize (UInt64) 1200464 + data[5] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/sprites.bundle + role (string) AssetBundle + id (unsigned int) 5 + totalSize (UInt64) 1213792 + data[6] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/audio.bundle.manifest + role (string) AssetBundleTextManifest + id (unsigned int) 6 + totalSize (UInt64) 488 + data[7] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/sprites.bundle.manifest + role (string) AssetBundleTextManifest + id (unsigned int) 7 + totalSize (UInt64) 581 + data[8] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle/BuildPlayer-Scene2 + role (string) Scene + id (unsigned int) 8 + totalSize (UInt64) 29008 + data[9] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle/BuildPlayer-SampleScene + role (string) Scene + id (unsigned int) 9 + totalSize (UInt64) 19344 + data[10] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle/BuildPlayer-SampleScene.sharedAssets + role (string) SharedAssets + id (unsigned int) 10 + totalSize (UInt64) 1213 + data[11] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle/BuildPlayer-Scene2.sharedAssets + role (string) SharedAssets + id (unsigned int) 11 + totalSize (UInt64) 141748 + data[12] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle + role (string) AssetBundle + id (unsigned int) 12 + totalSize (UInt64) 191504 + data[13] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle.manifest + role (string) AssetBundleTextManifest + id (unsigned int) 13 + totalSize (UInt64) 1372 + data[14] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/AssetBundles/CAB-a1e31f31856813b7384f999fbbf5e9b0 + role (string) ResourcesFile + id (unsigned int) 14 + totalSize (UInt64) 4328 + data[15] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/AssetBundles + role (string) ManifestAssetBundle + id (unsigned int) 15 + totalSize (UInt64) 4448 + data[16] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector/TestProject/AssetBundles.manifest + role (string) AssetBundleTextManifest + id (unsigned int) 16 + totalSize (UInt64) 373 + m_BuildSteps (vector) + Array[19] + data[0] (BuildStepInfo) + stepName (string) Build Asset Bundles + durationTicks (UInt64) 8038492 + depth (int) 0 + messages (vector) + Array[0] + data[1] (BuildStepInfo) + stepName (string) Calculate asset bundles to be built + durationTicks (UInt64) 13044 + depth (int) 1 + messages (vector) + Array[0] + data[2] (BuildStepInfo) + stepName (string) Prebuild Cleanup and Recompile + durationTicks (UInt64) 2608713 + depth (int) 1 + messages (vector) + Array[0] + data[3] (BuildStepInfo) + stepName (string) Compile scripts + durationTicks (UInt64) 2298122 + depth (int) 2 + messages (vector) + Array[0] + data[4] (BuildStepInfo) + stepName (string) Generate and validate platform script types + durationTicks (UInt64) 268349 + depth (int) 2 + messages (vector) + Array[0] + data[5] (BuildStepInfo) + stepName (string) Build bundle: audio.bundle + durationTicks (UInt64) 48102 + depth (int) 1 + messages (vector) + Array[0] + data[6] (BuildStepInfo) + stepName (string) Build bundle: sprites.bundle + durationTicks (UInt64) 99557 + depth (int) 1 + messages (vector) + Array[0] + data[7] (BuildStepInfo) + stepName (string) Build Scene AssetBundle(s) + durationTicks (UInt64) 2742249 + depth (int) 1 + messages (vector) + Array[0] + data[8] (BuildStepInfo) + stepName (string) Build bundle: scenes.bundle + durationTicks (UInt64) 2416551 + depth (int) 2 + messages (vector) + Array[0] + data[9] (BuildStepInfo) + stepName (string) Verify Build setup + durationTicks (UInt64) 217540 + depth (int) 3 + messages (vector) + Array[0] + data[10] (BuildStepInfo) + stepName (string) Prepare assets for target platform + durationTicks (UInt64) 56191 + depth (int) 3 + messages (vector) + Array[0] + data[11] (BuildStepInfo) + stepName (string) Building scenes + durationTicks (UInt64) 1157898 + depth (int) 3 + messages (vector) + Array[0] + data[12] (BuildStepInfo) + stepName (string) Building scene Assets/Scenes/Scene2.unity + durationTicks (UInt64) 652340 + depth (int) 4 + messages (vector) + Array[0] + data[13] (BuildStepInfo) + stepName (string) Building scene Assets/Scenes/SampleScene.unity + durationTicks (UInt64) 505218 + depth (int) 4 + messages (vector) + Array[0] + data[14] (BuildStepInfo) + stepName (string) Writing asset files + durationTicks (UInt64) 305260 + depth (int) 3 + messages (vector) + Array[0] + data[15] (BuildStepInfo) + stepName (string) Packaging assets - archive:/BuildPlayer-Scene2/BuildPlayer-SampleScene.sharedAssets + durationTicks (UInt64) 52472 + depth (int) 4 + messages (vector) + Array[0] + data[16] (BuildStepInfo) + stepName (string) Packaging assets - archive:/BuildPlayer-Scene2/BuildPlayer-Scene2.sharedAssets + durationTicks (UInt64) 243071 + depth (int) 4 + messages (vector) + Array[0] + data[17] (BuildStepInfo) + stepName (string) Creating compressed player package + durationTicks (UInt64) 22510 + depth (int) 3 + messages (vector) + Array[0] + data[18] (BuildStepInfo) + stepName (string) Postprocess built player + durationTicks (UInt64) 70340 + depth (int) 3 + messages (vector) + Array[0] + m_Appendices (vector) + Array>[11] + data[0] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 6668369999605714922 + data[1] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 4690487375616820380 + data[2] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -6210328523265720665 + data[3] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -2699881322159949766 + data[4] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 6958117599249036206 + data[5] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 2944972063485144436 + data[6] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -1478881110413844972 + data[7] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -5068572036128640151 + data[8] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 6043972027667874493 + data[9] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 6371803369801214078 + data[10] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -1012789659855765783 + +ID: 2944972063485144436 (ClassID: 1126) PackedAssets + m_ShortPath (string) BuildPlayer-SampleScene.sharedAssets + m_Overhead (UInt64) 1120 + m_Contents (vector) + Array[1] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 1 + classID (Type*) 150 + packedSize (UInt64) 93 + offset (UInt64) 1120 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) + +ID: 4690487375616820380 (ClassID: 1126) PackedAssets + m_ShortPath (string) CAB-76a378bdc9304bd3c3a82de8dd97981a + m_Overhead (UInt64) 3312 + m_Contents (vector) + Array[2] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) -1630896013228033972 + classID (Type*) 83 + packedSize (UInt64) 160 + offset (UInt64) 3312 + sourceAssetGUID (GUID) + data[0] (unsigned int) 510047344 + data[1] (unsigned int) 1200191226 + data[2] (unsigned int) 2021230213 + data[3] (unsigned int) 2122331027 + buildTimeAssetPath (string) Assets/audio/audio.mp3 + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 1 + classID (Type*) 142 + packedSize (UInt64) 144 + offset (UInt64) 3472 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) AssetBundle Object + +ID: 6043972027667874493 (ClassID: 641289076) AudioBuildInfo + m_IsAudioDisabled (bool) False + m_AudioClipCount (int) 1 + m_AudioMixerCount (int) 0 + +ID: 6371803369801214078 (ClassID: 1521398425) VideoBuildInfo + m_VideoClipCount (int) 0 + m_IsVideoModuleDisabled (bool) False + +ID: 6668369999605714922 (ClassID: 668709126) BuiltAssetBundleInfoSet + bundleInfos (vector) + Array[4] + data[0] (BuiltAssetBundleInfo) + bundleName (string) audio.bundle + bundleArchiveFile (unsigned int) 2 + packagedFileIndices (vector) + Array[2] + 0, 1 + data[1] (BuiltAssetBundleInfo) + bundleName (string) sprites.bundle + bundleArchiveFile (unsigned int) 5 + packagedFileIndices (vector) + Array[2] + 3, 4 + data[2] (BuiltAssetBundleInfo) + bundleName (string) scenes.bundle + bundleArchiveFile (unsigned int) 12 + packagedFileIndices (vector) + Array[4] + 8, 9, 10, 11 + data[3] (BuiltAssetBundleInfo) + bundleName (string) AssetBundles + bundleArchiveFile (unsigned int) 15 + packagedFileIndices (vector) + Array[1] + 14 + +ID: 6958117599249036206 (ClassID: 1126) PackedAssets + m_ShortPath (string) CAB-6b49068aebcf9d3b05692c8efd933167.resS + m_Overhead (UInt64) 13 + m_Contents (vector) + Array[3] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 28 + packedSize (UInt64) 151875 + offset (UInt64) 0 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2731658232 + data[1] (unsigned int) 1324654785 + data[2] (unsigned int) 2360135852 + data[3] (unsigned int) 2253774587 + buildTimeAssetPath (string) Assets/Sprites/red.png + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 28 + packedSize (UInt64) 524288 + offset (UInt64) 151888 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1179607688 + data[1] (unsigned int) 1278849281 + data[2] (unsigned int) 1374027963 + data[3] (unsigned int) 1900018330 + buildTimeAssetPath (string) Assets/Sprites/Snow.jpg + data[2] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 28 + packedSize (UInt64) 524288 + offset (UInt64) 676176 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1377324347 + data[1] (unsigned int) 1291145104 + data[2] (unsigned int) 2227835800 + data[3] (unsigned int) 660996637 + buildTimeAssetPath (string) Assets/Sprites/Snow 1.jpg + diff --git a/TestCommon/Data/BuildReports/Player.buildreport b/TestCommon/Data/BuildReports/Player.buildreport new file mode 100644 index 0000000000000000000000000000000000000000..e70879e1464204ab503daf281657e8c8a0fc61aa GIT binary patch literal 66784 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[5] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 1 + classID (Type*) 150 + packedSize (UInt64) 49 + offset (UInt64) 432 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 2 + classID (Type*) 28 + packedSize (UInt64) 144 + offset (UInt64) 496 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1179607688 + data[1] (unsigned int) 1278849281 + data[2] (unsigned int) 1374027963 + data[3] (unsigned int) 1900018330 + buildTimeAssetPath (string) Assets/Sprites/Snow.jpg + data[2] (BuildReportPackedAssetInfo) + fileID (SInt64) 3 + classID (Type*) 28 + packedSize (UInt64) 144 + offset (UInt64) 640 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2731658232 + data[1] (unsigned int) 1324654785 + data[2] (unsigned int) 2360135852 + data[3] (unsigned int) 2253774587 + buildTimeAssetPath (string) Assets/Sprites/red.png + data[3] (BuildReportPackedAssetInfo) + fileID (SInt64) 4 + classID (Type*) 213 + packedSize (UInt64) 460 + offset (UInt64) 784 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1179607688 + data[1] (unsigned int) 1278849281 + data[2] (unsigned int) 1374027963 + data[3] (unsigned int) 1900018330 + buildTimeAssetPath (string) Assets/Sprites/Snow.jpg + data[4] (BuildReportPackedAssetInfo) + fileID (SInt64) 5 + classID (Type*) 213 + packedSize (UInt64) 460 + offset (UInt64) 1248 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2731658232 + data[1] (unsigned int) 1324654785 + data[2] (unsigned int) 2360135852 + data[3] (unsigned int) 2253774587 + buildTimeAssetPath (string) Assets/Sprites/red.png + +ID: -8406665477514816739 (ClassID: 1521398425) VideoBuildInfo + m_VideoClipCount (int) 0 + m_IsVideoModuleDisabled (bool) False + +ID: -4621170717555149581 (ClassID: 1126) PackedAssets + m_ShortPath (string) globalgamemanagers.assets + m_Overhead (UInt64) 7195 + m_Contents (vector) + Array[229] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 1 + classID (Type*) 150 + packedSize (UInt64) 229 + offset (UInt64) 30624 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 2 + classID (Type*) 21 + packedSize (UInt64) 304 + offset (UInt64) 30864 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[2] (BuildReportPackedAssetInfo) + fileID (SInt64) 3 + classID (Type*) 28 + packedSize (UInt64) 168 + offset (UInt64) 31168 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Built-in Texture2D: Splash Screen Unity Logo + data[3] (BuildReportPackedAssetInfo) + fileID (SInt64) 4 + classID (Type*) 28 + packedSize (UInt64) 156 + offset (UInt64) 31344 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[4] (BuildReportPackedAssetInfo) + fileID (SInt64) 5 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 5808 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2352178688 + data[1] (unsigned int) 1240092522 + data[2] (unsigned int) 2142943658 + data[3] (unsigned int) 706626338 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/LayoutRebuilder.cs + data[5] (BuildReportPackedAssetInfo) + fileID (SInt64) 6 + classID (Type*) 115 + packedSize (UInt64) 128 + offset (UInt64) 5920 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3049696528 + data[1] (unsigned int) 1192331207 + data[2] (unsigned int) 3261497741 + data[3] (unsigned int) 3099148142 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/AnimationPreviewUtilities.cs + data[6] (BuildReportPackedAssetInfo) + fileID (SInt64) 7 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 6048 + sourceAssetGUID (GUID) + data[0] (unsigned int) 474931232 + data[1] (unsigned int) 1121167511 + data[2] (unsigned int) 4224234659 + data[3] (unsigned int) 3536504558 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/PositionAsUV1.cs + data[7] (BuildReportPackedAssetInfo) + fileID (SInt64) 8 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 6160 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1012461616 + data[1] (unsigned int) 1334997887 + data[2] (unsigned int) 4134496159 + data[3] (unsigned int) 1468740287 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/AnimationPlayableAsset.cs + data[8] (BuildReportPackedAssetInfo) + fileID (SInt64) 9 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 6288 + sourceAssetGUID (GUID) + data[0] (unsigned int) 950782032 + data[1] (unsigned int) 1013219782 + data[2] (unsigned int) 771080618 + data[3] (unsigned int) 2007935022 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SubMeshUI.cs + data[9] (BuildReportPackedAssetInfo) + fileID (SInt64) 10 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 6384 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4021590384 + data[1] (unsigned int) 3181699256 + data[2] (unsigned int) 3982523769 + data[3] (unsigned int) 1568976597 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SubMesh.cs + data[10] (BuildReportPackedAssetInfo) + fileID (SInt64) 11 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 6480 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2522288288 + data[1] (unsigned int) 1313283835 + data[2] (unsigned int) 1266249880 + data[3] (unsigned int) 3417031789 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontAssetUtilities.cs + data[11] (BuildReportPackedAssetInfo) + fileID (SInt64) 12 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 6592 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3343952544 + data[1] (unsigned int) 1239835998 + data[2] (unsigned int) 3423240624 + data[3] (unsigned int) 962872077 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/UIBehaviour.cs + data[12] (BuildReportPackedAssetInfo) + fileID (SInt64) 13 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 6704 + sourceAssetGUID (GUID) + data[0] (unsigned int) 29642176 + data[1] (unsigned int) 1235426835 + data[2] (unsigned int) 73624499 + data[3] (unsigned int) 1742403136 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/CanvasScaler.cs + data[13] (BuildReportPackedAssetInfo) + fileID (SInt64) 14 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 6800 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4065767632 + data[1] (unsigned int) 1120676387 + data[2] (unsigned int) 542011795 + data[3] (unsigned int) 1678707448 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Dropdown.cs + data[14] (BuildReportPackedAssetInfo) + fileID (SInt64) 15 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 6896 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1615464144 + data[1] (unsigned int) 1129072314 + data[2] (unsigned int) 420707742 + data[3] (unsigned int) 3780776420 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Audio/AudioClipProperties.cs + data[15] (BuildReportPackedAssetInfo) + fileID (SInt64) 16 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 7008 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1124755985 + data[1] (unsigned int) 3281275066 + data[2] (unsigned int) 2784652779 + data[3] (unsigned int) 3095308926 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/MaterialReferenceManager.cs + data[16] (BuildReportPackedAssetInfo) + fileID (SInt64) 17 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 7120 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2352759857 + data[1] (unsigned int) 1244276434 + data[2] (unsigned int) 2372359073 + data[3] (unsigned int) 2923334586 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/RawImage.cs + data[17] (BuildReportPackedAssetInfo) + fileID (SInt64) 18 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 7216 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1181342769 + data[1] (unsigned int) 1161022984 + data[2] (unsigned int) 518525883 + data[3] (unsigned int) 4143959274 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/FontData.cs + data[18] (BuildReportPackedAssetInfo) + fileID (SInt64) 19 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 7312 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3939242321 + data[1] (unsigned int) 1291620759 + data[2] (unsigned int) 3115517622 + data[3] (unsigned int) 1238234931 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/BaseInput.cs + data[19] (BuildReportPackedAssetInfo) + fileID (SInt64) 20 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 7424 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4143463505 + data[1] (unsigned int) 1108363546 + data[2] (unsigned int) 1870373309 + data[3] (unsigned int) 495331311 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Signals/SignalEmitter.cs + data[20] (BuildReportPackedAssetInfo) + fileID (SInt64) 21 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 7536 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1416826449 + data[1] (unsigned int) 1171865360 + data[2] (unsigned int) 1966212030 + data[3] (unsigned int) 3773183558 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Control/ControlTrack.cs + data[21] (BuildReportPackedAssetInfo) + fileID (SInt64) 22 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 7632 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1806174881 + data[1] (unsigned int) 1257244686 + data[2] (unsigned int) 1926586020 + data[3] (unsigned int) 1043481048 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/ScrollRect.cs + data[22] (BuildReportPackedAssetInfo) + fileID (SInt64) 23 + classID (Type*) 115 + packedSize (UInt64) 140 + offset (UInt64) 7728 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1328450993 + data[1] (unsigned int) 2269431463 + data[2] (unsigned int) 3986749626 + data[3] (unsigned int) 3112073319 + buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/IOnboardingSection.cs + data[23] (BuildReportPackedAssetInfo) + fileID (SInt64) 24 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 7872 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1888979921 + data[1] (unsigned int) 1330948560 + data[2] (unsigned int) 3858613900 + data[3] (unsigned int) 1607866005 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/TimeControlPlayable.cs + data[24] (BuildReportPackedAssetInfo) + fileID (SInt64) 25 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 7984 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4024409297 + data[1] (unsigned int) 1200253462 + data[2] (unsigned int) 2562125993 + data[3] (unsigned int) 3616073035 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/ILayerable.cs + data[25] (BuildReportPackedAssetInfo) + fileID (SInt64) 26 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 8080 + sourceAssetGUID (GUID) + data[0] (unsigned int) 181269473 + data[1] (unsigned int) 4115476288 + data[2] (unsigned int) 1575729806 + data[3] (unsigned int) 1572506135 + buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/NavMeshModifier.cs + data[26] (BuildReportPackedAssetInfo) + fileID (SInt64) 27 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 8192 + sourceAssetGUID (GUID) + data[0] (unsigned int) 427825889 + data[1] (unsigned int) 1158842333 + data[2] (unsigned int) 3077304492 + data[3] (unsigned int) 670493164 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/BaseInputModule.cs + data[27] (BuildReportPackedAssetInfo) + fileID (SInt64) 28 + classID (Type*) 115 + packedSize (UInt64) 124 + offset (UInt64) 8304 + sourceAssetGUID (GUID) + data[0] (unsigned int) 344870369 + data[1] (unsigned int) 1280432696 + data[2] (unsigned int) 2736399283 + data[3] (unsigned int) 2310351566 + buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/ArmModels/ArmModel.cs + data[28] (BuildReportPackedAssetInfo) + fileID (SInt64) 29 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 8432 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3504841457 + data[1] (unsigned int) 1253815985 + data[2] (unsigned int) 48319104 + data[3] (unsigned int) 3274462358 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/TimelineUndo.cs + data[29] (BuildReportPackedAssetInfo) + fileID (SInt64) 30 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 8528 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3629634050 + data[1] (unsigned int) 1166455297 + data[2] (unsigned int) 3099596698 + data[3] (unsigned int) 3259481401 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteCharacter.cs + data[30] (BuildReportPackedAssetInfo) + fileID (SInt64) 31 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 8640 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1968937474 + data[1] (unsigned int) 4254340682 + data[2] (unsigned int) 2745436923 + data[3] (unsigned int) 2858354695 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextProcessingStack.cs + data[31] (BuildReportPackedAssetInfo) + fileID (SInt64) 32 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 8752 + sourceAssetGUID (GUID) + data[0] (unsigned int) 941948674 + data[1] (unsigned int) 1141799023 + data[2] (unsigned int) 2403432320 + data[3] (unsigned int) 4090942658 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/MaterialModifiers/IMaterialModifier.cs + data[32] (BuildReportPackedAssetInfo) + fileID (SInt64) 33 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 8864 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1475633938 + data[1] (unsigned int) 1268490180 + data[2] (unsigned int) 843515559 + data[3] (unsigned int) 1710902563 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Compatibility.cs + data[33] (BuildReportPackedAssetInfo) + fileID (SInt64) 34 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 8976 + sourceAssetGUID (GUID) + data[0] (unsigned int) 402127634 + data[1] (unsigned int) 1177372882 + data[2] (unsigned int) 711900807 + data[3] (unsigned int) 2205233049 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Activation/ActivationTrack.cs + data[34] (BuildReportPackedAssetInfo) + fileID (SInt64) 35 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 9088 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3597440306 + data[1] (unsigned int) 1162609134 + data[2] (unsigned int) 2930177948 + data[3] (unsigned int) 586104392 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventInterfaces.cs + data[35] (BuildReportPackedAssetInfo) + fileID (SInt64) 36 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 9200 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2441153362 + data[1] (unsigned int) 1229332076 + data[2] (unsigned int) 3114450306 + data[3] (unsigned int) 1178584178 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/SpriteState.cs + data[36] (BuildReportPackedAssetInfo) + fileID (SInt64) 37 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 9296 + sourceAssetGUID (GUID) + data[0] (unsigned int) 783316322 + data[1] (unsigned int) 1167147258 + data[2] (unsigned int) 3391057541 + data[3] (unsigned int) 243582449 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/RaycasterManager.cs + data[37] (BuildReportPackedAssetInfo) + fileID (SInt64) 38 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 9408 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2769440882 + data[1] (unsigned int) 129272668 + data[2] (unsigned int) 906349739 + data[3] (unsigned int) 423521970 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Settings.cs + data[38] (BuildReportPackedAssetInfo) + fileID (SInt64) 39 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 9504 + sourceAssetGUID (GUID) + data[0] (unsigned int) 565443954 + data[1] (unsigned int) 1202769983 + data[2] (unsigned int) 2476743578 + data[3] (unsigned int) 4280306822 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontFeaturesCommon.cs + data[39] (BuildReportPackedAssetInfo) + fileID (SInt64) 40 + classID (Type*) 115 + packedSize (UInt64) 140 + offset (UInt64) 9616 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3613197714 + data[1] (unsigned int) 1307446522 + data[2] (unsigned int) 2386931604 + data[3] (unsigned int) 3326184632 + buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/ArmModels/SwingArmModel.cs + data[40] (BuildReportPackedAssetInfo) + fileID (SInt64) 41 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 9760 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3628556706 + data[1] (unsigned int) 1320031817 + data[2] (unsigned int) 2614437798 + data[3] (unsigned int) 154523255 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/MarkerTrack.cs + data[41] (BuildReportPackedAssetInfo) + fileID (SInt64) 42 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 9856 + sourceAssetGUID (GUID) + data[0] (unsigned int) 444322978 + data[1] (unsigned int) 1132624193 + data[2] (unsigned int) 3071364748 + data[3] (unsigned int) 984780062 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Scrollbar.cs + data[42] (BuildReportPackedAssetInfo) + fileID (SInt64) 43 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 9952 + sourceAssetGUID (GUID) + data[0] (unsigned int) 477861074 + data[1] (unsigned int) 1192111563 + data[2] (unsigned int) 450119833 + data[3] (unsigned int) 3627084658 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/TouchInputModule.cs + data[43] (BuildReportPackedAssetInfo) + fileID (SInt64) 44 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 10064 + sourceAssetGUID (GUID) + data[0] (unsigned int) 559680210 + data[1] (unsigned int) 1316262431 + data[2] (unsigned int) 1637056408 + data[3] (unsigned int) 2893887353 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_InputField.cs + data[44] (BuildReportPackedAssetInfo) + fileID (SInt64) 45 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 10160 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4230937330 + data[1] (unsigned int) 1201074542 + data[2] (unsigned int) 3256460696 + data[3] (unsigned int) 529421683 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/ToggleGroup.cs + data[45] (BuildReportPackedAssetInfo) + fileID (SInt64) 46 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 10256 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2748925443 + data[1] (unsigned int) 1285139193 + data[2] (unsigned int) 1712437160 + data[3] (unsigned int) 170899083 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/HorizontalLayoutGroup.cs + data[46] (BuildReportPackedAssetInfo) + fileID (SInt64) 47 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 10384 + sourceAssetGUID (GUID) + data[0] (unsigned int) 747423235 + data[1] (unsigned int) 1092081995 + data[2] (unsigned int) 1931885230 + data[3] (unsigned int) 1645399912 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/LayoutElement.cs + data[47] (BuildReportPackedAssetInfo) + fileID (SInt64) 48 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 10496 + sourceAssetGUID (GUID) + data[0] (unsigned int) 410905347 + data[1] (unsigned int) 2838765646 + data[2] (unsigned int) 870640779 + data[3] (unsigned int) 1360529269 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Style.cs + data[48] (BuildReportPackedAssetInfo) + fileID (SInt64) 49 + classID (Type*) 115 + packedSize (UInt64) 76 + offset (UInt64) 10592 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1095309843 + data[1] (unsigned int) 1319493964 + data[2] (unsigned int) 872033962 + data[3] (unsigned int) 1864466159 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Mask.cs + data[49] (BuildReportPackedAssetInfo) + fileID (SInt64) 50 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 10672 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2569613859 + data[1] (unsigned int) 852774581 + data[2] (unsigned int) 3754331194 + data[3] (unsigned int) 4164481657 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_DefaultControls.cs + data[50] (BuildReportPackedAssetInfo) + fileID (SInt64) 51 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 10784 + sourceAssetGUID (GUID) + data[0] (unsigned int) 701387811 + data[1] (unsigned int) 1095538023 + data[2] (unsigned int) 495930528 + data[3] (unsigned int) 2177642567 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/ContentSizeFitter.cs + data[51] (BuildReportPackedAssetInfo) + fileID (SInt64) 52 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 10896 + sourceAssetGUID (GUID) + data[0] (unsigned int) 768947491 + data[1] (unsigned int) 1309830217 + data[2] (unsigned int) 1135343506 + data[3] (unsigned int) 633451803 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/Extrapolation.cs + data[52] (BuildReportPackedAssetInfo) + fileID (SInt64) 53 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 11008 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2281721123 + data[1] (unsigned int) 1975787882 + data[2] (unsigned int) 2185981352 + data[3] (unsigned int) 3806758397 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TextContainer.cs + data[53] (BuildReportPackedAssetInfo) + fileID (SInt64) 54 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 11104 + sourceAssetGUID (GUID) + data[0] (unsigned int) 930947379 + data[1] (unsigned int) 1261279385 + data[2] (unsigned int) 2436293022 + data[3] (unsigned int) 1742117534 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/RectMask2D.cs + data[54] (BuildReportPackedAssetInfo) + fileID (SInt64) 55 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 11200 + sourceAssetGUID (GUID) + data[0] (unsigned int) 285548099 + data[1] (unsigned int) 3391406530 + data[2] (unsigned int) 632320312 + data[3] (unsigned int) 574523789 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_ScrollbarEventHandler.cs + data[55] (BuildReportPackedAssetInfo) + fileID (SInt64) 56 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 11328 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3465348435 + data[1] (unsigned int) 1136300790 + data[2] (unsigned int) 2850707853 + data[3] (unsigned int) 738614580 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/RaycastResult.cs + data[56] (BuildReportPackedAssetInfo) + fileID (SInt64) 57 + classID (Type*) 115 + packedSize (UInt64) 124 + offset (UInt64) 11440 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1557503571 + data[1] (unsigned int) 2202448639 + data[2] (unsigned int) 2816280704 + data[3] (unsigned int) 1954687324 + buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/NavMeshModifierVolume.cs + data[57] (BuildReportPackedAssetInfo) + fileID (SInt64) 58 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 11568 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1084479587 + data[1] (unsigned int) 1091075721 + data[2] (unsigned int) 1520989613 + data[3] (unsigned int) 2037572943 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/ILayoutElement.cs + data[58] (BuildReportPackedAssetInfo) + fileID (SInt64) 59 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 11680 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3384193395 + data[1] (unsigned int) 1191562664 + data[2] (unsigned int) 1785130149 + data[3] (unsigned int) 407334879 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Culling/IClipRegion.cs + data[59] (BuildReportPackedAssetInfo) + fileID (SInt64) 60 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 11776 + sourceAssetGUID (GUID) + data[0] (unsigned int) 375700115 + data[1] (unsigned int) 1273530662 + data[2] (unsigned int) 2671002511 + data[3] (unsigned int) 2355084049 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/FontUpdateTracker.cs + data[60] (BuildReportPackedAssetInfo) + fileID (SInt64) 61 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 11888 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2518900131 + data[1] (unsigned int) 1208034428 + data[2] (unsigned int) 1083143866 + data[3] (unsigned int) 239702421 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TrackAsset.cs + data[61] (BuildReportPackedAssetInfo) + fileID (SInt64) 62 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 11984 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1753329075 + data[1] (unsigned int) 2699360351 + data[2] (unsigned int) 4796699 + data[3] (unsigned int) 3996911131 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Asset.cs + data[62] (BuildReportPackedAssetInfo) + fileID (SInt64) 63 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 12080 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3242301923 + data[1] (unsigned int) 1224654173 + data[2] (unsigned int) 3145938084 + data[3] (unsigned int) 2561685880 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelineAttributes.cs + data[63] (BuildReportPackedAssetInfo) + fileID (SInt64) 64 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 12208 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3610360836 + data[1] (unsigned int) 1315015136 + data[2] (unsigned int) 3725857960 + data[3] (unsigned int) 3672046129 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/TimelineCreateUtilities.cs + data[64] (BuildReportPackedAssetInfo) + fileID (SInt64) 65 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 12336 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1130370596 + data[1] (unsigned int) 1184886953 + data[2] (unsigned int) 2266490031 + data[3] (unsigned int) 1598700828 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/Raycasters/BaseRaycaster.cs + data[65] (BuildReportPackedAssetInfo) + fileID (SInt64) 66 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 12448 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1176130356 + data[1] (unsigned int) 1075013563 + data[2] (unsigned int) 556075148 + data[3] (unsigned int) 4120367916 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/MarkerList.cs + data[66] (BuildReportPackedAssetInfo) + fileID (SInt64) 67 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 12544 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3356543284 + data[1] (unsigned int) 1240012367 + data[2] (unsigned int) 17996445 + data[3] (unsigned int) 2283446508 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/PrefabControlPlayable.cs + data[67] (BuildReportPackedAssetInfo) + fileID (SInt64) 68 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 12672 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3486369092 + data[1] (unsigned int) 1236002631 + data[2] (unsigned int) 1601812610 + data[3] (unsigned int) 3207244136 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/GraphicRebuildTracker.cs + data[68] (BuildReportPackedAssetInfo) + fileID (SInt64) 69 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 12800 + sourceAssetGUID (GUID) + data[0] (unsigned int) 395278212 + data[1] (unsigned int) 1189426707 + data[2] (unsigned int) 3830222720 + data[3] (unsigned int) 3784796373 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_ResourcesManager.cs + data[69] (BuildReportPackedAssetInfo) + fileID (SInt64) 70 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 12912 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1319327876 + data[1] (unsigned int) 1183035224 + data[2] (unsigned int) 480330626 + data[3] (unsigned int) 122823086 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Control/ControlPlayableAsset.cs + data[70] (BuildReportPackedAssetInfo) + fileID (SInt64) 71 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 13024 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1785420964 + data[1] (unsigned int) 1230760613 + data[2] (unsigned int) 1752907399 + data[3] (unsigned int) 1126145542 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Character.cs + data[71] (BuildReportPackedAssetInfo) + fileID (SInt64) 72 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 13120 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4092882596 + data[1] (unsigned int) 1887698983 + data[2] (unsigned int) 2677120922 + data[3] (unsigned int) 3171919660 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextInfo.cs + data[72] (BuildReportPackedAssetInfo) + fileID (SInt64) 73 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 13216 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2895518660 + data[1] (unsigned int) 1339942762 + data[2] (unsigned int) 3750998925 + data[3] (unsigned int) 1419407760 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/IMarker.cs + data[73] (BuildReportPackedAssetInfo) + fileID (SInt64) 74 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 13312 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2317062884 + data[1] (unsigned int) 1152703486 + data[2] (unsigned int) 1634988987 + data[3] (unsigned int) 4285592446 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Button.cs + data[74] (BuildReportPackedAssetInfo) + fileID (SInt64) 75 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 13408 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2020262132 + data[1] (unsigned int) 72645284 + data[2] (unsigned int) 1593103291 + data[3] (unsigned int) 3434516234 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextUtilities.cs + data[75] (BuildReportPackedAssetInfo) + fileID (SInt64) 76 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 13520 + sourceAssetGUID (GUID) + data[0] (unsigned int) 115147252 + data[1] (unsigned int) 1074186070 + data[2] (unsigned int) 2805135237 + data[3] (unsigned int) 1317997031 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Audio/AudioPlayableAsset.cs + data[76] (BuildReportPackedAssetInfo) + fileID (SInt64) 77 + classID (Type*) 115 + packedSize (UInt64) 124 + offset (UInt64) 13632 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4106302196 + data[1] (unsigned int) 1228892283 + data[2] (unsigned int) 2332669606 + data[3] (unsigned int) 2003324008 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/StandaloneInputModule.cs + data[77] (BuildReportPackedAssetInfo) + fileID (SInt64) 78 + classID (Type*) 115 + packedSize (UInt64) 128 + offset (UInt64) 13760 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2579245061 + data[1] (unsigned int) 1220124554 + data[2] (unsigned int) 1267586189 + data[3] (unsigned int) 3919786588 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/INotificationOptionProvider.cs + data[78] (BuildReportPackedAssetInfo) + fileID (SInt64) 79 + classID (Type*) 115 + packedSize (UInt64) 136 + offset (UInt64) 13888 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4194262277 + data[1] (unsigned int) 2000992846 + data[2] (unsigned int) 3628510843 + data[3] (unsigned int) 496908314 + buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/StyleConstants.cs + data[79] (BuildReportPackedAssetInfo) + fileID (SInt64) 80 + classID (Type*) 115 + packedSize (UInt64) 80 + offset (UInt64) 14032 + sourceAssetGUID (GUID) + data[0] (unsigned int) 408892437 + data[1] (unsigned int) 1401161328 + data[2] (unsigned int) 2951061946 + data[3] (unsigned int) 3749808338 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Text.cs + data[80] (BuildReportPackedAssetInfo) + fileID (SInt64) 81 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 14112 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1083986245 + data[1] (unsigned int) 1312603980 + data[2] (unsigned int) 749949577 + data[3] (unsigned int) 3698570856 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/ITimeControl.cs + data[81] (BuildReportPackedAssetInfo) + fileID (SInt64) 82 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 14208 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3997655877 + data[1] (unsigned int) 1142646652 + data[2] (unsigned int) 969052578 + data[3] (unsigned int) 1000195810 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextElement.cs + data[82] (BuildReportPackedAssetInfo) + fileID (SInt64) 83 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 14304 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3874565445 + data[1] (unsigned int) 1952756716 + data[2] (unsigned int) 4163092729 + data[3] (unsigned int) 242222792 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_ColorGradient.cs + data[83] (BuildReportPackedAssetInfo) + fileID (SInt64) 84 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 14416 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2781242981 + data[1] (unsigned int) 1173451012 + data[2] (unsigned int) 1632490375 + data[3] (unsigned int) 4213503050 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/Raycasters/Physics2DRaycaster.cs + data[84] (BuildReportPackedAssetInfo) + fileID (SInt64) 85 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 14544 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2520878997 + data[1] (unsigned int) 1116733315 + data[2] (unsigned int) 662566332 + data[3] (unsigned int) 1467317091 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/VerticalLayoutGroup.cs + data[85] (BuildReportPackedAssetInfo) + fileID (SInt64) 86 + classID (Type*) 115 + packedSize (UInt64) 132 + offset (UInt64) 14656 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1137287845 + data[1] (unsigned int) 1331234045 + data[2] (unsigned int) 2676672951 + data[3] (unsigned int) 3052761431 + buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/TrackedPoseDriver/TrackedPoseDriver.cs + data[86] (BuildReportPackedAssetInfo) + fileID (SInt64) 87 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 14800 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1973863861 + data[1] (unsigned int) 1278955622 + data[2] (unsigned int) 388856746 + data[3] (unsigned int) 1928693561 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteGlyph.cs + data[87] (BuildReportPackedAssetInfo) + fileID (SInt64) 88 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 14896 + sourceAssetGUID (GUID) + data[0] (unsigned int) 929012453 + data[1] (unsigned int) 1241549645 + data[2] (unsigned int) 439933369 + data[3] (unsigned int) 2292236655 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontFeatureTable.cs + data[88] (BuildReportPackedAssetInfo) + fileID (SInt64) 89 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 15008 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3044797413 + data[1] (unsigned int) 1076126109 + data[2] (unsigned int) 477051832 + data[3] (unsigned int) 1726871865 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/MultipleDisplayUtilities.cs + data[89] (BuildReportPackedAssetInfo) + fileID (SInt64) 90 + classID (Type*) 115 + packedSize (UInt64) 76 + offset (UInt64) 15136 + sourceAssetGUID (GUID) + data[0] (unsigned int) 437266421 + data[1] (unsigned int) 1291803090 + data[2] (unsigned int) 1507411088 + data[3] (unsigned int) 591381295 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Text.cs + data[90] (BuildReportPackedAssetInfo) + fileID (SInt64) 91 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 15216 + sourceAssetGUID (GUID) + data[0] (unsigned int) 34613782 + data[1] (unsigned int) 1211485660 + data[2] (unsigned int) 3473001401 + data[3] (unsigned int) 3824153864 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/IMaskable.cs + data[91] (BuildReportPackedAssetInfo) + fileID (SInt64) 92 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 15312 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2635681046 + data[1] (unsigned int) 1277766121 + data[2] (unsigned int) 282579338 + data[3] (unsigned int) 2920838266 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Navigation.cs + data[92] (BuildReportPackedAssetInfo) + fileID (SInt64) 93 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 15408 + sourceAssetGUID (GUID) + data[0] (unsigned int) 446153510 + data[1] (unsigned int) 1229664542 + data[2] (unsigned int) 2365317025 + data[3] (unsigned int) 3750662616 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/ExecuteEvents.cs + data[93] (BuildReportPackedAssetInfo) + fileID (SInt64) 94 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 15520 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2045666870 + data[1] (unsigned int) 1142184815 + data[2] (unsigned int) 3089126681 + data[3] (unsigned int) 2773710921 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteAnimator.cs + data[94] (BuildReportPackedAssetInfo) + fileID (SInt64) 95 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 15632 + sourceAssetGUID (GUID) + data[0] (unsigned int) 468830294 + data[1] (unsigned int) 2828304020 + data[2] (unsigned int) 202057482 + data[3] (unsigned int) 254933823 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_CoroutineTween.cs + data[95] (BuildReportPackedAssetInfo) + fileID (SInt64) 96 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 15728 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1816805206 + data[1] (unsigned int) 1249023207 + data[2] (unsigned int) 3056630663 + data[3] (unsigned int) 1040896490 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelineClip.cs + data[96] (BuildReportPackedAssetInfo) + fileID (SInt64) 97 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 15824 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1738123110 + data[1] (unsigned int) 1212546482 + data[2] (unsigned int) 1965075135 + data[3] (unsigned int) 778649075 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/ClipCaps.cs + data[97] (BuildReportPackedAssetInfo) + fileID (SInt64) 98 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 15936 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3750439782 + data[1] (unsigned int) 1286912465 + data[2] (unsigned int) 863024796 + data[3] (unsigned int) 1059229093 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/IPropertyCollector.cs + data[98] (BuildReportPackedAssetInfo) + fileID (SInt64) 99 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 16048 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4176067958 + data[1] (unsigned int) 1285464800 + data[2] (unsigned int) 1798184112 + data[3] (unsigned int) 1265247540 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Slider.cs + data[99] (BuildReportPackedAssetInfo) + fileID (SInt64) 100 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 16144 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3011853942 + data[1] (unsigned int) 1225355545 + data[2] (unsigned int) 2175190160 + data[3] (unsigned int) 639775416 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Culling/Clipping.cs + data[100] (BuildReportPackedAssetInfo) + fileID (SInt64) 101 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 16240 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3163279766 + data[1] (unsigned int) 2787396615 + data[2] (unsigned int) 1686208168 + data[3] (unsigned int) 4114813637 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_UpdateManager.cs + data[101] (BuildReportPackedAssetInfo) + fileID (SInt64) 102 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 16352 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2136337046 + data[1] (unsigned int) 1210778758 + data[2] (unsigned int) 3217447609 + data[3] (unsigned int) 265755189 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/StencilMaterial.cs + data[102] (BuildReportPackedAssetInfo) + fileID (SInt64) 103 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 16464 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3111730838 + data[1] (unsigned int) 1250857479 + data[2] (unsigned int) 2070532781 + data[3] (unsigned int) 2747640641 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/GraphicRegistry.cs + data[103] (BuildReportPackedAssetInfo) + fileID (SInt64) 104 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 16576 + sourceAssetGUID (GUID) + data[0] (unsigned int) 432075942 + data[1] (unsigned int) 1089267754 + data[2] (unsigned int) 3489839249 + data[3] (unsigned int) 223614301 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/AssetUpgrade/ClipUpgrade.cs + data[104] (BuildReportPackedAssetInfo) + fileID (SInt64) 105 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 16672 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3896458662 + data[1] (unsigned int) 1347190520 + data[2] (unsigned int) 2172407208 + data[3] (unsigned int) 3919869835 + buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/HelpUrls.cs + data[105] (BuildReportPackedAssetInfo) + fileID (SInt64) 106 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 16768 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3156438438 + data[1] (unsigned int) 1131378892 + data[2] (unsigned int) 1611041693 + data[3] (unsigned int) 1605238748 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextParsingUtilities.cs + data[106] (BuildReportPackedAssetInfo) + fileID (SInt64) 107 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 16880 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3425031110 + data[1] (unsigned int) 1232954565 + data[2] (unsigned int) 316680614 + data[3] (unsigned int) 3896504585 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Attributes/TrackColorAttribute.cs + data[107] (BuildReportPackedAssetInfo) + fileID (SInt64) 108 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 16992 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3408910806 + data[1] (unsigned int) 3608463505 + data[2] (unsigned int) 141754379 + data[3] (unsigned int) 3375466067 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_MaterialManager.cs + data[108] (BuildReportPackedAssetInfo) + fileID (SInt64) 109 + classID (Type*) 115 + packedSize (UInt64) 76 + offset (UInt64) 17104 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4153806294 + data[1] (unsigned int) 1114285196 + data[2] (unsigned int) 2777906062 + data[3] (unsigned int) 3198737228 + buildTimeAssetPath (string) Assets/AssetDuplication/ImageList.cs + data[109] (BuildReportPackedAssetInfo) + fileID (SInt64) 110 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 17184 + sourceAssetGUID (GUID) + data[0] (unsigned int) 215334630 + data[1] (unsigned int) 1263525730 + data[2] (unsigned int) 245877640 + data[3] (unsigned int) 2440800305 + buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/NavMeshLink.cs + data[110] (BuildReportPackedAssetInfo) + fileID (SInt64) 111 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 17296 + sourceAssetGUID (GUID) + data[0] (unsigned int) 436804103 + data[1] (unsigned int) 1310539835 + data[2] (unsigned int) 1408915859 + data[3] (unsigned int) 1829972237 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/RuntimeClip.cs + data[111] (BuildReportPackedAssetInfo) + fileID (SInt64) 112 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 17392 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3142950663 + data[1] (unsigned int) 1229615947 + data[2] (unsigned int) 3563055240 + data[3] (unsigned int) 1196145273 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/RuntimeClipBase.cs + data[112] (BuildReportPackedAssetInfo) + fileID (SInt64) 113 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 17504 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2674300951 + data[1] (unsigned int) 1174780934 + data[2] (unsigned int) 3851511955 + data[3] (unsigned int) 2889195253 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/BaseMeshEffect.cs + data[113] (BuildReportPackedAssetInfo) + fileID (SInt64) 114 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 17616 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2752846871 + data[1] (unsigned int) 3789827510 + data[2] (unsigned int) 3955147400 + data[3] (unsigned int) 1089224849 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontAsset.cs + data[114] (BuildReportPackedAssetInfo) + fileID (SInt64) 115 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 17712 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2204596023 + data[1] (unsigned int) 672459123 + data[2] (unsigned int) 1870162858 + data[3] (unsigned int) 168983584 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelinePlayable_Animation.cs + data[115] (BuildReportPackedAssetInfo) + fileID (SInt64) 116 + classID (Type*) 115 + packedSize (UInt64) 136 + offset (UInt64) 17840 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1239672151 + data[1] (unsigned int) 1296594930 + data[2] (unsigned int) 1253956485 + data[3] (unsigned int) 666569746 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/AnimationPreviewUpdateCallback.cs + data[116] (BuildReportPackedAssetInfo) + fileID (SInt64) 117 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 17984 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3430284631 + data[1] (unsigned int) 1187270171 + data[2] (unsigned int) 1922643328 + data[3] (unsigned int) 2887667783 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventData/PointerEventData.cs + data[117] (BuildReportPackedAssetInfo) + fileID (SInt64) 118 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 18096 + sourceAssetGUID (GUID) + data[0] (unsigned int) 603679591 + data[1] (unsigned int) 1134546794 + data[2] (unsigned int) 2455538602 + data[3] (unsigned int) 416075227 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/RuntimeElement.cs + data[118] (BuildReportPackedAssetInfo) + fileID (SInt64) 119 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 18208 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1311325287 + data[1] (unsigned int) 1284048306 + data[2] (unsigned int) 4257634437 + data[3] (unsigned int) 447392998 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventSystem.cs + data[119] (BuildReportPackedAssetInfo) + fileID (SInt64) 120 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 18320 + sourceAssetGUID (GUID) + data[0] (unsigned int) 690386039 + data[1] (unsigned int) 1351921567 + data[2] (unsigned int) 342784122 + data[3] (unsigned int) 3058185607 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMPro_ExtensionMethods.cs + data[120] (BuildReportPackedAssetInfo) + fileID (SInt64) 121 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 18432 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3075287927 + data[1] (unsigned int) 1332165036 + data[2] (unsigned int) 2157374090 + data[3] (unsigned int) 1972733092 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/FontFeatureCommonGSUB.cs + data[121] (BuildReportPackedAssetInfo) + fileID (SInt64) 122 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 18544 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3532914583 + data[1] (unsigned int) 2107960753 + data[2] (unsigned int) 1248035752 + data[3] (unsigned int) 3532851274 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_InputValidator.cs + data[122] (BuildReportPackedAssetInfo) + fileID (SInt64) 123 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 18656 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4269744295 + data[1] (unsigned int) 3019170780 + data[2] (unsigned int) 1855389866 + data[3] (unsigned int) 2109594370 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/TimelineClipExtensions.cs + data[123] (BuildReportPackedAssetInfo) + fileID (SInt64) 124 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 18784 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3239880103 + data[1] (unsigned int) 2169399196 + data[2] (unsigned int) 1662197134 + data[3] (unsigned int) 636610315 + buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/NavMeshSurface.cs + data[124] (BuildReportPackedAssetInfo) + fileID (SInt64) 125 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 18896 + sourceAssetGUID (GUID) + data[0] (unsigned int) 776771495 + data[1] (unsigned int) 1186256083 + data[2] (unsigned int) 3920583419 + data[3] (unsigned int) 105518950 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/UIElements/PanelRaycaster.cs + data[125] (BuildReportPackedAssetInfo) + fileID (SInt64) 126 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 19008 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1428261287 + data[1] (unsigned int) 1263632160 + data[2] (unsigned int) 2009056139 + data[3] (unsigned int) 1666073419 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Selectable.cs + data[126] (BuildReportPackedAssetInfo) + fileID (SInt64) 127 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 19104 + sourceAssetGUID (GUID) + data[0] (unsigned int) 120801207 + data[1] (unsigned int) 753198026 + data[2] (unsigned int) 1173906970 + data[3] (unsigned int) 2835253845 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Dropdown.cs + data[127] (BuildReportPackedAssetInfo) + fileID (SInt64) 128 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 19200 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1742118327 + data[1] (unsigned int) 1176834327 + data[2] (unsigned int) 3569760168 + data[3] (unsigned int) 794201474 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/MaskUtilities.cs + data[128] (BuildReportPackedAssetInfo) + fileID (SInt64) 129 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 19312 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2493812407 + data[1] (unsigned int) 1316864699 + data[2] (unsigned int) 3079724698 + data[3] (unsigned int) 222917162 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Animation/CoroutineTween.cs + data[129] (BuildReportPackedAssetInfo) + fileID (SInt64) 130 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 19424 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3252689672 + data[1] (unsigned int) 1151927685 + data[2] (unsigned int) 3466970025 + data[3] (unsigned int) 1430574860 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelinePlayable.cs + data[130] (BuildReportPackedAssetInfo) + fileID (SInt64) 131 + classID (Type*) 115 + packedSize (UInt64) 76 + offset (UInt64) 19536 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3411478568 + data[1] (unsigned int) 1223503669 + data[2] (unsigned int) 2202641033 + data[3] (unsigned int) 3082364167 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Misc.cs + data[131] (BuildReportPackedAssetInfo) + fileID (SInt64) 132 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 19616 + sourceAssetGUID (GUID) + data[0] (unsigned int) 938736424 + data[1] (unsigned int) 1320210135 + data[2] (unsigned int) 2442659491 + data[3] (unsigned int) 2024639109 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/LayoutUtility.cs + data[132] (BuildReportPackedAssetInfo) + fileID (SInt64) 133 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 19728 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4280933416 + data[1] (unsigned int) 1194866988 + data[2] (unsigned int) 3341493138 + data[3] (unsigned int) 4035723594 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Scripting/PlayableTrack.cs + data[133] (BuildReportPackedAssetInfo) + fileID (SInt64) 134 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 19840 + sourceAssetGUID (GUID) + data[0] (unsigned int) 716734520 + data[1] (unsigned int) 1238090289 + data[2] (unsigned int) 1812645808 + data[3] (unsigned int) 3501329047 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/ColorBlock.cs + data[134] (BuildReportPackedAssetInfo) + fileID (SInt64) 135 + classID (Type*) 115 + packedSize (UInt64) 184 + offset (UInt64) 19936 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1065497400 + data[1] (unsigned int) 3427016651 + data[2] (unsigned int) 2195889993 + data[3] (unsigned int) 1917544678 + buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/IOnboardingSectionAnalyticsProvider.cs + data[135] (BuildReportPackedAssetInfo) + fileID (SInt64) 136 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 20128 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1387436616 + data[1] (unsigned int) 2610221967 + data[2] (unsigned int) 47329739 + data[3] (unsigned int) 404779958 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteAsset.cs + data[136] (BuildReportPackedAssetInfo) + fileID (SInt64) 137 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 20224 + sourceAssetGUID (GUID) + data[0] (unsigned int) 977026904 + data[1] (unsigned int) 1304634924 + data[2] (unsigned int) 186016173 + data[3] (unsigned int) 803400052 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/IMeshModifier.cs + data[137] (BuildReportPackedAssetInfo) + fileID (SInt64) 138 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 20336 + sourceAssetGUID (GUID) + data[0] (unsigned int) 887101288 + data[1] (unsigned int) 1332700397 + data[2] (unsigned int) 1586265259 + data[3] (unsigned int) 2572824960 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/AspectRatioFitter.cs + data[138] (BuildReportPackedAssetInfo) + fileID (SInt64) 139 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 20448 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3723030904 + data[1] (unsigned int) 4172582501 + data[2] (unsigned int) 3223017771 + data[3] (unsigned int) 1677229116 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/FastAction.cs + data[139] (BuildReportPackedAssetInfo) + fileID (SInt64) 140 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 20544 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3199318648 + data[1] (unsigned int) 2400514846 + data[2] (unsigned int) 2121418201 + data[3] (unsigned int) 2245278765 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextElement_Legacy.cs + data[140] (BuildReportPackedAssetInfo) + fileID (SInt64) 141 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 20656 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1609644952 + data[1] (unsigned int) 1273340076 + data[2] (unsigned int) 3580667799 + data[3] (unsigned int) 1888045364 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/ICurvesOwner.cs + data[141] (BuildReportPackedAssetInfo) + fileID (SInt64) 142 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 20752 + sourceAssetGUID (GUID) + data[0] (unsigned int) 816335768 + data[1] (unsigned int) 1239633775 + data[2] (unsigned int) 764200846 + data[3] (unsigned int) 3570652161 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Marker.cs + data[142] (BuildReportPackedAssetInfo) + fileID (SInt64) 143 + classID (Type*) 115 + packedSize (UInt64) 124 + offset (UInt64) 20848 + sourceAssetGUID (GUID) + data[0] (unsigned int) 865954712 + data[1] (unsigned int) 2429851982 + data[2] (unsigned int) 3628822280 + data[3] (unsigned int) 3380054828 + buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/AnswerData.cs + data[143] (BuildReportPackedAssetInfo) + fileID (SInt64) 144 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 20976 + sourceAssetGUID (GUID) + data[0] (unsigned int) 313529512 + data[1] (unsigned int) 4064579619 + data[2] (unsigned int) 2543232283 + data[3] (unsigned int) 1510220025 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/UIElements/PanelEventHandler.cs + data[144] (BuildReportPackedAssetInfo) + fileID (SInt64) 145 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 21104 + sourceAssetGUID (GUID) + data[0] (unsigned int) 626616488 + data[1] (unsigned int) 1310773489 + data[2] (unsigned int) 4009318041 + data[3] (unsigned int) 744661504 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/GridLayoutGroup.cs + data[145] (BuildReportPackedAssetInfo) + fileID (SInt64) 146 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 21216 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3264684728 + data[1] (unsigned int) 1145075123 + data[2] (unsigned int) 2277278142 + data[3] (unsigned int) 1201928748 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Audio/AudioTrack.cs + data[146] (BuildReportPackedAssetInfo) + fileID (SInt64) 147 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 21312 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2862476984 + data[1] (unsigned int) 1297110139 + data[2] (unsigned int) 4025183880 + data[3] (unsigned int) 4268702789 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/DiscreteTime.cs + data[147] (BuildReportPackedAssetInfo) + fileID (SInt64) 148 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 21408 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2845591544 + data[1] (unsigned int) 1270113366 + data[2] (unsigned int) 331138699 + data[3] (unsigned int) 4154826468 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/IntervalTree.cs + data[148] (BuildReportPackedAssetInfo) + fileID (SInt64) 149 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 21504 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4131411977 + data[1] (unsigned int) 1146711840 + data[2] (unsigned int) 1625258430 + data[3] (unsigned int) 788021355 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Toggle.cs + data[149] (BuildReportPackedAssetInfo) + fileID (SInt64) 150 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 21600 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1455550217 + data[1] (unsigned int) 1286847342 + data[2] (unsigned int) 4247158942 + data[3] (unsigned int) 3910629671 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_CharacterInfo.cs + data[150] (BuildReportPackedAssetInfo) + fileID (SInt64) 151 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 21712 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1415139097 + data[1] (unsigned int) 1329850041 + data[2] (unsigned int) 1931594385 + data[3] (unsigned int) 461995268 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventData/BaseEventData.cs + data[151] (BuildReportPackedAssetInfo) + fileID (SInt64) 152 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 21824 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3848067113 + data[1] (unsigned int) 1323550914 + data[2] (unsigned int) 3602070957 + data[3] (unsigned int) 2926297445 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/IGraphicEnabledDisabled.cs + data[152] (BuildReportPackedAssetInfo) + fileID (SInt64) 153 + classID (Type*) 115 + packedSize (UInt64) 148 + offset (UInt64) 21952 + sourceAssetGUID (GUID) + data[0] (unsigned int) 964858937 + data[1] (unsigned int) 1182508155 + data[2] (unsigned int) 2420757387 + data[3] (unsigned int) 817453665 + buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/ArmModels/TransitionArmModel.cs + data[153] (BuildReportPackedAssetInfo) + fileID (SInt64) 154 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 22112 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3868005465 + data[1] (unsigned int) 3519319538 + data[2] (unsigned int) 266209689 + data[3] (unsigned int) 3125269080 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TextMeshPro.cs + data[154] (BuildReportPackedAssetInfo) + fileID (SInt64) 155 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 22208 + sourceAssetGUID (GUID) + data[0] (unsigned int) 529573993 + data[1] (unsigned int) 54818101 + data[2] (unsigned int) 2661621354 + data[3] (unsigned int) 2255831383 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Sprite.cs + data[155] (BuildReportPackedAssetInfo) + fileID (SInt64) 156 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 22304 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1114676841 + data[1] (unsigned int) 370428469 + data[2] (unsigned int) 2269922680 + data[3] (unsigned int) 2181281111 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMPro_EventManager.cs + data[156] (BuildReportPackedAssetInfo) + fileID (SInt64) 157 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 22416 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1473029753 + data[1] (unsigned int) 1230961403 + data[2] (unsigned int) 2990608572 + data[3] (unsigned int) 3950285098 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/MaskableGraphic.cs + data[157] (BuildReportPackedAssetInfo) + fileID (SInt64) 158 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 22528 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1003201977 + data[1] (unsigned int) 1170262712 + data[2] (unsigned int) 595436695 + data[3] (unsigned int) 1053863738 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/InfiniteRuntimeClip.cs + data[158] (BuildReportPackedAssetInfo) + fileID (SInt64) 159 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 22640 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1650590201 + data[1] (unsigned int) 1171515637 + data[2] (unsigned int) 2163861183 + data[3] (unsigned int) 4226626754 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Culling/ClipperRegistry.cs + data[159] (BuildReportPackedAssetInfo) + fileID (SInt64) 160 + classID (Type*) 115 + packedSize (UInt64) 132 + offset (UInt64) 22752 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3115549738 + data[1] (unsigned int) 1151281277 + data[2] (unsigned int) 1797756329 + data[3] (unsigned int) 2585122737 + buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/CameraOffset.cs + data[160] (BuildReportPackedAssetInfo) + fileID (SInt64) 161 + classID (Type*) 115 + packedSize (UInt64) 136 + offset (UInt64) 22896 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3896218186 + data[1] (unsigned int) 1204309406 + data[2] (unsigned int) 2960690304 + data[3] (unsigned int) 1124467962 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/AnimationOutputWeightProcessor.cs + data[161] (BuildReportPackedAssetInfo) + fileID (SInt64) 162 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 23040 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4055612234 + data[1] (unsigned int) 1202906334 + data[2] (unsigned int) 825883268 + data[3] (unsigned int) 1666190701 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/FontFeatureCommonGPOS.cs + data[162] (BuildReportPackedAssetInfo) + fileID (SInt64) 163 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 23152 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1266414938 + data[1] (unsigned int) 891593065 + data[2] (unsigned int) 4068613400 + data[3] (unsigned int) 1721713228 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_UpdateRegistery.cs + data[163] (BuildReportPackedAssetInfo) + fileID (SInt64) 164 + classID (Type*) 115 + packedSize (UInt64) 132 + offset (UInt64) 23264 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1581329498 + data[1] (unsigned int) 1117365832 + data[2] (unsigned int) 1942504370 + data[3] (unsigned int) 2515712334 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/HorizontalOrVerticalLayoutGroup.cs + data[164] (BuildReportPackedAssetInfo) + fileID (SInt64) 165 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 23408 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1239954026 + data[1] (unsigned int) 1081932581 + data[2] (unsigned int) 1983902351 + data[3] (unsigned int) 1419898649 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Graphic.cs + data[165] (BuildReportPackedAssetInfo) + fileID (SInt64) 166 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 23504 + sourceAssetGUID (GUID) + data[0] (unsigned int) 840810106 + data[1] (unsigned int) 1331509049 + data[2] (unsigned int) 1072000929 + data[3] (unsigned int) 1414493906 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Signals/CustomSignalEventDrawer.cs + data[166] (BuildReportPackedAssetInfo) + fileID (SInt64) 167 + classID (Type*) 115 + packedSize (UInt64) 136 + offset (UInt64) 23632 + sourceAssetGUID (GUID) + data[0] (unsigned int) 759916970 + data[1] (unsigned int) 1335577429 + data[2] (unsigned int) 3967272109 + data[3] (unsigned int) 3459856179 + buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/TrackedPoseDriver/BasePoseProvider.cs + data[167] (BuildReportPackedAssetInfo) + fileID (SInt64) 168 + classID (Type*) 115 + packedSize (UInt64) 128 + offset (UInt64) 23776 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1442881450 + data[1] (unsigned int) 1079410054 + data[2] (unsigned int) 3036883103 + data[3] (unsigned int) 155973397 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_DynamicFontAssetUtilities.cs + data[168] (BuildReportPackedAssetInfo) + fileID (SInt64) 169 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 23904 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3678474938 + data[1] (unsigned int) 2032420236 + data[2] (unsigned int) 4278022475 + data[3] (unsigned int) 21897118 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_StyleSheet.cs + data[169] (BuildReportPackedAssetInfo) + fileID (SInt64) 170 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 24000 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3180797370 + data[1] (unsigned int) 3031705421 + data[2] (unsigned int) 2004465705 + data[3] (unsigned int) 2024598814 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/ObjectId.cs + data[170] (BuildReportPackedAssetInfo) + fileID (SInt64) 171 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 24096 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2107718906 + data[1] (unsigned int) 1237848950 + data[2] (unsigned int) 3227708808 + data[3] (unsigned int) 3509438049 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/ITextPreProcessor.cs + data[171] (BuildReportPackedAssetInfo) + fileID (SInt64) 172 + classID (Type*) 115 + packedSize (UInt64) 128 + offset (UInt64) 24208 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1482014458 + data[1] (unsigned int) 1261873109 + data[2] (unsigned int) 3683609269 + data[3] (unsigned int) 539596153 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/TimeNotificationBehaviour.cs + data[172] (BuildReportPackedAssetInfo) + fileID (SInt64) 173 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 24336 + sourceAssetGUID (GUID) + data[0] (unsigned int) 954140699 + data[1] (unsigned int) 1155860481 + data[2] (unsigned int) 1415572413 + data[3] (unsigned int) 2168533517 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventData/AxisEventData.cs + data[173] (BuildReportPackedAssetInfo) + fileID (SInt64) 174 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 24448 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3656058155 + data[1] (unsigned int) 1267213659 + data[2] (unsigned int) 202513576 + data[3] (unsigned int) 1851358535 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/ScheduleRuntimeClip.cs + data[174] (BuildReportPackedAssetInfo) + fileID (SInt64) 175 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 24560 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2083226955 + data[1] (unsigned int) 1289447711 + data[2] (unsigned int) 4193431941 + data[3] (unsigned int) 329079405 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_RichTextTagsCommon.cs + data[175] (BuildReportPackedAssetInfo) + fileID (SInt64) 176 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 24672 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1885595211 + data[1] (unsigned int) 1109138901 + data[2] (unsigned int) 583148682 + data[3] (unsigned int) 3206436840 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/SignalTrack.cs + data[176] (BuildReportPackedAssetInfo) + fileID (SInt64) 177 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 24768 + sourceAssetGUID (GUID) + data[0] (unsigned int) 562564955 + data[1] (unsigned int) 1193827970 + data[2] (unsigned int) 3118759811 + data[3] (unsigned int) 3442226103 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/IPropertyPreview.cs + data[177] (BuildReportPackedAssetInfo) + fileID (SInt64) 178 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 24880 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4157963883 + data[1] (unsigned int) 3890522404 + data[2] (unsigned int) 4106220009 + data[3] (unsigned int) 4182768728 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_LineInfo.cs + data[178] (BuildReportPackedAssetInfo) + fileID (SInt64) 179 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 24976 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2316382363 + data[1] (unsigned int) 1325446927 + data[2] (unsigned int) 4294098619 + data[3] (unsigned int) 1389896115 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/NotificationUtilities.cs + data[179] (BuildReportPackedAssetInfo) + fileID (SInt64) 180 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 25104 + sourceAssetGUID (GUID) + data[0] (unsigned int) 239315867 + data[1] (unsigned int) 1162119195 + data[2] (unsigned int) 659705023 + data[3] (unsigned int) 1186082310 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/SetPropertyUtility.cs + data[180] (BuildReportPackedAssetInfo) + fileID (SInt64) 181 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 25216 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1556500971 + data[1] (unsigned int) 1264610674 + data[2] (unsigned int) 3808742058 + data[3] (unsigned int) 3867227273 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/DirectorControlPlayable.cs + data[181] (BuildReportPackedAssetInfo) + fileID (SInt64) 182 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 25344 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4029577467 + data[1] (unsigned int) 1289765979 + data[2] (unsigned int) 1628721033 + data[3] (unsigned int) 2400789943 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/DefaultControls.cs + data[182] (BuildReportPackedAssetInfo) + fileID (SInt64) 183 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 25456 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1250458619 + data[1] (unsigned int) 1130574051 + data[2] (unsigned int) 2830455185 + data[3] (unsigned int) 396023679 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/CanvasUpdateRegistry.cs + data[183] (BuildReportPackedAssetInfo) + fileID (SInt64) 184 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 25568 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2909122043 + data[1] (unsigned int) 1211294520 + data[2] (unsigned int) 1036482202 + data[3] (unsigned int) 1665820572 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelineAsset.cs + data[184] (BuildReportPackedAssetInfo) + fileID (SInt64) 185 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 25680 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1525069116 + data[1] (unsigned int) 1205632287 + data[2] (unsigned int) 826899630 + data[3] (unsigned int) 3228960702 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Attributes/TimelineHelpURLAttribute.cs + data[185] (BuildReportPackedAssetInfo) + fileID (SInt64) 186 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 25808 + sourceAssetGUID (GUID) + data[0] (unsigned int) 69506380 + data[1] (unsigned int) 1213608984 + data[2] (unsigned int) 1880943756 + data[3] (unsigned int) 2211094390 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Utility/VertexHelper.cs + data[186] (BuildReportPackedAssetInfo) + fileID (SInt64) 187 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 25904 + sourceAssetGUID (GUID) + data[0] (unsigned int) 751089996 + data[1] (unsigned int) 1095150128 + data[2] (unsigned int) 2306629295 + data[3] (unsigned int) 1836977437 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/Raycasters/PhysicsRaycaster.cs + data[187] (BuildReportPackedAssetInfo) + fileID (SInt64) 188 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 26016 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4047528044 + data[1] (unsigned int) 1171771168 + data[2] (unsigned int) 143802802 + data[3] (unsigned int) 2995922822 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Culling/RectangularVertexClipper.cs + data[188] (BuildReportPackedAssetInfo) + fileID (SInt64) 189 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 26144 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1315743596 + data[1] (unsigned int) 1324792752 + data[2] (unsigned int) 1236635815 + data[3] (unsigned int) 248055481 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/AnimationTriggers.cs + data[189] (BuildReportPackedAssetInfo) + fileID (SInt64) 190 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 26256 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1282699148 + data[1] (unsigned int) 1313253068 + data[2] (unsigned int) 387736491 + data[3] (unsigned int) 2057021543 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextProcessingCommon.cs + data[190] (BuildReportPackedAssetInfo) + fileID (SInt64) 191 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 26368 + sourceAssetGUID (GUID) + data[0] (unsigned int) 73996460 + data[1] (unsigned int) 428127071 + data[2] (unsigned int) 1953988537 + data[3] (unsigned int) 3844046660 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SelectionCaret.cs + data[191] (BuildReportPackedAssetInfo) + fileID (SInt64) 192 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 26480 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2839136188 + data[1] (unsigned int) 1127282184 + data[2] (unsigned int) 2177009329 + data[3] (unsigned int) 2163416272 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/LayoutGroup.cs + data[192] (BuildReportPackedAssetInfo) + fileID (SInt64) 193 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 26576 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1401469628 + data[1] (unsigned int) 1244803728 + data[2] (unsigned int) 2094201219 + data[3] (unsigned int) 410808205 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/PointerInputModule.cs + data[193] (BuildReportPackedAssetInfo) + fileID (SInt64) 194 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 26704 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2137038524 + data[1] (unsigned int) 1322943951 + data[2] (unsigned int) 901966766 + data[3] (unsigned int) 791994290 + buildTimeAssetPath (string) Assets/AssetDuplication/ReferenceMonoBehaviour.cs + data[194] (BuildReportPackedAssetInfo) + fileID (SInt64) 195 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 26816 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3482479596 + data[1] (unsigned int) 1295090022 + data[2] (unsigned int) 3125504144 + data[3] (unsigned int) 1814556651 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/IMask.cs + data[195] (BuildReportPackedAssetInfo) + fileID (SInt64) 196 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 26912 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2690576892 + data[1] (unsigned int) 1286271302 + data[2] (unsigned int) 3914314134 + data[3] (unsigned int) 859750971 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_PackageResourceImporter.cs + data[196] (BuildReportPackedAssetInfo) + fileID (SInt64) 197 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 27040 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1141619452 + data[1] (unsigned int) 1153066512 + data[2] (unsigned int) 1737010099 + data[3] (unsigned int) 2600334935 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/Shadow.cs + data[197] (BuildReportPackedAssetInfo) + fileID (SInt64) 198 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 27136 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1984987149 + data[1] (unsigned int) 1240711791 + data[2] (unsigned int) 690706364 + data[3] (unsigned int) 585712551 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/AnimatorBindingCache.cs + data[198] (BuildReportPackedAssetInfo) + fileID (SInt64) 199 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 27248 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4018412301 + data[1] (unsigned int) 1273601618 + data[2] (unsigned int) 625113528 + data[3] (unsigned int) 464204675 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventTrigger.cs + data[199] (BuildReportPackedAssetInfo) + fileID (SInt64) 200 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 27360 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3803687949 + data[1] (unsigned int) 1337083208 + data[2] (unsigned int) 2155387322 + data[3] (unsigned int) 3667384551 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/HashUtility.cs + data[200] (BuildReportPackedAssetInfo) + fileID (SInt64) 201 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 27456 + sourceAssetGUID (GUID) + data[0] (unsigned int) 368496397 + data[1] (unsigned int) 1288800888 + data[2] (unsigned int) 2951649687 + data[3] (unsigned int) 1402009325 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/GroupTrack.cs + data[201] (BuildReportPackedAssetInfo) + fileID (SInt64) 202 + classID (Type*) 115 + packedSize (UInt64) 92 + offset (UInt64) 27552 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2694093085 + data[1] (unsigned int) 1219672888 + data[2] (unsigned int) 3159976372 + data[3] (unsigned int) 4262507295 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/InputField.cs + data[202] (BuildReportPackedAssetInfo) + fileID (SInt64) 203 + classID (Type*) 115 + packedSize (UInt64) 128 + offset (UInt64) 27648 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1910825005 + data[1] (unsigned int) 1210738871 + data[2] (unsigned int) 2212319363 + data[3] (unsigned int) 615599945 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/ActivationControlPlayable.cs + data[203] (BuildReportPackedAssetInfo) + fileID (SInt64) 204 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 27776 + sourceAssetGUID (GUID) + data[0] (unsigned int) 852283693 + data[1] (unsigned int) 1275424104 + data[2] (unsigned int) 862189461 + data[3] (unsigned int) 2314315132 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/AnimationTrack.cs + data[204] (BuildReportPackedAssetInfo) + fileID (SInt64) 205 + classID (Type*) 115 + packedSize (UInt64) 108 + offset (UInt64) 27888 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3318818621 + data[1] (unsigned int) 1172877222 + data[2] (unsigned int) 2868730261 + data[3] (unsigned int) 1732780973 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Extensions/TrackExtensions.cs + data[205] (BuildReportPackedAssetInfo) + fileID (SInt64) 206 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 28000 + sourceAssetGUID (GUID) + data[0] (unsigned int) 701673325 + data[1] (unsigned int) 1140044239 + data[2] (unsigned int) 1966375597 + data[3] (unsigned int) 3016331230 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Signals/SignalAsset.cs + data[206] (BuildReportPackedAssetInfo) + fileID (SInt64) 207 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 28096 + sourceAssetGUID (GUID) + data[0] (unsigned int) 43666573 + data[1] (unsigned int) 1185681423 + data[2] (unsigned int) 3748520070 + data[3] (unsigned int) 896651867 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Audio/AudioMixerProperties.cs + data[207] (BuildReportPackedAssetInfo) + fileID (SInt64) 208 + classID (Type*) 115 + packedSize (UInt64) 112 + offset (UInt64) 28208 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2314759341 + data[1] (unsigned int) 778313466 + data[2] (unsigned int) 3769037115 + data[3] (unsigned int) 2550014510 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Extensions/SelectionExtensions.cs + data[208] (BuildReportPackedAssetInfo) + fileID (SInt64) 209 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 28320 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3297191117 + data[1] (unsigned int) 1275884575 + data[2] (unsigned int) 2486208168 + data[3] (unsigned int) 2575851951 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/GraphicRaycaster.cs + data[209] (BuildReportPackedAssetInfo) + fileID (SInt64) 210 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 28432 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3650770462 + data[1] (unsigned int) 1308738888 + data[2] (unsigned int) 3863343278 + data[3] (unsigned int) 1214833221 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Activation/ActivationMixerPlayable.cs + data[210] (BuildReportPackedAssetInfo) + fileID (SInt64) 211 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 28560 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3983833374 + data[1] (unsigned int) 1185719795 + data[2] (unsigned int) 1944791970 + data[3] (unsigned int) 1757357886 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/Outline.cs + data[211] (BuildReportPackedAssetInfo) + fileID (SInt64) 212 + classID (Type*) 115 + packedSize (UInt64) 88 + offset (UInt64) 28656 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1406054702 + data[1] (unsigned int) 2453973071 + data[2] (unsigned int) 3844805016 + data[3] (unsigned int) 1052792282 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_MeshInfo.cs + data[212] (BuildReportPackedAssetInfo) + fileID (SInt64) 213 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 28752 + sourceAssetGUID (GUID) + data[0] (unsigned int) 4077768494 + data[1] (unsigned int) 495196439 + data[2] (unsigned int) 3324775721 + data[3] (unsigned int) 3283570687 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/CurveEditUtility.cs + data[213] (BuildReportPackedAssetInfo) + fileID (SInt64) 214 + classID (Type*) 115 + packedSize (UInt64) 136 + offset (UInt64) 28864 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3977973326 + data[1] (unsigned int) 3489984161 + data[2] (unsigned int) 925163032 + data[3] (unsigned int) 847765825 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteAssetImportFormats.cs + data[214] (BuildReportPackedAssetInfo) + fileID (SInt64) 215 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 29008 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2704200286 + data[1] (unsigned int) 1155361570 + data[2] (unsigned int) 2408696988 + data[3] (unsigned int) 2500160513 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Signals/SignalReceiver.cs + data[215] (BuildReportPackedAssetInfo) + fileID (SInt64) 216 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 29120 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2875310958 + data[1] (unsigned int) 4023697929 + data[2] (unsigned int) 3370303387 + data[3] (unsigned int) 1949426945 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/BlendUtility.cs + data[216] (BuildReportPackedAssetInfo) + fileID (SInt64) 217 + classID (Type*) 115 + packedSize (UInt64) 104 + offset (UInt64) 29216 + sourceAssetGUID (GUID) + data[0] (unsigned int) 995121790 + data[1] (unsigned int) 1105429012 + data[2] (unsigned int) 879290006 + data[3] (unsigned int) 2661397923 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/WeightUtility.cs + data[217] (BuildReportPackedAssetInfo) + fileID (SInt64) 218 + classID (Type*) 115 + packedSize (UInt64) 148 + offset (UInt64) 29328 + sourceAssetGUID (GUID) + data[0] (unsigned int) 336017358 + data[1] (unsigned int) 3047476958 + data[2] (unsigned int) 2740551481 + data[3] (unsigned int) 1626992630 + buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/SelectedSolutionsData.cs + data[218] (BuildReportPackedAssetInfo) + fileID (SInt64) 219 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 29488 + sourceAssetGUID (GUID) + data[0] (unsigned int) 510115838 + data[1] (unsigned int) 4283742009 + data[2] (unsigned int) 1582628264 + data[3] (unsigned int) 4236297377 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMPro_MeshUtilities.cs + data[219] (BuildReportPackedAssetInfo) + fileID (SInt64) 220 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 29600 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3187181135 + data[1] (unsigned int) 1933840343 + data[2] (unsigned int) 2608942058 + data[3] (unsigned int) 1557226262 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TextMeshProUGUI.cs + data[220] (BuildReportPackedAssetInfo) + fileID (SInt64) 221 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 29696 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2111713391 + data[1] (unsigned int) 1332958049 + data[2] (unsigned int) 2195354260 + data[3] (unsigned int) 1386692992 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/ParticleControlPlayable.cs + data[221] (BuildReportPackedAssetInfo) + fileID (SInt64) 222 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 29824 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2673564015 + data[1] (unsigned int) 990168340 + data[2] (unsigned int) 2927070889 + data[3] (unsigned int) 3868988671 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontAssetCommon.cs + data[222] (BuildReportPackedAssetInfo) + fileID (SInt64) 223 + classID (Type*) 115 + packedSize (UInt64) 96 + offset (UInt64) 29936 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2541655935 + data[1] (unsigned int) 1254470253 + data[2] (unsigned int) 1663588025 + data[3] (unsigned int) 3578295100 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/TimeUtility.cs + data[223] (BuildReportPackedAssetInfo) + fileID (SInt64) 224 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 30032 + sourceAssetGUID (GUID) + data[0] (unsigned int) 3240159951 + data[1] (unsigned int) 1207750147 + data[2] (unsigned int) 417636503 + data[3] (unsigned int) 2445777590 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Utility/ReflectionMethodsCache.cs + data[224] (BuildReportPackedAssetInfo) + fileID (SInt64) 225 + classID (Type*) 115 + packedSize (UInt64) 120 + offset (UInt64) 30160 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2771193567 + data[1] (unsigned int) 1300844657 + data[2] (unsigned int) 484028582 + data[3] (unsigned int) 1517442230 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Activation/ActivationPlayableAsset.cs + data[225] (BuildReportPackedAssetInfo) + fileID (SInt64) 226 + classID (Type*) 115 + packedSize (UInt64) 116 + offset (UInt64) 30288 + sourceAssetGUID (GUID) + data[0] (unsigned int) 192557295 + data[1] (unsigned int) 1296725419 + data[2] (unsigned int) 1916562312 + data[3] (unsigned int) 1396466154 + buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/BasicScriptPlayable.cs + data[226] (BuildReportPackedAssetInfo) + fileID (SInt64) 227 + classID (Type*) 115 + packedSize (UInt64) 84 + offset (UInt64) 30416 + sourceAssetGUID (GUID) + data[0] (unsigned int) 504133871 + data[1] (unsigned int) 1306788556 + data[2] (unsigned int) 2268806568 + data[3] (unsigned int) 3488169732 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Image.cs + data[227] (BuildReportPackedAssetInfo) + fileID (SInt64) 228 + classID (Type*) 115 + packedSize (UInt64) 100 + offset (UInt64) 30512 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1890142959 + data[1] (unsigned int) 2309243395 + data[2] (unsigned int) 2138571259 + data[3] (unsigned int) 2315340204 + buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_ShaderUtilities.cs + data[228] (BuildReportPackedAssetInfo) + fileID (SInt64) 229 + classID (Type*) 213 + packedSize (UInt64) 420 + offset (UInt64) 31504 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Built-in Sprite: + +ID: -4211197064891926221 (ClassID: 1126) PackedAssets + m_ShortPath (string) sharedassets0.assets.resS + m_Overhead (UInt64) 13 + m_Contents (vector) + Array[2] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 28 + packedSize (UInt64) 524288 + offset (UInt64) 0 + sourceAssetGUID (GUID) + data[0] (unsigned int) 1179607688 + data[1] (unsigned int) 1278849281 + data[2] (unsigned int) 1374027963 + data[3] (unsigned int) 1900018330 + buildTimeAssetPath (string) Assets/Sprites/Snow.jpg + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 28 + packedSize (UInt64) 151875 + offset (UInt64) 524288 + sourceAssetGUID (GUID) + data[0] (unsigned int) 2731658232 + data[1] (unsigned int) 1324654785 + data[2] (unsigned int) 2360135852 + data[3] (unsigned int) 2253774587 + buildTimeAssetPath (string) Assets/Sprites/red.png + +ID: -2209428987046021830 (ClassID: 641289076) AudioBuildInfo + m_IsAudioDisabled (bool) False + m_AudioClipCount (int) 1 + m_AudioMixerCount (int) 0 + +ID: -837533726333199562 (ClassID: 1126) PackedAssets + m_ShortPath (string) sharedassets1.resource + m_Overhead (UInt64) 0 + m_Contents (vector) + Array[1] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 83 + packedSize (UInt64) 18496 + offset (UInt64) 0 + sourceAssetGUID (GUID) + data[0] (unsigned int) 510047344 + data[1] (unsigned int) 1200191226 + data[2] (unsigned int) 2021230213 + data[3] (unsigned int) 2122331027 + buildTimeAssetPath (string) Assets/audio/audio.mp3 + +ID: 1 (ClassID: 1125) BuildReport + m_ObjectHideFlags (unsigned int) 0 + m_CorrespondingSourceObject (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_PrefabInstance (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_PrefabAsset (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_Name (string) New Report + m_Summary (BuildSummary) + buildStartTime (DateTime) + ticks (SInt64) 639026101805010432 + buildGUID (GUID) + data[0] (unsigned int) 1816015996 + data[1] (unsigned int) 1779718668 + data[2] (unsigned int) 3322342121 + data[3] (unsigned int) 3828488599 + platformName (string) Win64 + platformGroupName (string) Standalone + subtarget (int) 2 + options (int) 137 + assetBundleOptions (int) 0 + outputPath (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject.exe + crc (unsigned int) 0 + totalSize (UInt64) 263323536 + totalTimeTicks (UInt64) 58976739 + totalErrors (int) 0 + totalWarnings (int) 0 + buildType (int) 1 + buildResult (int) 1 + multiProcessEnabled (bool) False + m_Files (vector) + Array[226] + data[0] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/globalgamemanagers + role (string) globalgamemanagers + id (unsigned int) 0 + totalSize (UInt64) 35636 + data[1] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/globalgamemanagers.assets + role (string) assets + id (unsigned int) 1 + totalSize (UInt64) 31924 + data[2] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/globalgamemanagers.assets.resS + role (string) resS + id (unsigned int) 2 + totalSize (UInt64) 2798288 + data[3] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/level0 + role (string) level0 + id (unsigned int) 3 + totalSize (UInt64) 2184 + data[4] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/level1 + role (string) level1 + id (unsigned int) 4 + totalSize (UInt64) 3384 + data[5] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Resources/unity_builtin_extra + role (string) unity_builtin_extra + id (unsigned int) 5 + totalSize (UInt64) 368772 + data[6] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/RuntimeInitializeOnLoads.json + role (string) json + id (unsigned int) 6 + totalSize (UInt64) 703 + data[7] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/ScriptingAssemblies.json + role (string) json + id (unsigned int) 7 + totalSize (UInt64) 3074 + data[8] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/sharedassets0.assets + role (string) assets + id (unsigned int) 8 + totalSize (UInt64) 1708 + data[9] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/sharedassets0.assets.resS + role (string) resS + id (unsigned int) 9 + totalSize (UInt64) 676176 + data[10] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/sharedassets1.assets + role (string) assets + id (unsigned int) 10 + totalSize (UInt64) 58460 + data[11] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/sharedassets1.resource + role (string) resource + id (unsigned int) 11 + totalSize (UInt64) 18496 + data[12] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/boot.config + role (string) config + id (unsigned int) 12 + totalSize (UInt64) 431 + data[13] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Assembly-CSharp.dll + role (string) dll + id (unsigned int) 13 + totalSize (UInt64) 5120 + data[14] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Mono.Security.dll + role (string) dll + id (unsigned int) 14 + totalSize (UInt64) 241152 + data[15] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/mscorlib.dll + role (string) dll + id (unsigned int) 15 + totalSize (UInt64) 4632064 + data[16] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/netstandard.dll + role (string) dll + id (unsigned int) 16 + totalSize (UInt64) 90112 + data[17] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.ComponentModel.Composition.dll + role (string) dll + id (unsigned int) 17 + totalSize (UInt64) 257024 + data[18] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Configuration.dll + role (string) dll + id (unsigned int) 18 + totalSize (UInt64) 124928 + data[19] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Core.dll + role (string) dll + id (unsigned int) 19 + totalSize (UInt64) 1113088 + data[20] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Data.DataSetExtensions.dll + role (string) dll + id (unsigned int) 20 + totalSize (UInt64) 29696 + data[21] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Data.dll + role (string) dll + id (unsigned int) 21 + totalSize (UInt64) 2125312 + data[22] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.dll + role (string) dll + id (unsigned int) 22 + totalSize (UInt64) 2641920 + data[23] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Drawing.dll + role (string) dll + id (unsigned int) 23 + totalSize (UInt64) 489984 + data[24] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.EnterpriseServices.dll + role (string) dll + id (unsigned int) 24 + totalSize (UInt64) 44544 + data[25] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.IO.Compression.dll + role (string) dll + id (unsigned int) 25 + totalSize (UInt64) 114688 + data[26] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.IO.Compression.FileSystem.dll + role (string) dll + id (unsigned int) 26 + totalSize (UInt64) 18432 + data[27] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Net.Http.dll + role (string) dll + id (unsigned int) 27 + totalSize (UInt64) 122880 + data[28] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Numerics.dll + role (string) dll + id (unsigned int) 28 + totalSize (UInt64) 119296 + data[29] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Runtime.Serialization.dll + role (string) dll + id (unsigned int) 29 + totalSize (UInt64) 934400 + data[30] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Security.dll + role (string) dll + id (unsigned int) 30 + totalSize (UInt64) 320000 + data[31] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.ServiceModel.Internals.dll + role (string) dll + id (unsigned int) 31 + totalSize (UInt64) 215040 + data[32] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Transactions.dll + role (string) dll + id (unsigned int) 32 + totalSize (UInt64) 35328 + data[33] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Xml.dll + role (string) dll + id (unsigned int) 33 + totalSize (UInt64) 3160064 + data[34] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Xml.Linq.dll + role (string) dll + id (unsigned int) 34 + totalSize (UInt64) 136704 + data[35] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.AI.Navigation.dll + role (string) dll + id (unsigned int) 35 + totalSize (UInt64) 26112 + data[36] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.Multiplayer.Center.Common.dll + role (string) dll + id (unsigned int) 36 + totalSize (UInt64) 10752 + data[37] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.TextMeshPro.dll + role (string) dll + id (unsigned int) 37 + totalSize (UInt64) 506880 + data[38] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.Timeline.dll + role (string) dll + id (unsigned int) 38 + totalSize (UInt64) 148992 + data[39] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AccessibilityModule.dll + role (string) dll + id (unsigned int) 39 + totalSize (UInt64) 42496 + data[40] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AIModule.dll + role (string) dll + id (unsigned int) 40 + totalSize (UInt64) 62976 + data[41] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AMDModule.dll + role (string) dll + id (unsigned int) 41 + totalSize (UInt64) 11264 + data[42] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AndroidJNIModule.dll + role (string) dll + id (unsigned int) 42 + totalSize (UInt64) 105984 + data[43] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AnimationModule.dll + role (string) dll + id (unsigned int) 43 + totalSize (UInt64) 203776 + data[44] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ARModule.dll + role (string) dll + id (unsigned int) 44 + totalSize (UInt64) 11776 + data[45] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AssetBundleModule.dll + role (string) dll + id (unsigned int) 45 + totalSize (UInt64) 28160 + data[46] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AudioModule.dll + role (string) dll + id (unsigned int) 46 + totalSize (UInt64) 92672 + data[47] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClothModule.dll + role (string) dll + id (unsigned int) 47 + totalSize (UInt64) 22528 + data[48] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClusterInputModule.dll + role (string) dll + id (unsigned int) 48 + totalSize (UInt64) 13824 + data[49] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClusterRendererModule.dll + role (string) dll + id (unsigned int) 49 + totalSize (UInt64) 12800 + data[50] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ContentLoadModule.dll + role (string) dll + id (unsigned int) 50 + totalSize (UInt64) 18432 + data[51] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.CoreModule.dll + role (string) dll + id (unsigned int) 51 + totalSize (UInt64) 1787392 + data[52] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.CrashReportingModule.dll + role (string) dll + id (unsigned int) 52 + totalSize (UInt64) 12800 + data[53] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.DirectorModule.dll + role (string) dll + id (unsigned int) 53 + totalSize (UInt64) 27648 + data[54] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.dll + role (string) dll + id (unsigned int) 54 + totalSize (UInt64) 159744 + data[55] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.DSPGraphModule.dll + role (string) dll + id (unsigned int) 55 + totalSize (UInt64) 19968 + data[56] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GameCenterModule.dll + role (string) dll + id (unsigned int) 56 + totalSize (UInt64) 31744 + data[57] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GIModule.dll + role (string) dll + id (unsigned int) 57 + totalSize (UInt64) 10240 + data[58] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GraphicsStateCollectionSerializerModule.dll + role (string) dll + id (unsigned int) 58 + totalSize (UInt64) 3584 + data[59] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GridModule.dll + role (string) dll + id (unsigned int) 59 + totalSize (UInt64) 16384 + data[60] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.HierarchyCoreModule.dll + role (string) dll + id (unsigned int) 60 + totalSize (UInt64) 80896 + data[61] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.HotReloadModule.dll + role (string) dll + id (unsigned int) 61 + totalSize (UInt64) 10240 + data[62] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ImageConversionModule.dll + role (string) dll + id (unsigned int) 62 + totalSize (UInt64) 17408 + data[63] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.IMGUIModule.dll + role (string) dll + id (unsigned int) 63 + totalSize (UInt64) 196096 + data[64] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputForUIModule.dll + role (string) dll + id (unsigned int) 64 + totalSize (UInt64) 46592 + data[65] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputLegacyModule.dll + role (string) dll + id (unsigned int) 65 + totalSize (UInt64) 31744 + data[66] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputModule.dll + role (string) dll + id (unsigned int) 66 + totalSize (UInt64) 14336 + data[67] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.JSONSerializeModule.dll + role (string) dll + id (unsigned int) 67 + totalSize (UInt64) 13312 + data[68] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.LocalizationModule.dll + role (string) dll + id (unsigned int) 68 + totalSize (UInt64) 12800 + data[69] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.MarshallingModule.dll + role (string) dll + id (unsigned int) 69 + totalSize (UInt64) 53760 + data[70] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.MultiplayerModule.dll + role (string) dll + id (unsigned int) 70 + totalSize (UInt64) 5120 + data[71] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.NVIDIAModule.dll + role (string) dll + id (unsigned int) 71 + totalSize (UInt64) 24576 + data[72] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ParticleSystemModule.dll + role (string) dll + id (unsigned int) 72 + totalSize (UInt64) 156160 + data[73] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PerformanceReportingModule.dll + role (string) dll + id (unsigned int) 73 + totalSize (UInt64) 11264 + data[74] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.Physics2DModule.dll + role (string) dll + id (unsigned int) 74 + totalSize (UInt64) 190464 + data[75] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PhysicsModule.dll + role (string) dll + id (unsigned int) 75 + totalSize (UInt64) 172544 + data[76] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PropertiesModule.dll + role (string) dll + id (unsigned int) 76 + totalSize (UInt64) 138752 + data[77] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll + role (string) dll + id (unsigned int) 77 + totalSize (UInt64) 10752 + data[78] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ScreenCaptureModule.dll + role (string) dll + id (unsigned int) 78 + totalSize (UInt64) 12288 + data[79] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ShaderVariantAnalyticsModule.dll + role (string) dll + id (unsigned int) 79 + totalSize (UInt64) 10752 + data[80] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SharedInternalsModule.dll + role (string) dll + id (unsigned int) 80 + totalSize (UInt64) 21504 + data[81] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpatialTracking.dll + role (string) dll + id (unsigned int) 81 + totalSize (UInt64) 12288 + data[82] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpriteMaskModule.dll + role (string) dll + id (unsigned int) 82 + totalSize (UInt64) 14336 + data[83] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpriteShapeModule.dll + role (string) dll + id (unsigned int) 83 + totalSize (UInt64) 17920 + data[84] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.StreamingModule.dll + role (string) dll + id (unsigned int) 84 + totalSize (UInt64) 11776 + data[85] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SubstanceModule.dll + role (string) dll + id (unsigned int) 85 + totalSize (UInt64) 15360 + data[86] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SubsystemsModule.dll + role (string) dll + id (unsigned int) 86 + totalSize (UInt64) 27648 + data[87] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TerrainModule.dll + role (string) dll + id (unsigned int) 87 + totalSize (UInt64) 119296 + data[88] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TerrainPhysicsModule.dll + role (string) dll + id (unsigned int) 88 + totalSize (UInt64) 11776 + data[89] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextCoreFontEngineModule.dll + role (string) dll + id (unsigned int) 89 + totalSize (UInt64) 74240 + data[90] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextCoreTextEngineModule.dll + role (string) dll + id (unsigned int) 90 + totalSize (UInt64) 292352 + data[91] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextRenderingModule.dll + role (string) dll + id (unsigned int) 91 + totalSize (UInt64) 35328 + data[92] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TilemapModule.dll + role (string) dll + id (unsigned int) 92 + totalSize (UInt64) 44032 + data[93] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TLSModule.dll + role (string) dll + id (unsigned int) 93 + totalSize (UInt64) 17408 + data[94] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UI.dll + role (string) dll + id (unsigned int) 94 + totalSize (UInt64) 298496 + data[95] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UIElementsModule.dll + role (string) dll + id (unsigned int) 95 + totalSize (UInt64) 2063872 + data[96] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UIModule.dll + role (string) dll + id (unsigned int) 96 + totalSize (UInt64) 34816 + data[97] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UmbraModule.dll + role (string) dll + id (unsigned int) 97 + totalSize (UInt64) 10240 + data[98] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityAnalyticsCommonModule.dll + role (string) dll + id (unsigned int) 98 + totalSize (UInt64) 21504 + data[99] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityAnalyticsModule.dll + role (string) dll + id (unsigned int) 99 + totalSize (UInt64) 46592 + data[100] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityConnectModule.dll + role (string) dll + id (unsigned int) 100 + totalSize (UInt64) 13312 + data[101] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityCurlModule.dll + role (string) dll + id (unsigned int) 101 + totalSize (UInt64) 12288 + data[102] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityTestProtocolModule.dll + role (string) dll + id (unsigned int) 102 + totalSize (UInt64) 10752 + data[103] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.dll + role (string) dll + id (unsigned int) 103 + totalSize (UInt64) 14848 + data[104] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestAudioModule.dll + role (string) dll + id (unsigned int) 104 + totalSize (UInt64) 14336 + data[105] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestModule.dll + role (string) dll + id (unsigned int) 105 + totalSize (UInt64) 55296 + data[106] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestTextureModule.dll + role (string) dll + id (unsigned int) 106 + totalSize (UInt64) 13824 + data[107] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestWWWModule.dll + role (string) dll + id (unsigned int) 107 + totalSize (UInt64) 22528 + data[108] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VehiclesModule.dll + role (string) dll + id (unsigned int) 108 + totalSize (UInt64) 17408 + data[109] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VFXModule.dll + role (string) dll + id (unsigned int) 109 + totalSize (UInt64) 64000 + data[110] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VideoModule.dll + role (string) dll + id (unsigned int) 110 + totalSize (UInt64) 44544 + data[111] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VirtualTexturingModule.dll + role (string) dll + id (unsigned int) 111 + totalSize (UInt64) 29184 + data[112] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VRModule.dll + role (string) dll + id (unsigned int) 112 + totalSize (UInt64) 17408 + data[113] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.WindModule.dll + role (string) dll + id (unsigned int) 113 + totalSize (UInt64) 12800 + data[114] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.XR.LegacyInputHelpers.dll + role (string) dll + id (unsigned int) 114 + totalSize (UInt64) 25088 + data[115] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.XRModule.dll + role (string) dll + id (unsigned int) 115 + totalSize (UInt64) 73728 + data[116] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Assembly-CSharp.pdb + role (string) pdb + id (unsigned int) 116 + totalSize (UInt64) 16376 + data[117] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.AI.Navigation.pdb + role (string) pdb + id (unsigned int) 117 + totalSize (UInt64) 25272 + data[118] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.Multiplayer.Center.Common.pdb + role (string) pdb + id (unsigned int) 118 + totalSize (UInt64) 17628 + data[119] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.TextMeshPro.pdb + role (string) pdb + id (unsigned int) 119 + totalSize (UInt64) 256336 + data[120] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.Timeline.pdb + role (string) pdb + id (unsigned int) 120 + totalSize (UInt64) 90272 + data[121] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AccessibilityModule.pdb + role (string) pdb + id (unsigned int) 121 + totalSize (UInt64) 25048 + data[122] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AIModule.pdb + role (string) pdb + id (unsigned int) 122 + totalSize (UInt64) 20392 + data[123] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AMDModule.pdb + role (string) pdb + id (unsigned int) 123 + totalSize (UInt64) 11784 + data[124] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AndroidJNIModule.pdb + role (string) pdb + id (unsigned int) 124 + totalSize (UInt64) 49676 + data[125] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AnimationModule.pdb + role (string) pdb + id (unsigned int) 125 + totalSize (UInt64) 58372 + data[126] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ARModule.pdb + role (string) pdb + id (unsigned int) 126 + totalSize (UInt64) 9768 + data[127] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AssetBundleModule.pdb + role (string) pdb + id (unsigned int) 127 + totalSize (UInt64) 13896 + data[128] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AudioModule.pdb + role (string) pdb + id (unsigned int) 128 + totalSize (UInt64) 23724 + data[129] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClothModule.pdb + role (string) pdb + id (unsigned int) 129 + totalSize (UInt64) 10360 + data[130] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClusterInputModule.pdb + role (string) pdb + id (unsigned int) 130 + totalSize (UInt64) 9156 + data[131] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClusterRendererModule.pdb + role (string) pdb + id (unsigned int) 131 + totalSize (UInt64) 9756 + data[132] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ContentLoadModule.pdb + role (string) pdb + id (unsigned int) 132 + totalSize (UInt64) 10928 + data[133] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.CoreModule.pdb + role (string) pdb + id (unsigned int) 133 + totalSize (UInt64) 523876 + data[134] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.CrashReportingModule.pdb + role (string) pdb + id (unsigned int) 134 + totalSize (UInt64) 9700 + data[135] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.DirectorModule.pdb + role (string) pdb + id (unsigned int) 135 + totalSize (UInt64) 13664 + data[136] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.DSPGraphModule.pdb + role (string) pdb + id (unsigned int) 136 + totalSize (UInt64) 10300 + data[137] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GameCenterModule.pdb + role (string) pdb + id (unsigned int) 137 + totalSize (UInt64) 17240 + data[138] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GIModule.pdb + role (string) pdb + id (unsigned int) 138 + totalSize (UInt64) 9036 + data[139] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GraphicsStateCollectionSerializerModule.pdb + role (string) pdb + id (unsigned int) 139 + totalSize (UInt64) 9064 + data[140] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GridModule.pdb + role (string) pdb + id (unsigned int) 140 + totalSize (UInt64) 9784 + data[141] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.HierarchyCoreModule.pdb + role (string) pdb + id (unsigned int) 141 + totalSize (UInt64) 31420 + data[142] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.HotReloadModule.pdb + role (string) pdb + id (unsigned int) 142 + totalSize (UInt64) 9036 + data[143] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ImageConversionModule.pdb + role (string) pdb + id (unsigned int) 143 + totalSize (UInt64) 10372 + data[144] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.IMGUIModule.pdb + role (string) pdb + id (unsigned int) 144 + totalSize (UInt64) 89156 + data[145] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputForUIModule.pdb + role (string) pdb + id (unsigned int) 145 + totalSize (UInt64) 25784 + data[146] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputLegacyModule.pdb + role (string) pdb + id (unsigned int) 146 + totalSize (UInt64) 15136 + data[147] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputModule.pdb + role (string) pdb + id (unsigned int) 147 + totalSize (UInt64) 10392 + data[148] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.JSONSerializeModule.pdb + role (string) pdb + id (unsigned int) 148 + totalSize (UInt64) 9652 + data[149] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.LocalizationModule.pdb + role (string) pdb + id (unsigned int) 149 + totalSize (UInt64) 9448 + data[150] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.MarshallingModule.pdb + role (string) pdb + id (unsigned int) 150 + totalSize (UInt64) 12480 + data[151] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.MultiplayerModule.pdb + role (string) pdb + id (unsigned int) 151 + totalSize (UInt64) 9060 + data[152] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.NVIDIAModule.pdb + role (string) pdb + id (unsigned int) 152 + totalSize (UInt64) 15460 + data[153] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ParticleSystemModule.pdb + role (string) pdb + id (unsigned int) 153 + totalSize (UInt64) 39964 + data[154] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.pdb + role (string) pdb + id (unsigned int) 154 + totalSize (UInt64) 12116 + data[155] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PerformanceReportingModule.pdb + role (string) pdb + id (unsigned int) 155 + totalSize (UInt64) 9240 + data[156] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.Physics2DModule.pdb + role (string) pdb + id (unsigned int) 156 + totalSize (UInt64) 48312 + data[157] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PhysicsModule.pdb + role (string) pdb + id (unsigned int) 157 + totalSize (UInt64) 47248 + data[158] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PropertiesModule.pdb + role (string) pdb + id (unsigned int) 158 + totalSize (UInt64) 58716 + data[159] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.pdb + role (string) pdb + id (unsigned int) 159 + totalSize (UInt64) 9096 + data[160] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ScreenCaptureModule.pdb + role (string) pdb + id (unsigned int) 160 + totalSize (UInt64) 9632 + data[161] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ShaderVariantAnalyticsModule.pdb + role (string) pdb + id (unsigned int) 161 + totalSize (UInt64) 9160 + data[162] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SharedInternalsModule.pdb + role (string) pdb + id (unsigned int) 162 + totalSize (UInt64) 13452 + data[163] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpatialTracking.pdb + role (string) pdb + id (unsigned int) 163 + totalSize (UInt64) 18920 + data[164] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpriteMaskModule.pdb + role (string) pdb + id (unsigned int) 164 + totalSize (UInt64) 9368 + data[165] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpriteShapeModule.pdb + role (string) pdb + id (unsigned int) 165 + totalSize (UInt64) 10592 + data[166] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.StreamingModule.pdb + role (string) pdb + id (unsigned int) 166 + totalSize (UInt64) 9112 + data[167] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SubstanceModule.pdb + role (string) pdb + id (unsigned int) 167 + totalSize (UInt64) 11232 + data[168] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SubsystemsModule.pdb + role (string) pdb + id (unsigned int) 168 + totalSize (UInt64) 15744 + data[169] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TerrainModule.pdb + role (string) pdb + id (unsigned int) 169 + totalSize (UInt64) 33664 + data[170] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TerrainPhysicsModule.pdb + role (string) pdb + id (unsigned int) 170 + totalSize (UInt64) 9496 + data[171] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextCoreFontEngineModule.pdb + role (string) pdb + id (unsigned int) 171 + totalSize (UInt64) 28088 + data[172] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextCoreTextEngineModule.pdb + role (string) pdb + id (unsigned int) 172 + totalSize (UInt64) 134900 + data[173] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextRenderingModule.pdb + role (string) pdb + id (unsigned int) 173 + totalSize (UInt64) 15160 + data[174] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TilemapModule.pdb + role (string) pdb + id (unsigned int) 174 + totalSize (UInt64) 18756 + data[175] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TLSModule.pdb + role (string) pdb + id (unsigned int) 175 + totalSize (UInt64) 9056 + data[176] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UI.pdb + role (string) pdb + id (unsigned int) 176 + totalSize (UInt64) 181520 + data[177] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UIElementsModule.pdb + role (string) pdb + id (unsigned int) 177 + totalSize (UInt64) 919012 + data[178] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UIModule.pdb + role (string) pdb + id (unsigned int) 178 + totalSize (UInt64) 13576 + data[179] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UmbraModule.pdb + role (string) pdb + id (unsigned int) 179 + totalSize (UInt64) 9036 + data[180] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityAnalyticsCommonModule.pdb + role (string) pdb + id (unsigned int) 180 + totalSize (UInt64) 13484 + data[181] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityAnalyticsModule.pdb + role (string) pdb + id (unsigned int) 181 + totalSize (UInt64) 17744 + data[182] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityConnectModule.pdb + role (string) pdb + id (unsigned int) 182 + totalSize (UInt64) 9628 + data[183] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityCurlModule.pdb + role (string) pdb + id (unsigned int) 183 + totalSize (UInt64) 9420 + data[184] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityTestProtocolModule.pdb + role (string) pdb + id (unsigned int) 184 + totalSize (UInt64) 9096 + data[185] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.pdb + role (string) pdb + id (unsigned int) 185 + totalSize (UInt64) 10600 + data[186] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestAudioModule.pdb + role (string) pdb + id (unsigned int) 186 + totalSize (UInt64) 10404 + data[187] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestModule.pdb + role (string) pdb + id (unsigned int) 187 + totalSize (UInt64) 28084 + data[188] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestTextureModule.pdb + role (string) pdb + id (unsigned int) 188 + totalSize (UInt64) 10568 + data[189] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestWWWModule.pdb + role (string) pdb + id (unsigned int) 189 + totalSize (UInt64) 13468 + data[190] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VehiclesModule.pdb + role (string) pdb + id (unsigned int) 190 + totalSize (UInt64) 10272 + data[191] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VFXModule.pdb + role (string) pdb + id (unsigned int) 191 + totalSize (UInt64) 18532 + data[192] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VideoModule.pdb + role (string) pdb + id (unsigned int) 192 + totalSize (UInt64) 13936 + data[193] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VirtualTexturingModule.pdb + role (string) pdb + id (unsigned int) 193 + totalSize (UInt64) 13276 + data[194] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VRModule.pdb + role (string) pdb + id (unsigned int) 194 + totalSize (UInt64) 10156 + data[195] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.WindModule.pdb + role (string) pdb + id (unsigned int) 195 + totalSize (UInt64) 9172 + data[196] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.XR.LegacyInputHelpers.pdb + role (string) pdb + id (unsigned int) 196 + totalSize (UInt64) 25224 + data[197] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.XRModule.pdb + role (string) pdb + id (unsigned int) 197 + totalSize (UInt64) 24004 + data[198] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/app.info + role (string) info + id (unsigned int) 198 + totalSize (UInt64) 26 + data[199] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Resources/unity default resources + role (string) unity default resources + id (unsigned int) 199 + totalSize (UInt64) 5858500 + data[200] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject.exe + role (string) exe + id (unsigned int) 200 + totalSize (UInt64) 672256 + data[201] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/EmbedRuntime/mono-2.0-bdwgc.dll + role (string) dll + id (unsigned int) 201 + totalSize (UInt64) 7820288 + data[202] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/EmbedRuntime/MonoPosixHelper.dll + role (string) dll + id (unsigned int) 202 + totalSize (UInt64) 600576 + data[203] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/Browsers/Compat.browser + role (string) browser + id (unsigned int) 203 + totalSize (UInt64) 1605 + data[204] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx + role (string) aspx + id (unsigned int) 204 + totalSize (UInt64) 60575 + data[205] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/machine.config + role (string) config + id (unsigned int) 205 + totalSize (UInt64) 29066 + data[206] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/settings.map + role (string) map + id (unsigned int) 206 + totalSize (UInt64) 2622 + data[207] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/web.config + role (string) config + id (unsigned int) 207 + totalSize (UInt64) 11635 + data[208] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/Browsers/Compat.browser + role (string) browser + id (unsigned int) 208 + totalSize (UInt64) 1605 + data[209] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/DefaultWsdlHelpGenerator.aspx + role (string) aspx + id (unsigned int) 209 + totalSize (UInt64) 60575 + data[210] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/machine.config + role (string) config + id (unsigned int) 210 + totalSize (UInt64) 33598 + data[211] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/settings.map + role (string) map + id (unsigned int) 211 + totalSize (UInt64) 2622 + data[212] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/web.config + role (string) config + id (unsigned int) 212 + totalSize (UInt64) 18802 + data[213] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/Browsers/Compat.browser + role (string) browser + id (unsigned int) 213 + totalSize (UInt64) 1605 + data[214] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/DefaultWsdlHelpGenerator.aspx + role (string) aspx + id (unsigned int) 214 + totalSize (UInt64) 60575 + data[215] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/machine.config + role (string) config + id (unsigned int) 215 + totalSize (UInt64) 34056 + data[216] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/settings.map + role (string) map + id (unsigned int) 216 + totalSize (UInt64) 2622 + data[217] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/web.config + role (string) config + id (unsigned int) 217 + totalSize (UInt64) 18811 + data[218] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/browscap.ini + role (string) ini + id (unsigned int) 218 + totalSize (UInt64) 311984 + data[219] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/config + role (string) config + id (unsigned int) 219 + totalSize (UInt64) 3815 + data[220] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/mconfig/config.xml + role (string) xml + id (unsigned int) 220 + totalSize (UInt64) 25817 + data[221] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/UnityCrashHandler64.exe + role (string) exe + id (unsigned int) 221 + totalSize (UInt64) 7282688 + data[222] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/UnityPlayer.dll + role (string) dll + id (unsigned int) 222 + totalSize (UInt64) 192243200 + data[223] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/WinPixEventRuntime.dll + role (string) dll + id (unsigned int) 223 + totalSize (UInt64) 58368 + data[224] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/D3D12/D3D12Core.dll + role (string) dll + id (unsigned int) 224 + totalSize (UInt64) 5908408 + data[225] (BuildReportFile) + path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/D3D12/d3d12SDKLayers.dll + role (string) dll + id (unsigned int) 225 + totalSize (UInt64) 9525272 + m_BuildSteps (vector) + Array[26] + data[0] (BuildStepInfo) + stepName (string) Build player + durationTicks (UInt64) 58976739 + depth (int) 0 + messages (vector) + Array[0] + data[1] (BuildStepInfo) + stepName (string) Preprocess Player + durationTicks (UInt64) 114960 + depth (int) 1 + messages (vector) + Array[0] + data[2] (BuildStepInfo) + stepName (string) Prepare For Build + durationTicks (UInt64) 2476643 + depth (int) 1 + messages (vector) + Array[0] + data[3] (BuildStepInfo) + stepName (string) ProducePlayerScriptAssemblies + durationTicks (UInt64) 33733176 + depth (int) 1 + messages (vector) + Array[0] + data[4] (BuildStepInfo) + stepName (string) Prebuild Cleanup and Recompile + durationTicks (UInt64) 29833880 + depth (int) 2 + messages (vector) + Array[0] + data[5] (BuildStepInfo) + stepName (string) Compile scripts + durationTicks (UInt64) 29606308 + depth (int) 3 + messages (vector) + Array[0] + data[6] (BuildStepInfo) + stepName (string) Generate and validate platform script types + durationTicks (UInt64) 184213 + depth (int) 3 + messages (vector) + Array[0] + data[7] (BuildStepInfo) + stepName (string) Verify Build setup + durationTicks (UInt64) 117657 + depth (int) 1 + messages (vector) + Array[0] + data[8] (BuildStepInfo) + stepName (string) Prepare assets for target platform + durationTicks (UInt64) 71250 + depth (int) 1 + messages (vector) + Array[0] + data[9] (BuildStepInfo) + stepName (string) Prepare splash screen + durationTicks (UInt64) 6948 + depth (int) 1 + messages (vector) + Array[1] + data[0] (BuildStepMessage) + type (int) 3 + content (string) Including Unity Splash Screen logo because 'Show Unity Logo' is enabled. + data[10] (BuildStepInfo) + stepName (string) Building scenes + durationTicks (UInt64) 1045290 + depth (int) 1 + messages (vector) + Array[0] + data[11] (BuildStepInfo) + stepName (string) Building scene Assets/Scenes/SampleScene.unity + durationTicks (UInt64) 526194 + depth (int) 2 + messages (vector) + Array[0] + data[12] (BuildStepInfo) + stepName (string) Building scene Assets/Scenes/Scene2.unity + durationTicks (UInt64) 518519 + depth (int) 2 + messages (vector) + Array[0] + data[13] (BuildStepInfo) + stepName (string) Build scripts DLLs + durationTicks (UInt64) 222040 + depth (int) 1 + messages (vector) + Array[0] + data[14] (BuildStepInfo) + stepName (string) GetSystemAssemblies + durationTicks (UInt64) 18065 + depth (int) 2 + messages (vector) + Array[0] + data[15] (BuildStepInfo) + stepName (string) Build GlobalGameManagers file + durationTicks (UInt64) 1630809 + depth (int) 1 + messages (vector) + Array[0] + data[16] (BuildStepInfo) + stepName (string) Writing asset files + durationTicks (UInt64) 812536 + depth (int) 1 + messages (vector) + Array[0] + data[17] (BuildStepInfo) + stepName (string) Packaging assets - globalgamemanagers.assets + durationTicks (UInt64) 386663 + depth (int) 2 + messages (vector) + Array[0] + data[18] (BuildStepInfo) + stepName (string) Packaging assets - sharedassets0.assets = additional assets for scene 0: Assets/Scenes/SampleScene.unity + durationTicks (UInt64) 36262 + depth (int) 2 + messages (vector) + Array[0] + data[19] (BuildStepInfo) + stepName (string) Packaging assets - sharedassets1.assets = additional assets for scene 1: Assets/Scenes/Scene2.unity + durationTicks (UInt64) 331391 + depth (int) 2 + messages (vector) + Array[0] + data[20] (BuildStepInfo) + stepName (string) Building Resources/unity_builtin_extra + durationTicks (UInt64) 1073435 + depth (int) 1 + messages (vector) + Array[0] + data[21] (BuildStepInfo) + stepName (string) Write data build dirty tracking information + durationTicks (UInt64) 493831 + depth (int) 1 + messages (vector) + Array[0] + data[22] (BuildStepInfo) + stepName (string) Postprocess built player + durationTicks (UInt64) 14792654 + depth (int) 1 + messages (vector) + Array[0] + data[23] (BuildStepInfo) + stepName (string) Setup incremental player build + durationTicks (UInt64) 518578 + depth (int) 2 + messages (vector) + Array[0] + data[24] (BuildStepInfo) + stepName (string) Incremental player build + durationTicks (UInt64) 10927654 + depth (int) 2 + messages (vector) + Array[0] + data[25] (BuildStepInfo) + stepName (string) Report output files + durationTicks (UInt64) 275374 + depth (int) 2 + messages (vector) + Array[0] + m_Appendices (vector) + Array>[10] + data[0] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -4621170717555149581 + data[1] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -8657125485098368963 + data[2] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 6492385875147650225 + data[3] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 1106856995980594659 + data[4] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -4211197064891926221 + data[5] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -837533726333199562 + data[6] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 1152048598135469203 + data[7] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 8852773078263724989 + data[8] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -2209428987046021830 + data[9] (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) -8406665477514816739 + +ID: 1106856995980594659 (ClassID: 1126) PackedAssets + m_ShortPath (string) globalgamemanagers.assets.resS + m_Overhead (UInt64) 0 + m_Contents (vector) + Array[2] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 28 + packedSize (UInt64) 2796240 + offset (UInt64) 0 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Built-in Texture2D: Splash Screen Unity Logo + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 0 + classID (Type*) 28 + packedSize (UInt64) 2048 + offset (UInt64) 2796240 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + +ID: 1152048598135469203 (ClassID: 114) MonoBehaviour + m_ObjectHideFlags (unsigned int) 3 + m_CorrespondingSourceObject (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_PrefabInstance (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_PrefabAsset (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_GameObject (PPtr) + m_FileID (int) 0 + m_PathID (SInt64) 0 + m_Enabled (UInt8) 1 + m_EditorHideFlags (unsigned int) 0 + m_Script (PPtr) + m_FileID (int) 1 + m_PathID (SInt64) 13805 + m_Name (string) + m_EditorClassIdentifier (string) + +ID: 6492385875147650225 (ClassID: 1126) PackedAssets + m_ShortPath (string) sharedassets1.assets + m_Overhead (UInt64) 575 + m_Contents (vector) + Array[6] + data[0] (BuildReportPackedAssetInfo) + fileID (SInt64) 1 + classID (Type*) 150 + packedSize (UInt64) 97 + offset (UInt64) 528 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 0 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) + data[1] (BuildReportPackedAssetInfo) + fileID (SInt64) 2 + classID (Type*) 21 + packedSize (UInt64) 1064 + offset (UInt64) 640 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[2] (BuildReportPackedAssetInfo) + fileID (SInt64) 3 + classID (Type*) 21 + packedSize (UInt64) 268 + offset (UInt64) 1712 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[3] (BuildReportPackedAssetInfo) + fileID (SInt64) 4 + classID (Type*) 48 + packedSize (UInt64) 49400 + offset (UInt64) 1984 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[4] (BuildReportPackedAssetInfo) + fileID (SInt64) 5 + classID (Type*) 48 + packedSize (UInt64) 6964 + offset (UInt64) 51392 + sourceAssetGUID (GUID) + data[0] (unsigned int) 0 + data[1] (unsigned int) 0 + data[2] (unsigned int) 15 + data[3] (unsigned int) 0 + buildTimeAssetPath (string) Resources/unity_builtin_extra + data[5] (BuildReportPackedAssetInfo) + fileID (SInt64) 6 + classID (Type*) 83 + packedSize (UInt64) 92 + offset (UInt64) 58368 + sourceAssetGUID (GUID) + data[0] (unsigned int) 510047344 + data[1] (unsigned int) 1200191226 + data[2] (unsigned int) 2021230213 + data[3] (unsigned int) 2122331027 + buildTimeAssetPath (string) Assets/audio/audio.mp3 + +ID: 8852773078263724989 (ClassID: 382020655) PluginBuildInfo + m_RuntimePlugins (vector) + Array[1] + data[0] (string) nunit.framework + m_EditorPlugins (vector) + Array[8] + data[0] (string) Unity.Plastic.Newtonsoft.Json + data[1] (string) Unity.Plastic.Antlr3.Runtime + data[2] (string) zlib64Plastic + data[3] (string) liblz4Plastic + data[4] (string) JetBrains.Rider.PathLocator + data[5] (string) log4netPlastic + data[6] (string) lz4x64Plastic + data[7] (string) unityplastic + diff --git a/TestCommon/Data/BuildReports/README.md b/TestCommon/Data/BuildReports/README.md new file mode 100644 index 0000000..30714b8 --- /dev/null +++ b/TestCommon/Data/BuildReports/README.md @@ -0,0 +1,9 @@ +# Reference BuildReports + +These example files are used for testing UnityDataTool support for BuildReports. They are in the Unity binary format, copied from `Library/LastBuild.buildReport` after performing a build in Unity. + +They were output from the TestProject in the [BuildReportInspector](https://github.com/Unity-Technologies/BuildReportInspector/tree/master/TestProject). + +* **AssetBundle.buildreport** - Example report from an AssetBundle build (BuildPipeline.BuildAssetBundles). +* **Player.buildreport** - BuildReport for a Windows Player build with detailed build reporting (generated with Unity 6000.0.65f1) + diff --git a/UnityDataTool.Tests/BuildReportTests.cs b/UnityDataTool.Tests/BuildReportTests.cs index 2e8833e..7378de4 100644 --- a/UnityDataTool.Tests/BuildReportTests.cs +++ b/UnityDataTool.Tests/BuildReportTests.cs @@ -18,7 +18,7 @@ public class BuildReportTests public void OneTimeSetup() { m_TestOutputFolder = Path.Combine(TestContext.CurrentContext.TestDirectory, "test_folder"); - m_TestDataFolder = Path.Combine(TestContext.CurrentContext.TestDirectory, "Data"); + m_TestDataFolder = Path.Combine(TestContext.CurrentContext.TestDirectory, "Data", "BuildReports"); Directory.CreateDirectory(m_TestOutputFolder); Directory.SetCurrentDirectory(m_TestOutputFolder); } @@ -44,12 +44,9 @@ public void Teardown() public async Task Analyze_BuildReport_ContainsExpected_ObjectInfo( [Values(false, true)] bool skipReferences) { - // This folder contains a reference build report generated by a build of the TestProject - // in the BuildReportInspector package. - var path = Path.Combine(m_TestDataFolder, "BuildReport1"); var databasePath = SQLTestHelper.GetDatabasePath(m_TestOutputFolder); - var args = new List { "analyze", path, "-p", "*.buildreport" }; + var args = new List { "analyze", m_TestDataFolder, "-p", "AssetBundle.buildreport" }; if (skipReferences) args.Add("--skip-references"); @@ -104,7 +101,7 @@ public async Task Analyze_BuildReport_ContainsExpected_ObjectInfo( SQLTestHelper.AssertQueryInt(db, "SELECT COUNT(DISTINCT serialized_file) FROM object_view", 1, "All objects should be from the same serialized file"); - SQLTestHelper.AssertQueryString(db, "SELECT DISTINCT serialized_file FROM object_view", "LastBuild.buildreport", + SQLTestHelper.AssertQueryString(db, "SELECT DISTINCT serialized_file FROM object_view", "AssetBundle.buildreport", "Unexpected serialized file name in object_view"); // Verify the BuildReport object has expected properties @@ -139,7 +136,7 @@ public async Task Analyze_BuildReport_ContainsExpected_ObjectInfo( SQLTestHelper.AssertQueryInt(db, "SELECT COUNT(*) FROM serialized_files", 1, "Expected exactly one serialized file"); - SQLTestHelper.AssertQueryString(db, "SELECT name FROM serialized_files WHERE id = 0", "LastBuild.buildreport", + SQLTestHelper.AssertQueryString(db, "SELECT name FROM serialized_files WHERE id = 0", "AssetBundle.buildreport", "Unexpected serialized file name"); // Verify asset_bundle column is empty/NULL for BuildReport files (they are not asset bundles) @@ -160,10 +157,9 @@ public async Task Analyze_BuildReport_ContainsExpected_ObjectInfo( public async Task Analyze_BuildReport_ContainsExpectedReferences( [Values(false, true)] bool skipReferences) { - var path = Path.Combine(m_TestDataFolder, "BuildReport1"); var databasePath = SQLTestHelper.GetDatabasePath(m_TestOutputFolder); - var args = new List { "analyze", path, "-p", "*.buildreport" }; + var args = new List { "analyze", m_TestDataFolder, "-p", "AssetBundle.buildreport" }; if (skipReferences) args.Add("--skip-references"); @@ -212,4 +208,265 @@ public async Task Analyze_BuildReport_ContainsExpectedReferences( Assert.AreEqual(0, duplicateRefs, "No object should be referenced more than once"); } + + [Test] + public async Task Analyze_BuildReport_AssetBundle_ContainsBuildReportData() + { + var databasePath = SQLTestHelper.GetDatabasePath(m_TestOutputFolder); + + var args = new List { "analyze", m_TestDataFolder, "-p", "AssetBundle.buildreport" }; + + Assert.AreEqual(0, await Program.Main(args.ToArray())); + using var db = SQLTestHelper.OpenDatabase(databasePath); + + SQLTestHelper.AssertQueryInt(db, "SELECT COUNT(*) FROM build_reports", 1, + "Expected exactly one row in build_reports table"); + SQLTestHelper.AssertQueryString(db, "SELECT platform_name FROM build_reports", "Win64", + "Unexpected platform_name"); + SQLTestHelper.AssertQueryString(db, "SELECT build_type FROM build_reports", "AssetBundle", + "Unexpected build_type"); + SQLTestHelper.AssertQueryInt(db, "SELECT subtarget FROM build_reports", 2, + "Unexpected subtarget"); + SQLTestHelper.AssertQueryInt(db, "SELECT total_errors FROM build_reports", 0, + "Unexpected total_errors"); + SQLTestHelper.AssertQueryInt(db, "SELECT total_warnings FROM build_reports", 0, + "Unexpected total_warnings"); + SQLTestHelper.AssertQueryString(db, "SELECT build_result FROM build_reports", "Succeeded", + "Unexpected build_result"); + + var outputPath = SQLTestHelper.QueryString(db, "SELECT output_path FROM build_reports"); + Assert.That(outputPath, Does.Contain("AssetBundles"), "Output path should contain 'AssetBundles'"); + + var totalSize = SQLTestHelper.QueryInt(db, "SELECT total_size FROM build_reports"); + Assert.That(totalSize, Is.GreaterThan(0), "total_size should be greater than 0"); + } + + [Test] + public async Task Analyze_BuildReport_Player_ContainsBuildReportData() + { + var databasePath = SQLTestHelper.GetDatabasePath(m_TestOutputFolder); + + var args = new List { "analyze", m_TestDataFolder, "-p", "Player.buildreport" }; + + Assert.AreEqual(0, await Program.Main(args.ToArray())); + using var db = SQLTestHelper.OpenDatabase(databasePath); + + SQLTestHelper.AssertQueryInt(db, "SELECT COUNT(*) FROM build_reports", 1, + "Expected exactly one row in build_reports table"); + SQLTestHelper.AssertQueryString(db, "SELECT build_type FROM build_reports", "Player", + "Unexpected build_type"); + + // These checks are based on knowledge what the specific values in this test build report + SQLTestHelper.AssertQueryString(db, "SELECT build_guid FROM build_reports", "c743e3c6c0a541a69eae606c7991234e", + "Unexpected build_guid"); + SQLTestHelper.AssertQueryInt(db, "SELECT subtarget FROM build_reports", 2, + "Unexpected subtarget"); + SQLTestHelper.AssertQueryInt(db, "SELECT options FROM build_reports", 137, + "Unexpected options"); + SQLTestHelper.AssertQueryString(db, "SELECT build_result FROM build_reports", "Succeeded", + "Unexpected build_result"); + SQLTestHelper.AssertQueryString(db, "SELECT start_time FROM build_reports", "2025-12-29T13:03:00.5010432Z", + "Unexpected start time"); + SQLTestHelper.AssertQueryString(db, "SELECT end_time FROM build_reports", "2025-12-29T13:03:06.3987171Z", + "Unexpected end time"); + SQLTestHelper.AssertQueryInt(db, "SELECT total_time_seconds FROM build_reports", 6, + "Unexpected total_time_seconds"); + + var totalSize = SQLTestHelper.QueryInt(db, "SELECT total_size FROM build_reports"); + Assert.That(totalSize, Is.GreaterThan(0), "total_size should be greater than 0"); + + var outputPath = SQLTestHelper.QueryString(db, "SELECT output_path FROM build_reports"); + Assert.That(outputPath, Does.Contain("TestProject.exe"), "Output path should contain 'TestProject.exe'"); + } + + [Test] + public async Task Analyze_BuildReport_AssetBundle_ContainsPackedAssetsData() + { + var databasePath = SQLTestHelper.GetDatabasePath(m_TestOutputFolder); + + var args = new List { "analyze", m_TestDataFolder, "-p", "AssetBundle.buildreport" }; + + Assert.AreEqual(0, await Program.Main(args.ToArray())); + using var db = SQLTestHelper.OpenDatabase(databasePath); + + // Verify the build_report_packed_assets table has the expected number of rows + SQLTestHelper.AssertQueryInt(db, "SELECT COUNT(*) FROM build_report_packed_assets", 7, + "Expected exactly 7 rows in build_report_packed_assets table"); + + // Verify the specific PackedAssets object (corresponds to raw object ID -2699881322159949766 in the file) + const string path = "CAB-6b49068aebcf9d3b05692c8efd933167"; + SQLTestHelper.AssertQueryInt(db, $"SELECT COUNT(*) FROM build_report_packed_assets WHERE path = '{path}'", 1, + $"Expected exactly one PackedAssets with path = {path}"); + + SQLTestHelper.AssertQueryInt(db, $"SELECT file_header_size FROM build_report_packed_assets WHERE path = '{path}'", 10720, + "Unexpected file_header_size for PackedAssets"); + + // Get the database ID for this PackedAssets + var packedAssetId = SQLTestHelper.QueryInt(db, $"SELECT id FROM build_report_packed_assets WHERE path = '{path}'"); + + // Verify there are 7 content rows for this PackedAssets + SQLTestHelper.AssertQueryInt(db, $"SELECT COUNT(*) FROM build_report_packed_asset_info WHERE packed_assets_id = {packedAssetId}", 7, + "Expected exactly 7 rows in build_report_packed_asset_info for this PackedAssets"); + + // Verify the specific content row (data[3] from the dump) + const long objectId = -1350043613627603771; + var contentRow = SQLTestHelper.QueryInt(db, + $@"SELECT COUNT(*) FROM build_report_packed_asset_contents_view + WHERE packed_assets_id = {packedAssetId} + AND object_id = {objectId} + AND type = 28 + AND size = 204 + AND offset = 11840 + AND source_asset_guid = '8826f464101b93c4bb006e15a9aff317' + AND build_time_asset_path = 'Assets/Sprites/Snow.jpg'"); + + Assert.AreEqual(1, contentRow, + "Expected exactly one packed_asset_contents row matching the specified criteria"); + + // Verify the view works correctly for this content row + SQLTestHelper.AssertQueryString(db, + $@"SELECT source_asset_guid FROM build_report_packed_asset_contents_view + WHERE packed_assets_id = {packedAssetId} + AND object_id = {objectId}", + "8826f464101b93c4bb006e15a9aff317", + "Unexpected source_asset_guid in build_report_packed_asset_contents_view"); + + SQLTestHelper.AssertQueryString(db, + $@"SELECT build_time_asset_path FROM build_report_packed_asset_contents_view + WHERE packed_assets_id = {packedAssetId} + AND object_id = {objectId}", + "Assets/Sprites/Snow.jpg", + "Unexpected build_time_asset_path in build_report_packed_asset_contents_view"); + + SQLTestHelper.AssertQueryString(db, + $"SELECT path FROM build_report_packed_assets_view WHERE id = {packedAssetId}", + "CAB-6b49068aebcf9d3b05692c8efd933167", + "Unexpected path in build_report_packed_assets_view"); + } + + [Test] + public async Task Analyze_BuildReports_BothReports_ContainsBuildReportFilesData() + { + var databasePath = SQLTestHelper.GetDatabasePath(m_TestOutputFolder); + + // Analyze multiple BuildReports into the same database + var args = new List { "analyze", m_TestDataFolder, "-p", "*.buildreport" }; + + Assert.AreEqual(0, await Program.Main(args.ToArray())); + using var db = SQLTestHelper.OpenDatabase(databasePath); + + // Verify we have 2 BuildReports + SQLTestHelper.AssertQueryInt(db, "SELECT COUNT(*) FROM build_reports", 2, + "Expected exactly 2 BuildReports"); + + // Verify we have files from both BuildReports + var totalFiles = SQLTestHelper.QueryInt(db, "SELECT COUNT(*) FROM build_report_files"); + Assert.That(totalFiles, Is.GreaterThan(0), "Expected at least some files in build_report_files"); + + // Verify that an expected file from AssetBundle.buildreport is present + var assetBundleFileCount = SQLTestHelper.QueryInt(db, + @"SELECT COUNT(*) FROM build_report_files + WHERE path = 'audio.bundle/CAB-76a378bdc9304bd3c3a82de8dd97981a.resource'"); + Assert.AreEqual(1, assetBundleFileCount, + "Expected to find one file with 'CAB-76a378bdc9304bd3c3a82de8dd97981a.resource' in path from AssetBundle.buildreport"); + + // Verify that an expected file from Player.buildreport is present + var playerFileCount = SQLTestHelper.QueryInt(db, + @"SELECT COUNT(*) FROM build_report_files + WHERE path = 'TestProject_Data/sharedassets0.assets.resS'"); + Assert.AreEqual(1, playerFileCount, + "Expected to find one file with 'sharedassets0.assets.resS' in path from Player.buildreport"); + + // Verify that each BuildReport has its own set of files with the correct build_report_id + var assetBundleReportId = SQLTestHelper.QueryInt(db, + "SELECT id FROM build_reports WHERE build_type = 'AssetBundle'"); + var playerReportId = SQLTestHelper.QueryInt(db, + "SELECT id FROM build_reports WHERE build_type = 'Player'"); + + var assetBundleFileCountByReportId = SQLTestHelper.QueryInt(db, + $"SELECT COUNT(*) FROM build_report_files WHERE build_report_id = {assetBundleReportId}"); + Assert.That(assetBundleFileCountByReportId, Is.GreaterThan(0), + "Expected AssetBundle BuildReport to have files"); + + var playerFileCountByReportId = SQLTestHelper.QueryInt(db, + $"SELECT COUNT(*) FROM build_report_files WHERE build_report_id = {playerReportId}"); + Assert.That(playerFileCountByReportId, Is.GreaterThan(0), + "Expected Player BuildReport to have files"); + + // Verify the view includes serialized_file and can filter by it + var playerFilesInView = SQLTestHelper.QueryInt(db, + @"SELECT COUNT(*) FROM build_report_files_view + WHERE serialized_file = 'Player.buildreport'"); + Assert.That(playerFilesInView, Is.GreaterThan(0), + "Expected to find files from Player.buildreport in the view using serialized_file"); + + // Verify we can find the specific Player.buildreport file in the view + var specificPlayerFile = SQLTestHelper.QueryInt(db, + @"SELECT COUNT(*) FROM build_report_files_view + WHERE serialized_file = 'Player.buildreport' + AND path = 'TestProject_Data/sharedassets0.assets.resS'"); + Assert.AreEqual(1, specificPlayerFile, + "Expected to find exactly one row with path='TestProject_Data/sharedassets0.assets.resS' from Player.buildreport in view"); + + // Verify the serialized_file column correctly identifies the source BuildReport + var assetBundleSerializedFile = SQLTestHelper.QueryString(db, + @"SELECT DISTINCT serialized_file FROM build_report_files_view + WHERE path = 'audio.bundle/CAB-76a378bdc9304bd3c3a82de8dd97981a.resource'"); + Assert.AreEqual("AssetBundle.buildreport", assetBundleSerializedFile, + "Expected serialized_file to be 'AssetBundle.buildreport' for AssetBundle files"); + + var playerSerializedFile = SQLTestHelper.QueryString(db, + @"SELECT DISTINCT serialized_file FROM build_report_files_view + WHERE path = 'TestProject_Data/sharedassets0.assets.resS'"); + Assert.AreEqual("Player.buildreport", playerSerializedFile, + "Expected serialized_file to be 'Player.buildreport' for Player files"); + + // Verify build_report_archive_contents table has entries for AssetBundle build + var archiveContentsCount = SQLTestHelper.QueryInt(db, + $"SELECT COUNT(*) FROM build_report_archive_contents WHERE build_report_id = {assetBundleReportId}"); + Assert.That(archiveContentsCount, Is.GreaterThan(0), + "Expected AssetBundle BuildReport to have archive contents mappings"); + + // Verify specific archive content mapping exists + var spritesArchiveContentCount = SQLTestHelper.QueryInt(db, + $@"SELECT COUNT(*) FROM build_report_archive_contents + WHERE build_report_id = {assetBundleReportId} + AND assetbundle = 'sprites.bundle' + AND assetbundle_content = 'CAB-6b49068aebcf9d3b05692c8efd933167.resS'"); + Assert.AreEqual(1, spritesArchiveContentCount, + "Expected to find mapping for sprites.bundle -> CAB-6b49068aebcf9d3b05692c8efd933167.resS"); + + // Verify Player build has no archive contents (not an AssetBundle build) + var playerArchiveContentsCount = SQLTestHelper.QueryInt(db, + $"SELECT COUNT(*) FROM build_report_archive_contents WHERE build_report_id = {playerReportId}"); + Assert.AreEqual(0, playerArchiveContentsCount, + "Expected Player BuildReport to have no archive contents mappings"); + + // Verify build_report_packed_assets_view includes assetbundle column + var packedAssetsWithBundle = SQLTestHelper.QueryInt(db, + @"SELECT COUNT(*) FROM build_report_packed_assets_view + WHERE assetbundle IS NOT NULL"); + Assert.That(packedAssetsWithBundle, Is.GreaterThan(0), + "Expected some PackedAssets to have assetbundle name populated"); + + // Verify specific PackedAsset has correct assetbundle name + var specificPackedAssetBundle = SQLTestHelper.QueryString(db, + @"SELECT assetbundle FROM build_report_packed_assets_view + WHERE path = 'CAB-6b49068aebcf9d3b05692c8efd933167'"); + Assert.AreEqual("sprites.bundle", specificPackedAssetBundle, + "Expected PackedAsset CAB-6b49068aebcf9d3b05692c8efd933167 to have assetbundle 'sprites.bundle'"); + + // Verify PackedAssets from Player build have NULL assetbundle + var playerPackedAssetsWithNullBundle = SQLTestHelper.QueryInt(db, + @"SELECT COUNT(*) FROM build_report_packed_assets_view + WHERE build_report_filename = 'Player.buildreport' AND assetbundle IS NULL"); + Assert.That(playerPackedAssetsWithNullBundle, Is.GreaterThan(0), + "Expected PackedAssets from Player.buildreport to have NULL assetbundle"); + + var playerPackedAssetsWithNonNullBundle = SQLTestHelper.QueryInt(db, + @"SELECT COUNT(*) FROM build_report_packed_assets_view + WHERE build_report_filename = 'Player.buildreport' AND assetbundle IS NOT NULL"); + Assert.AreEqual(0, playerPackedAssetsWithNonNullBundle, + "Expected all PackedAssets from Player.buildreport have NULL assetbundle"); + } } From 66a95a484a9a66c1f92f148839e073c827d50066 Mon Sep 17 00:00:00 2001 From: Andrew Skowronski <86242170+SkowronskiAndrew@users.noreply.github.com> Date: Wed, 31 Dec 2025 16:48:24 -0500 Subject: [PATCH 7/8] New "serialized-file" command with docs and new test data (#47) * New command for quick access to information from the header of a serialized file (external references and object list) * In future we can expose typetree information * Add a more complete (but tiny) Player build into the test data (with and without typetrees) * Introduce list of common types * In a follow up could use it to improve the BuildReport importing (#55 ) --- AGENTS.md | 10 +- .../SQLite/Handlers/PackedAssetsHandler.cs | 7 +- .../SQLite/Parsers/SerializedFileParser.cs | 2 +- Analyzer/SerializedObjects/BuildReport.cs | 2 +- Documentation/command-serialized-file.md | 181 +++++++ Documentation/unity-content-format.md | 6 +- Documentation/unitydatatool.md | 5 + TestCommon/Data/PlayerNoTypeTree/README.md | 3 + TestCommon/Data/PlayerNoTypeTree/level0 | Bin 0 -> 1244 bytes TestCommon/Data/PlayerNoTypeTree/level1 | Bin 0 -> 1276 bytes .../PlayerNoTypeTree/sharedassets0.assets | Bin 0 -> 8168 bytes .../PlayerNoTypeTree/sharedassets1.assets | Bin 0 -> 672 bytes .../PlayerWithTypeTrees/LastBuild.buildreport | Bin 0 -> 66252 bytes TestCommon/Data/PlayerWithTypeTrees/README.md | 36 ++ .../PlayerWithTypeTrees/globalgamemanagers | Bin 0 -> 78964 bytes .../globalgamemanagers.assets | Bin 0 -> 39500 bytes .../globalgamemanagers.assets.resS | Bin 0 -> 2048 bytes TestCommon/Data/PlayerWithTypeTrees/level0 | Bin 0 -> 13084 bytes TestCommon/Data/PlayerWithTypeTrees/level1 | Bin 0 -> 13132 bytes .../PlayerWithTypeTrees/sharedassets0.assets | Bin 0 -> 91560 bytes .../sharedassets0.assets.resS | 1 + .../PlayerWithTypeTrees/sharedassets1.assets | Bin 0 -> 2928 bytes .../SerializedFileCommandTests.cs | 500 ++++++++++++++++++ UnityDataTool/Program.cs | 41 ++ UnityDataTool/SerializedFileCommands.cs | 139 +++++ UnityFileSystem/TypeIdRegistry.cs | 318 +++++++++++ 26 files changed, 1243 insertions(+), 8 deletions(-) create mode 100644 Documentation/command-serialized-file.md create mode 100644 TestCommon/Data/PlayerNoTypeTree/README.md create mode 100644 TestCommon/Data/PlayerNoTypeTree/level0 create mode 100644 TestCommon/Data/PlayerNoTypeTree/level1 create mode 100644 TestCommon/Data/PlayerNoTypeTree/sharedassets0.assets create mode 100644 TestCommon/Data/PlayerNoTypeTree/sharedassets1.assets create mode 100644 TestCommon/Data/PlayerWithTypeTrees/LastBuild.buildreport create mode 100644 TestCommon/Data/PlayerWithTypeTrees/README.md create mode 100644 TestCommon/Data/PlayerWithTypeTrees/globalgamemanagers create mode 100644 TestCommon/Data/PlayerWithTypeTrees/globalgamemanagers.assets create mode 100644 TestCommon/Data/PlayerWithTypeTrees/globalgamemanagers.assets.resS create mode 100644 TestCommon/Data/PlayerWithTypeTrees/level0 create mode 100644 TestCommon/Data/PlayerWithTypeTrees/level1 create mode 100644 TestCommon/Data/PlayerWithTypeTrees/sharedassets0.assets create mode 100644 TestCommon/Data/PlayerWithTypeTrees/sharedassets0.assets.resS create mode 100644 TestCommon/Data/PlayerWithTypeTrees/sharedassets1.assets create mode 100644 UnityDataTool.Tests/SerializedFileCommandTests.cs create mode 100644 UnityDataTool/SerializedFileCommands.cs create mode 100644 UnityFileSystem/TypeIdRegistry.cs diff --git a/AGENTS.md b/AGENTS.md index 93fd1f1..3e8ca79 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -78,6 +78,10 @@ UnityDataTool dump /path/to/file.bundle -o /output/path # Extract archive contents UnityDataTool archive extract file.bundle -o contents/ +# Quick inspect SerializedFile metadata +UnityDataTool serialized-file objectlist level0 +UnityDataTool sf externalrefs sharedassets0.assets --format json + # Find reference chains to an object UnityDataTool find-refs database.db -n "ObjectName" -t "Texture2D" ``` @@ -139,13 +143,15 @@ UnityDataTool (CLI executable) **Entry Points**: - `UnityDataTool/Program.cs` - CLI using System.CommandLine -- `UnityDataTool/Commands/` - Command handlers (Analyze.cs, Dump.cs, Archive.cs, FindReferences.cs) -- `Documentation/` - Command documentation (command-analyze.md, command-dump.md, command-archive.md, command-find-refs.md) +- `UnityDataTool/SerializedFileCommands.cs` - SerializedFile inspection handlers +- `UnityDataTool/Archive.cs` - Archive manipulation handlers +- `Documentation/` - Command documentation (command-analyze.md, command-dump.md, command-archive.md, command-serialized-file.md, command-find-refs.md) **Core Libraries**: - `UnityFileSystem/UnityFileSystem.cs` - Init(), MountArchive(), OpenSerializedFile() - `UnityFileSystem/DllWrapper.cs` - P/Invoke bindings to native library - `UnityFileSystem/SerializedFile.cs` - Represents binary data files +- `UnityFileSystem/TypeIdRegistry.cs` - Built-in TypeId to type name mappings - `UnityFileSystem/RandomAccessReader.cs` - TypeTree property navigation **Analyzer**: diff --git a/Analyzer/SQLite/Handlers/PackedAssetsHandler.cs b/Analyzer/SQLite/Handlers/PackedAssetsHandler.cs index c2f62db..78268b4 100644 --- a/Analyzer/SQLite/Handlers/PackedAssetsHandler.cs +++ b/Analyzer/SQLite/Handlers/PackedAssetsHandler.cs @@ -64,7 +64,7 @@ public void Init(SqliteConnection db) public void Process(Context ctx, long objectId, RandomAccessReader reader, out string name, out long streamDataSize) { var packedAssets = PackedAssets.Read(reader); - + m_InsertPackedAssetsCommand.Transaction = ctx.Transaction; m_InsertPackedAssetsCommand.Parameters["@id"].Value = objectId; m_InsertPackedAssetsCommand.Parameters["@path"].Value = packedAssets.Path; @@ -96,6 +96,11 @@ public void Process(Context ctx, long objectId, RandomAccessReader reader, out s m_InsertContentsCommand.Transaction = ctx.Transaction; m_InsertContentsCommand.Parameters["@packed_assets_id"].Value = objectId; m_InsertContentsCommand.Parameters["@object_id"].Value = content.ObjectID; + + // TODO: Ideally we would also populate the type table if the content.Type is + // not already in that table, and if we have a string value for it in TypeIdRegistry. That would + // make it possible to view object types as strings, for the most common types, when importing a BuildReport + // without the associated built content. m_InsertContentsCommand.Parameters["@type"].Value = content.Type; m_InsertContentsCommand.Parameters["@size"].Value = (long)content.Size; m_InsertContentsCommand.Parameters["@offset"].Value = (long)content.Offset; diff --git a/Analyzer/SQLite/Parsers/SerializedFileParser.cs b/Analyzer/SQLite/Parsers/SerializedFileParser.cs index a7fc071..acd1658 100644 --- a/Analyzer/SQLite/Parsers/SerializedFileParser.cs +++ b/Analyzer/SQLite/Parsers/SerializedFileParser.cs @@ -64,7 +64,7 @@ bool ShouldIgnoreFile(string file) private static readonly HashSet IgnoredExtensions = new() { ".txt", ".resS", ".resource", ".json", ".dll", ".pdb", ".exe", ".manifest", ".entities", ".entityheader", - ".ini", ".config", ".hash" + ".ini", ".config", ".hash", ".md" }; bool ProcessFile(string file, string rootDirectory) diff --git a/Analyzer/SerializedObjects/BuildReport.cs b/Analyzer/SerializedObjects/BuildReport.cs index ae274e9..6dd413d 100644 --- a/Analyzer/SerializedObjects/BuildReport.cs +++ b/Analyzer/SerializedObjects/BuildReport.cs @@ -120,7 +120,7 @@ public static string GetBuildTypeString(int buildType) { 1 => "Player", 2 => "AssetBundle", - 3 => "Player, AssetBundle", + 3 => "ContentDirectory", _ => buildType.ToString() }; } diff --git a/Documentation/command-serialized-file.md b/Documentation/command-serialized-file.md new file mode 100644 index 0000000..ebae339 --- /dev/null +++ b/Documentation/command-serialized-file.md @@ -0,0 +1,181 @@ +# serialized-file Command + +The `serialized-file` command (alias: `sf`) provides utilities for quickly inspecting SerializedFile metadata without performing a full analysis. + +## Sub-Commands + +| Sub-Command | Description | +|-------------|-------------| +| [`externalrefs`](#externalrefs) | List external file references | +| [`objectlist`](#objectlist) | List all objects in the file | + +--- + +## externalrefs + +Lists the external file references (dependencies) in a SerializedFile. This shows which other files the SerializedFile depends on. + +### Quick Reference + +``` +UnityDataTool serialized-file externalrefs [options] +UnityDataTool sf externalrefs [options] +``` + +| Option | Description | Default | +|--------|-------------|---------| +| `` | Path to the SerializedFile | *(required)* | +| `-f, --format ` | Output format: `Text` or `Json` | `Text` | + +### Example - Text Output + +```bash +UnityDataTool serialized-file externalrefs level0 +``` + +**Output:** +``` +Index: 1, Path: globalgamemanagers.assets +Index: 2, Path: sharedassets0.assets +Index: 3, Path: Library/unity default resources +``` + +### Example - JSON Output + +```bash +UnityDataTool sf externalrefs sharedassets0.assets --format json +``` + +**Output:** +```json +[ + { + "index": 1, + "path": "globalgamemanagers.assets", + "guid": "00000000000000000000000000000000", + "type": "NonAssetType" + }, + { + "index": 2, + "path": "Library/unity default resources", + "guid": "0000000000000000e000000000000000", + "type": "NonAssetType" + } +] +``` + +--- + +## objectlist + +Lists all objects contained in a SerializedFile, showing their IDs, types, offsets, and sizes. + +### Quick Reference + +``` +UnityDataTool serialized-file objectlist [options] +UnityDataTool sf objectlist [options] +``` + +| Option | Description | Default | +|--------|-------------|---------| +| `` | Path to the SerializedFile | *(required)* | +| `-f, --format ` | Output format: `Text` or `Json` | `Text` | + +### Example - Text Output + +```bash +UnityDataTool sf objectlist sharedassets0.assets +``` + +**Output:** +``` +Id Type Offset Size +------------------------------------------------------------------------------------------ +1 PreloadData 83872 49 +2 Material 83936 268 +3 Shader 84208 6964 +4 Cubemap 91184 240 +5 MonoBehaviour 91424 60 +6 MonoBehaviour 91488 72 +``` + +### Example - JSON Output + +```bash +UnityDataTool serialized-file objectlist level0 --format json +``` + +**Output:** +```json +[ + { + "id": 1, + "typeId": 1, + "typeName": "GameObject", + "offset": 4864, + "size": 132 + }, + { + "id": 2, + "typeId": 4, + "typeName": "Transform", + "offset": 5008, + "size": 104 + } +] +``` + +--- + +## Use Cases + +### Quick File Inspection + +Use `serialized-file` when you need quick information about a SerializedFile without generating a full SQLite database: + +```bash +# Check what objects are in a file +UnityDataTool sf objectlist sharedassets0.assets + +# Check file dependencies +UnityDataTool sf externalrefs level0 +``` + +### Scripting and Automation + +The JSON output format is ideal for scripts and automated processing: + +```bash +# Extract object count +UnityDataTool sf objectlist level0 -f json | jq 'length' + +# Find specific object types +UnityDataTool sf objectlist sharedassets0.assets -f json | jq '.[] | select(.typeName == "Material")' +``` + +--- + +## SerializedFile vs Archive + +When working with AssetBundles (or a compressed Player build) you need to extract the contents first (with `archive extract`), then run the `serialized-file` command on individual files in the extracted output. + +**Example workflow:** +```bash +# 1. List contents of an archive +UnityDataTool archive list scenes.bundle + +# 2. Extract the archive +UnityDataTool archive extract scenes.bundle -o extracted/ + +# 3. Inspect individual SerializedFiles +UnityDataTool sf objectlist extracted/CAB-5d40f7cad7c871cf2ad2af19ac542994 +``` + +--- + +## Notes + +- This command only supports extracting information from the SerializedFile header of individual files. It does not extract detailed type-specific properties. Use `analyze` for full analysis of one or more SerializedFiles. +- The command uses the same native library (UnityFileSystemApi) as other UnityDataTool commands, ensuring consistent file reading across all Unity versions. + diff --git a/Documentation/unity-content-format.md b/Documentation/unity-content-format.md index f581e28..20f0f82 100644 --- a/Documentation/unity-content-format.md +++ b/Documentation/unity-content-format.md @@ -108,8 +108,8 @@ However in cases where you want to understand what contributes to the size your Often the source of content can be easily inferred, based on your own knowledge of your project, and the names of objects. For example the name of a Shader should be unique, and typically has a filename that closely matches the Shader name. -You can also use the [BuildReport](https://docs.unity3d.com/Documentation/ScriptReference/Build.Reporting.BuildReport.html) for Player and AssetBundle builds (excluding Addressables). The [Build Report Inspector](https://github.com/Unity-Technologies/BuildReportInspector) is a tool to aid in analyzing that data. +You can include a Unity BuildReport file when running `UnityDataTools analyze`. This will import the PackedAsset information, tracking the source asset information for each object in the build output. See [Build Reports](./build-reports.md) for more information, including alternative ways to view the build report. -For AssetBundles built by [BuildPipeline.BuildAssetBundles()](https://docs.unity3d.com/ScriptReference/BuildPipeline.BuildAssetBundles.html), there is also source information available in the .manifest files for each bundle. +`UnityDataTools analyze` can also import Addressables build layout files, which include source asset information. See [Addressable Build Reports](./addressables-build-reports.md). -Addressables builds do not produce a BuildReport or .manifest files, but it offers similar build information in the user interface. +For AssetBundles built by [BuildPipeline.BuildAssetBundles()](https://docs.unity3d.com/ScriptReference/BuildPipeline.BuildAssetBundles.html) Unity creates a .manifest file for each AssetBundle that has source information. This is a text-base format. diff --git a/Documentation/unitydatatool.md b/Documentation/unitydatatool.md index 94b5344..0f34eae 100644 --- a/Documentation/unitydatatool.md +++ b/Documentation/unitydatatool.md @@ -9,6 +9,7 @@ A command-line tool for analyzing and inspecting Unity build output—AssetBundl | [`analyze`](command-analyze.md) | Extract data from Unity files into a SQLite database | | [`dump`](command-dump.md) | Convert SerializedFiles to human-readable text | | [`archive`](command-archive.md) | List or extract contents of Unity Archives | +| [`serialized-file`](command-serialized-file.md) | Quick inspection of SerializedFile metadata | | [`find-refs`](command-find-refs.md) | Trace reference chains to objects *(experimental)* | --- @@ -28,6 +29,10 @@ UnityDataTool dump /path/to/file.bundle -o /output/path # Extract archive contents UnityDataTool archive extract file.bundle -o contents/ +# Quick inspect SerializedFile +UnityDataTool serialized-file objectlist level0 +UnityDataTool sf externalrefs sharedassets0.assets --format json + # Find reference chains to an object UnityDataTool find-refs database.db -n "ObjectName" -t "Texture2D" ``` diff --git a/TestCommon/Data/PlayerNoTypeTree/README.md b/TestCommon/Data/PlayerNoTypeTree/README.md new file mode 100644 index 0000000..29cbcac --- /dev/null +++ b/TestCommon/Data/PlayerNoTypeTree/README.md @@ -0,0 +1,3 @@ +This is a partial copy of the same build as PlayerWithTypeTrees, but with typetrees turned off. + +Without typetrees the information that can be retrieved is quite limited. \ No newline at end of file diff --git a/TestCommon/Data/PlayerNoTypeTree/level0 b/TestCommon/Data/PlayerNoTypeTree/level0 new file mode 100644 index 0000000000000000000000000000000000000000..f4ffa8bbfa5ac048dd6ddc2ab70a71be29ec2c89 GIT binary patch literal 1244 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 literal 0 HcmV?d00001 diff --git a/TestCommon/Data/PlayerNoTypeTree/sharedassets1.assets b/TestCommon/Data/PlayerNoTypeTree/sharedassets1.assets new file mode 100644 index 0000000000000000000000000000000000000000..dfd9413c6cc3c63ce5130fb761067328385077f3 GIT binary patch literal 672 zcmZQzfCDi&i-9o=!e&|kp&2K@tyZWEVjB3xG68Eev0TiZerL3@SY*KPfRMJux>mH!&|UJ+-JFU`v=sZ>ZwO-n4zDN!g&EzU13N=`-6grtX|I3uwrH3ed<0nB)i z3;zQFvO?n696)6te+#NZ)PqcthA_eYHbP<}`yUoops;|22Z&~Yst2*zploaudYGyK z6$K|3WfqhqCgr61CuOB3mxOzkWCW)cWhUliR;31|rll68<|U^xFq~&#&|kFwWjx3Y zAah`RklikcC5hZX+PBgV7!Ab*i9ikfK)xd|9&(d%Ds`QMfdN>+zzGx!&d*I%$jnR2 J2eLut006DJZ({%e literal 0 HcmV?d00001 diff --git a/TestCommon/Data/PlayerWithTypeTrees/LastBuild.buildreport b/TestCommon/Data/PlayerWithTypeTrees/LastBuild.buildreport new file mode 100644 index 0000000000000000000000000000000000000000..e847270fa4709b54ddd0a533e1f635825c7cae5b GIT binary patch literal 66252 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 literal 0 HcmV?d00001 diff --git a/TestCommon/Data/PlayerWithTypeTrees/README.md b/TestCommon/Data/PlayerWithTypeTrees/README.md new file mode 100644 index 0000000..4294679 --- /dev/null +++ b/TestCommon/Data/PlayerWithTypeTrees/README.md @@ -0,0 +1,36 @@ +# Test data description + +This is the content output of a Player build, made with Unity 6000.0.65f1. +The diagnostic switch to enable TypeTrees was enabled when the build was performed. + +The project is very simple and intended to be used for precise tests of expected content. + +## Content + +The build includes two scene files: +* SceneWithReferences.unity (level0) uses MonoBehaviours to references BasicScriptableObject.asset and Asset2.asset +* SceneWithReferences2.unity (level1) uses MonoBehaviours to reference BasicScriptableObject.asset and ScriptableObjectWithSerializeReference.asset + +Based on that sharing arrangement: +* sharedassets0.assets contains BasicScriptableObject.asset and Asset2.asset +* sharedassets1.assets contains ScriptableObjectWithSerializeReference.asset + +There are also additional content +* globalgamemanager with the preference objects +* globalgamemanager.assets with assets referenced from the globalgamemanager file +* globalgamemanagers.assets.resS containing the splash screen referenced from globalgamemanager.assets + +Note: The binaries, json files and other output that were also output from the player build are not checked in, because they are not needed by UnityDataTool. + +## BuildReport + +The LastBuild.buildreport file (created in the Library folder) has also been copied in. + +## Scripting types + +The MonoBehaviour used in level0 and level1 to reference the ScriptableObject is of type MonoBehaviourWithReference. + +* BasicScriptableObject.asset and Asset2.asset are instances of the BasicScriptableObject class. +* ScriptableObjectWithSerializeReference.asset is an instance of the MyNamespace.ScriptableObjectWithSerializeReference class. + + diff --git a/TestCommon/Data/PlayerWithTypeTrees/globalgamemanagers b/TestCommon/Data/PlayerWithTypeTrees/globalgamemanagers new file mode 100644 index 0000000000000000000000000000000000000000..b46705a88fd029183ea7feed789929fd0080ea6e GIT binary patch literal 78964 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 wCCY@5HW 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 a-#~rpsqPsw9DK0S(Tur2yq$*k%lHD@8FRM) literal 0 HcmV?d00001 diff --git a/TestCommon/Data/PlayerWithTypeTrees/level0 b/TestCommon/Data/PlayerWithTypeTrees/level0 new file mode 100644 index 0000000000000000000000000000000000000000..9afab1b73bc40751d8356af025a8266c97d1c882 GIT binary patch literal 13084 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 literal 0 HcmV?d00001 diff --git a/TestCommon/Data/PlayerWithTypeTrees/level1 b/TestCommon/Data/PlayerWithTypeTrees/level1 new file mode 100644 index 0000000000000000000000000000000000000000..ff70f82cada8edffc01a8b4778746b208c163931 GIT binary patch literal 13132 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 literal 0 HcmV?d00001 diff --git a/TestCommon/Data/PlayerWithTypeTrees/sharedassets0.assets b/TestCommon/Data/PlayerWithTypeTrees/sharedassets0.assets new file mode 100644 index 0000000000000000000000000000000000000000..979ce6adab69d40ba4474a149846193c6106d99a GIT binary patch literal 91560 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 D;V&;k literal 0 HcmV?d00001 diff --git a/TestCommon/Data/PlayerWithTypeTrees/sharedassets0.assets.resS b/TestCommon/Data/PlayerWithTypeTrees/sharedassets0.assets.resS new file mode 100644 index 0000000..84d803c --- /dev/null +++ b/TestCommon/Data/PlayerWithTypeTrees/sharedassets0.assets.resS @@ -0,0 +1 @@ + !!!!!!!!!!"""""""""""""##########$$$$$$$$$$%%%% !!!!!!!!!!"""""""""""""#########$$$$$$$$$$$%%%%% !!!!!!!!!!"""""""""""""#########$$$$$$$$$$%%%%%%% !!!!!!!!!!""""""""""""#########$$$$$$$$$$%%%%%%%%% !!!!!!!!!!""""""""""""#########$$$$$$$$$$%%%%%%%%%% !!!!!!!!!!""""""""""""#########$$$$$$$$$%%%%%%%%%%%% !!!!!!!!!""""""""""""########$$$$$$$$$$%%%%%%%%%%%&& !!!!!!!!!""""""""""""########$$$$$$$$$%%%%%%%%%%%&&&& !!!!!!!!!!"""""""""""########$$$$$$$$$%%%%%%%%%%%&&&&& !!!!!!!!!!""""""""""########$$$$$$$$$%%%%%%%%%%%&&&&&&& !!!!!!!!!!""""""""""########$$$$$$$$$%%%%%%%%%%&&&&&&&&& !!!!!!!!!!""""""""""########$$$$$$$$%%%%%%%%%%&&&&&&&&&&& !!!!!!!!!!""""""""""#######$$$$$$$$$%%%%%%%%%%&&&&&&&&&&&& !!!!!!!!!!"""""""""########$$$$$$$$%%%%%%%%%%&&&&&&&&&&&&'' !!!!!!!!!!"""""""""########$$$$$$$$%%%%%%%%%%&&&&&&&&&&&'''' !!!!!!!!!!"""""""""#######$$$$$$$$%%%%%%%%%%&&&&&&&&&&&'''''' !!!!!!!!!"""""""""#######$$$$$$$$%%%%%%%%%&&&&&&&&&&&'''''''' !!!!!!!!!""""""""########$$$$$$$$%%%%%%%%%&&&&&&&&&&'''''''''' !!!!!!!!!""""""""#######$$$$$$$$%%%%%%%%%&&&&&&&&&&&''''''''''' !!!!!!!!!""""""""#######$$$$$$$$%%%%%%%%%&&&&&&&&&&''''''''''''( !!!!!!!!""""""""########$$$$$$$%%%%%%%%%&&&&&&&&&&''''''''''''((( !!!!!!!!!""""""""#######$$$$$$$$%%%%%%%%&&&&&&&&&&''''''''''''((((( !!!!!!!!!""""""""########$$$$$$$$%%%%%%%%&&&&&&&&&&'''''''''''((((((( !!!!!!!!!!""""""""########$$$$$$$%%%%%%%%&&&&&&&&&&'''''''''''((((((((( !!!!!!!!!!""""""""########$$$$$$$$%%%%%%%%&&&&&&&&&'''''''''''((((((((()) !!!!!!!!!!!""""""""########$$$$$$$%%%%%%%%&&&&&&&&&'''''''''''((((((((())))  !!!!!!!!!!""""""""########$$$$$$$$%%%%%%%%&&&&&&&&&''''''''''(((((((()))))))  !!!!!!!!!!""""""""########$$$$$$$$%%%%%%%%&&&&&&&&&''''''''''(((((((()))))))))  !!!!!!!!!!"""""""""########$$$$$$$$%%%%%%%&&&&&&&&&'''''''''(((((((())))))))))** !!!!!!!!!!!!""""""""########$$$$$$$$%%%%%%%%&&&&&&&&'''''''''(((((((()))))))))***** !!!!!!!!!!!!!"""""""""########$$$$$$$$%%%%%%%&&&&&&&&&''''''''(((((((()))))))))*******!!!!! !!!!!!!!!!!!!"""""""""########$$$$$$$$%%%%%%%%&&&&&&&&''''''''((((((()))))))))**********!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!"""""""""########$$$$$$$$%%%%%%%%&&&&&&&&'''''''(((((((())))))))**********+++!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""#########$$$$$$$$%%%%%%%%&&&&&&&'''''''((((((()))))))))*********++++++""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""#########$$$$$$$$%%%%%%%%&&&&&&&'''''''((((((())))))))*********+++++++++"""""""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""""""""""""""########$$$$$$$$%%%%%%%%&&&&&&''''''''((((((())))))))*********++++++++,,,""""""""""""""!!!!!!!!!!!!!!!!!!!!!"""""""""""""""""#########$$$$$$$$%%%%%%%&&&&&&&'''''''((((((())))))))*********++++++++,,,,,,####""""""""""""""""""""""""""""""""""""""""""""###########$$$$$$$$%%%%%%%&&&&&&&'''''''((((((()))))))*********+++++++,,,,,,,,,-##########""""""""""""""""""""""""""""""""""###########$$$$$$$$$$%%%%%%%&&&&&&&'''''''((((((()))))))********+++++++,,,,,,,,,----$#################""""""""""""""""""""##############$$$$$$$$$$%%%%%%%&&&&&&&'''''''((((((()))))))********+++++++,,,,,,,,--------$$$$$$$##########################################$$$$$$$$$$%%%%%%%%&&&&&&&'''''''((((((()))))))*******+++++++,,,,,,,,---------..$$$$$$$$$$$$$################################$$$$$$$$$$%%%%%%%%%&&&&&&&'''''''((((((()))))))*******+++++++,,,,,,,---------......%%%%$$$$$$$$$$$$$$$$$$$$$$##########$$$$$$$$$$$$$$$$%%%%%%%%%&&&&&&&&'''''''((((((())))))*******++++++,,,,,,,,---------.........%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%&&&&&&&'''''''((((((())))))******+++++++,,,,,,,---------..........///&%%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%%%&&&&&&&&&'''''''(((((())))))******+++++++,,,,,,,--------..........///////&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&''''''''((((((())))))******+++++++,,,,,,,--------........./////////00&&&&&&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&''''''''((((((()))))))******+++++++,,,,,,,-------........./////////000000''''''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&''''''''''(((((((())))))*******++++++,,,,,,,--------......./////////00000000001'''''''''''''''&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''''''(((((((()))))))*******++++++,,,,,,,-------.......////////0000000001111111((((((('''''''''''''''''''''''''''''''''''''''''''((((((((())))))))******+++++++,,,,,,,------.......////////00000000111111111112((((((((((((((((''''''''''''''''''''''''''((((((((((((())))))))*******+++++++,,,,,,------.......///////0000000001111111112222222)))))))))(((((((((((((((((((((((((((((((((((((((())))))))))*******+++++++,,,,,,-------......///////00000000111111111222222222233**)))))))))))))))))))(((((((((((((((((())))))))))))))*********+++++++,,,,,,-------......///////000000011111111122222222233333333************))))))))))))))))))))))))))))))))))***********++++++++,,,,,,-------......///////0000000111111122222222223333333333344+++++**********************************************+++++++++,,,,,,,-------......//////000000011111112222222223333333333344444444+++++++++++++++++***********************++++++++++++++,,,,,,,,-------.......//////0000000111111122222222333333333444444444444555,,,,,,,,,+++++++++++++++++++++++++++++++++++++,,,,,,,,,,,--------......///////00000011111112222222233333333444444444445555555555---,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---------........//////0000000111111222222233333333344444444455555555555555666------------------,,,,,,,,,,,,,,,,,,,,,--------------.........///////00000011111112222222333333344444444455555555555566666666666.........-----------------------------------............////////0000001111111222222233333334444444455555555555666666666666667777////............................................//////////0000000011111122222223333333444444455555555556666666666677777777777777//////////////////////////////////////////////////000000000111111112222222333333344444455555555566666666667777777777777788888888000000000000000000//////////////////000000000000000011111111122222223333333444444455555555666666666777777777778888888888888888891111111111111000000000000000000000000001111111111111122222222233333334444444555555556666666677777777778888888888888899999999999911111111110000000000000000000000000000000000000000000011111111111111222222222223333333333444444444455555555555555566666666666666///////////////..................------,,,,,,,,,,,,,+++++++++++++++++++++++,,,,,,,,,,,,,------............////////////0000000000**)))))))(((((((''''''&&&&&&%%%%%%$$$$##"""""""!!!!!! !!!!!""""""""##$$$%%%%%%%&&&&&&'''''((((((()))))))***""""!!!!!  !!!!""""" !!!!!""""""#####$$$$$%%% !!!!!""""""#####$$$$$%%%% !!!!!""""""#####$$$$$%%%%% !!!!""""""####$$$$$%%%%%%& !!!!!""""#####$$$$%%%%%%&&& !!!!!""""####$$$$$%%%%%&&&&& !!!!!""""####$$$$%%%%%&&&&&&' !!!!!""""####$$$$%%%%%&&&&&''' !!!!"""""####$$$%%%%%&&&&&&'''' !!!!!""""####$$$$%%%%%&&&&&'''''( !!!!""""####$$$$%%%%&&&&&'''''((( !!!!"""""###$$$$%%%%&&&&&'''''((((( !!!!!""""####$$$$%%%%&&&&'''''((((())  !!!!!""""#####$$$%%%%&&&&&''''((((()))) !!!!!"""""####$$$$%%%%&&&&''''(((()))))**!! !!!!!!!""""####$$$$%%%%&&&&''''(((()))))****!!!!!!!!!!!!!!!!!!!!!!!!"""""#####$$$%%%%&&&&''''(((())))****+++""""!!!!!!!!!!!!!!!!!""""""#####$$$$%%%%&&&'''(((()))))****++++,#"""""""""""""""""""""""#####$$$$$%%%&&&''''(((())))****+++,,,,,########"""""""""""#######$$$$$%%%%&&&''''((())))****+++,,,,,---$$$$$#################$$$$$$%%%%&&&&'''(((()))****+++,,,,,----..%%%%$$$$$$$$$$$$$$$$$$$$$%%%%&&&&''''((())))***+++,,,,----...../&&&&%%%%%%%%%%%%%%%%%%%%%&&&&&''''((()))****+++,,,,----..../////''&&&&&&&&&&&&&&%&&&&&&&&&''''(((()))****+++,,,----....////00000((''''''''''''&'&'''''''''((((()))***++++,,,----...////000001111))((((((((((((((((((((((()))))****+++,,,----...////0000111112222***))))))))))))))))))))))*****+++,,,,---...////00001112222223333++++********************+++++,,,,---...////000111122223333334444,,,,,,+++++++++++++++,,,,,,,----...///00001111222333334444445555--------,,,,,,,,,,,--------....///000011122223333344444555555555.-..------------------......///000001112222333344444455555555566--------------,-------------......//0000011111122223333333344444+++++************)))))))))))))*******+++++,,,,-----.....////////&&&%%%%%%%%$$$$########""""""""""""####$##$$$$%%%&&&&&''''((((()  ! !!!""###$$$%% !!!""###$$%%%& !!!""##$$$%%%&& !!!""##$$%%%&&&' !!!""##$$%%&&&''( !!""##$$$%%&&''((( !!!""##$$%%&&''((())!!!!!!!!!!!!!""##$$%%&&''((())**"""""!!!"""""##$$$%%&''(())***++######""#####$$%%&&''(())**++,,,%$$$$$$$$$$$%%%&&''(()**++,,,--.&&&%%%%%%%%&&&''(())**+,,,--.../'''''''''''''(())**++,,--..////0((((((((((()))**++,,--..///00000))))))))))))***++,,--...///00000(((((((((((()))***++,,,----.....%%%$$$$$$$$$$$%%%%&&'''((()))))*  !!!"""##$$ !"##$%% !!"#$$%&& !!"#$%%&'(!!!!!!"##$%&'(()"""""##$%&''()**$$$$$$%%&'()**++$$$%%%&''()**+++$$$$$%%&&'(()))*!!!!!!!""##$$%%& ! !"#$%!!!"#$&'"""#%&''!!"#$%&& !"# !#$ !#$ !          ! !! !!! !!!! !!!!!! !!!!!!! !!!!!!!!! !!!!!!!!!! ""!!!!!!!!!  """"!!!!!!!!!  """"""!!!!!!!!!  """"""""!!!!!!!!  !!!#"""""""""!!!!!!!!  !!!!!!##""""""""""!!!!!!!!  !!!!!!!!!!####""""""""""!!!!!!!!  !!!!!!!!!""""######""""""""""!!!!!!!!  !!!!!!!!!!"""""""########""""""""""!!!!!!!!  !!!!!!!!!""""""""""#$#########"""""""""!!!!!!!!  !!!!!!!!!!""""""""""####$$$$########""""""""""!!!!!!!  !!!!!!!!!""""""""""#######$$$$$$$#########"""""""""!!!!!!!!  !!!!!!!!!""""""""""########$$$$%%$$$$$$$########"""""""""!!!!!!!!!!  !!!!!!!!!""""""""""########$$$$$$%%%%%%$$$$$$$########"""""""""!!!!!!!!!!!  !!!!!!!!!!"""""""""########$$$$$$$%%%%%%%%%%%%$$$$$$$########"""""""""!!!!!!!!!!!!  !!!!!!!!!!!!"""""""""########$$$$$$$%%%%%%%&&&&%%%%%%%%$$$$$$$#######""""""""""!!!!!!!!!!!!! !!!!!!!!!!!!!""""""""""########$$$$$$$%%%%%%%&&&&&&&&&&&%%%%%%%$$$$$$$$########""""""""""!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!"""""""""""#######$$$$$$$%%%%%%%%&&&&&&&'''&&&&&&&&%%%%%%%$$$$$$$$#########""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""""""""""""########$$$$$$$%%%%%%%&&&&&&&&''''''''''&&&&&&&&%%%%%%%$$$$$$$$$#########"""""""""""""!!!!!!!!!!!!!!!!!!!!!"""""""""""""""#########$$$$$$$%%%%%%%%&&&&&&&'''''''''(((''''''&&&&&&&%%%%%%%%%$$$$$$$$$##########""""""""""""""""""""""""""""""""""""""#########$$$$$$$$%%%%%%%%&&&&&&&&''''''''(((((((('''''''''&&&&&&&%%%%%%%%%%$$$$$$$$$##############""""""""""""""""""""""###########$$$$$$$$$%%%%%%%%&&&&&&&&''''''''((((((((())))(((''''''''&&&&&&&&&%%%%%%%%%%$$$$$$$$$$$$#################################$$$$$$$$$$%%%%%%%%%&&&&&&&&''''''''((((((((())))))))*((((((('''''''&&&&&&&&&&%%%%%%%%%%$$$$$$$$$$$$$$$$$$#############$$$$$$$$$$$$$$%%%%%%%%%&&&&&&&&&''''''''((((((((()))))))*******))((((((((''''''''&&&&&&&&&&&%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%&&&&&&&&&'''''''''(((((((()))))))********+++++)))))(((((((((''''''''''&&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&''''''''''((((((())))))))*******+++++++++,,))))))))))(((((((('''''''''''&&&&&&&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&'''''''''(((((((()))))))********+++++++++,,,,,,,,*****)))))))))(((((((((('''''''''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''''((((((((()))))))********++++++++,,,,,,,,,------*********))))))))))((((((((((('''''''''''''''''''&&&&''''''''''''''''''''((((((((()))))))))*******+++++++++,,,,,,,,--------.....+++++**********)))))))))))(((((((((((((('''''''''''''''''''''''(((((((((((()))))))))********++++++++,,,,,,,---------.........///++++++++++***********)))))))))))))((((((((((((((((((((((((((((((())))))))))))********++++++++,,,,,,,--------.........//////////0,,,,,+++++++++++*************)))))))))))))))))))))))))))))))))))))))*********++++++++,,,,,,,,--------......../////////0000000000,,,,,,,,,,,+++++++++++++********************************************+++++++++,,,,,,,,--------......../////////000000000011111111------,,,,,,,,,,,,++++++++++++++++++******************++++++++++++++,,,,,,,,,,--------........////////00000000111111111122222222--------------,,,,,,,,,,,,,,,,+++++++++++++++++++++++++++,,,,,,,,,,,,---------........///////00000000111111111222222222223333333.......-----------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,-----------........////////0000000011111111222222222233333333333344444/...............------------------------------------------...........////////000000001111111122222222333333333334444444444445555////////////...............................................//////////00000000111111122222222333333333444444444455555555555555666000000///////////////////////////......../////////////////00000000011111111222222233333333444444444555555555556666666666666667770000000000000000000000////////////////////000000000000000111111111222222233333333444444455555555556666666666667777777777777777881111111111111110000000000000000000000000001111111111111122222222233333334444444555555555666666666777777777777888888888888888888911111111111100000000000000000000000000000000000000000000111111111111112222222222233333333333444444444445555555555555555566666666////////////////.................------,,,,,,,,,,,,,++++++++++++++++++++++++,,,,,,,,,,,,,--------............/////////////000000**))))))))((((((''''''&&&&&&%%%%%%$$$$##"""""""!!!!!! !!!!!"""""""##$$$$%%%%%%%&&&&&&''''''(((((())))))))*""""!!!!!  !!!!""""     ! !! !!!! !!!!! ""!!!!!  """"!!!!!  !#"""""!!!!  !!!!!###"""""!!!!  !!!!!"""$####"""""!!!!  !!!!""""###$$$####"""""!!!!  !!!!!""""####$$%%$$$$####""""!!!!!  !!!!!"""""####$$$$%%%%%%$$$$#####""""!!!!!! !!!!!!"""""####$$$$%%%&&&&&&%%%%$$$$$####"""""!!!!!!!!!!!!!!!!!!!"""""####$$$$%%%%%&&&'''''&&&&%%%%$$$$$#####""""""""""""""""""""#####$$$$%%%%&&&&''''((((''''&&&&&%%%%$$$$$$##################$$$$$%%%%%&&&'''''(((())))(((((''''&&&&&%%%%%%$$$$$$$$$$$$$$$$$%%%%&&&&&''''((((())))****+))))((((''''''&&&&&&%%%%%%%%%%%%%%&&&&&&''''((((())))***+++++,,,***))))))(((((''''''''&&&&&&&&''''''''(((()))))***++++,,,,,-----+++******)))))((((((((((((((((((((()))))****++++,,,,----.....///,,,+++++++*******))))))))))))*******+++++,,,,----..../////000000---,,,,,,,++++++++++++++++++++++,,,,,----.....////00001111112222..---------,,,,,,,,,,,,,,,,,------....////0000011112222223333333.......-------------------.......////000011112222233333334444444.--.----------,--,-,,,---------...../////00000011112222222233333++++++***********)))))))))))))))))******+++++,,,,-----........//&&&%%%%%%%%$$$$#####""#""""""""""""#"######$$$$%%%%&&&''''''((((   ! !! "!!!  """!!  !!##"""!!  !!"""$$##"""!!  !!!""##$$%%$$###""!!!! !!!!""###$$%%&&&%%%$$###"""""""""###$$$%%&&''''''&&&%%%$$$$$$$$$$%%%&&'''(()))(((('''&&&&&&%&&&&&'''(())***+++))))(((((''''''(((())***+++,,,,-)))))))(((((())))***+++,,,,-----(((((((((((((((()))****++++,,,,,%%%%%$$$$$$$$$$$$%%%%&&&''''((((!  !!!"""# ! "!  #"!!  !""$##""!!!!!!""#$$%%$$###"###$%%&&%%%%$$$$%%%&&'''$$$$$$$$$%%&&&&&"!!! !!!"""###! "!  !#"!!!!""""!!"""# !  !!!!!!!!!!!!!!!!!!!!"""""""""""""""########################$$$$$$$$$$$$$$$$$$%%%% !!!!!!!!!!!!!!!!!!!"""""""""""""""#########################$$$$$$$$$$$$$$$$$%%% !!!!!!!!!!!!!!!!!!!"""""""""""""""#########################$$$$$$$$$$$$$$$$$% !!!!!!!!!!!!!!!!!!""""""""""""""""########################$$$$$$$$$$$$$$$$$ !!!!!!!!!!!!!!!!!!""""""""""""""""########################$$$$$$$$$$$$$$$ !!!!!!!!!!!!!!!!!"""""""""""""""""########################$$$$$$$$$$$$$ !!!!!!!!!!!!!!!!""""""""""""""""""#######################$$$$$$$$$$$$ !!!!!!!!!!!!!!!!""""""""""""""""""#######################$$$$$$$$$$ !!!!!!!!!!!!!!!!"""""""""""""""""""#######################$$$$$$$$ !!!!!!!!!!!!!!!!"""""""""""""""""""######################$$$$$$$ !!!!!!!!!!!!!!!!"""""""""""""""""""#######################$$$$$ !!!!!!!!!!!!!!!""""""""""""""""""""######################$$$$ !!!!!!!!!!!!!!!!"""""""""""""""""""######################$$ !!!!!!!!!!!!!!!!!"""""""""""""""""""###################### !!!!!!!!!!!!!!!!""""""""""""""""""""#################### !!!!!!!!!!!!!!!!""""""""""""""""""""################## !!!!!!!!!!!!!!!!"""""""""""""""""""""################ !!!!!!!!!!!!!!!!""""""""""""""""""""""############# !!!!!!!!!!!!!!!!""""""""""""""""""""""########### !!!!!!!!!!!!!!!!"""""""""""""""""""""""######### !!!!!!!!!!!!!!!!"""""""""""""""""""""""####### !!!!!!!!!!!!!!!""""""""""""""""""""""""##### !!!!!!!!!!!!!!!!""""""""""""""""""""""""### !!!!!!!!!!!!!!!!""""""""""""""""""""""""" !!!!!!!!!!!!!!!!""""""""""""""""""""""" !!!!!!!!!!!!!!!!""""""""""""""""""""" !!!!!!!!!!!!!!!!!""""""""""""""""""" !!!!!!!!!!!!!!!!!""""""""""""""""" !!!!!!!!!!!!!!!!!!""""""""""""""" !!!!!!!!!!!!!!!!!!""""""""""""" !!!!!!!!!!!!!!!!!!""""""""""" !!!!!!!!!!!!!!!!!!""""""""" !!!!!!!!!!!!!!!!!!""""""" !!!!!!!!!!!!!!!!!!!""""" !!!!!!!!!!!!!!!!!!!""" !!!!!!!!!!!!!!!!!!!" !!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!! !!!!!!!!!!!!!!! !!!!!!!!!!!!! !!!!!!!!!!! !!!!!!!!! !!!!!!!! !!!!!! !!!!! !!! !          !!!!!!!!!!"""""""###########$$$$$$$$$$%% !!!!!!!!!""""""""###########$$$$$$$$$$ !!!!!!!!!""""""""###########$$$$$$$$ !!!!!!!!"""""""""###########$$$$$$ !!!!!!!"""""""""############$$$$ !!!!!!!!""""""""""##########$$$ !!!!!!!""""""""""###########$ !!!!!!!!""""""""""########## !!!!!!!!""""""""""######## !!!!!!!!!""""""""""###### !!!!!!!!""""""""""""### !!!!!!!!""""""""""""# !!!!!!!!!""""""""""" !!!!!!!!!""""""""" !!!!!!!!!""""""" !!!!!!!!!""""" !!!!!!!!!""" !!!!!!!!!!" !!!!!!!!! !!!!!!! !!!!! !!! !      !!!!!""""#####$$$$$%% !!!!!""""#####$$$$$ !!!!"""""#####$$$ !!!!"""""#####$ !!!!""""##### !!!!"""""### !!!!"""""# !!!!"""" !!!!!"" !!!!! !!! !    !!"""##$$$% !!""###$$ !!""### !!""# !!"" !! !  !!""#$$ !""# !" !  !"# ! !"    !!!!  !!!!!!!!  "!!!!!!!!!!!  """""!!!!!!!!!!!  """""""""!!!!!!!!!!!  !!!#"""""""""""""!!!!!!!!!!  !!!!!!######""""""""""""!!!!!!!!!!!  !!!!!!!!!!$#########"""""""""""""!!!!!!!!!!!  !!!!!!!!!!!!""$$$$$###########""""""""""""!!!!!!!!!!!!  !!!!!!!!!!!!!"""""%%$$$$$$$$###########""""""""""""!!!!!!!!!!!!!  !!!!!!!!!!!!!!"""""""""%%%%%%%$$$$$$$$############""""""""""""!!!!!!!!!!!!!! !!!!!!!!!!!!!!!"""""""""""###&&&%%%%%%%%%$$$$$$$$#############"""""""""""""!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!"""""""""""########&&&&&&&&&%%%%%%%%%$$$$$$$$#############"""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""""############$''''&&&&&&&&&&%%%%%%%%%$$$$$$$$$##############"""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!""""""""""""""############$$$$$$''''''''''&&&&&&&&&&%%%%%%%%%$$$$$$$$$$################""""""""""""""""""""""""""""""""""""""""""""""""#############$$$$$$$$$$$$((((('''''''''''&&&&&&&&&&&%%%%%%%%%$$$$$$$$$$###################"""""""""""""""""""""""""""""#################$$$$$$$$$$$$$%%%%(((((((((((('''''''''''&&&&&&&&&&&%%%%%%%%%%$$$$$$$$$$$$##############################################$$$$$$$$$$$$$$$$%%%%%%%%%%))))))(((((((((((((''''''''''''&&&&&&&&&&%%%%%%%%%%%$$$$$$$$$$$$$$$###############$$$$###$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%%&*)))))))))))))(((((((((((((''''''''''''&&&&&&&&&&&%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%%%%%%%%%%%&&&&&&&&**********)))))))))))))((((((((((((''''''''''''&&&&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&&&&&&+++++++************)))))))))))))(((((((((((('''''''''''''&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%%%%%&&&&&&&&&&&&&&&&&&&&&&&''''''',,,++++++++++++++***********)))))))))))))(((((((((((((''''''''''''''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''''''''',,,,,,,,,,,,,,+++++++++++++***********)))))))))))))((((((((((((((('''''''''''''''''''''''''''''''''''''''''''''''''''''''(((((((----------,,,,,,,,,,,,,,,++++++++++++***********))))))))))))))((((((((((((((((('''''''''''''''''''''''''((((((((((((((((((((((((........---------------,,,,,,,,,,,,,++++++++++++************))))))))))))))))(((((((((((((((((((((((((((((((((((((((())))))))))))//////................-------------,,,,,,,,,,,,,++++++++++++**************)))))))))))))))))))))))))))))))))))))))))))))))))))***00///////////////////..............------------,,,,,,,,,,,,++++++++++++++*******************************************************000000000000000000000///////////////............-----------,,,,,,,,,,,,,++++++++++++++++++++++++*******************+++++++++++++1111111111111111111000000000000000000////////////............------------,,,,,,,,,,,,,,,,,++++++++++++++++++++++++++++++++++++++222222222222222222221111111111111111100000000000000///////////...........---------------,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,333333333333333333333222222222222222222111111111111100000000000///////////..............----------------------------------------4444444444444444444433333333333333333333332222222222221111111111100000000000////////////....................--------------------5555555555555555555555444444444444444444444433333333333332222222222111111111100000000000///////////////.........................66666666666666666666666655555555555555555555554444444444443333333333222222222111111111100000000000000///////////////////////////777777777777777777777777777777766666666666666666665555555555544444444433333333332222222221111111111110000000000000000000000/////888888888888888888888888888888888888888777777777777777666666666655555555544444444333333333222222222221111111111111111100000000009999999999999999999999999999999999999999999888888888888887777777777666666655555555544444444333333333322222222222222111111111111166666666666666666666666666655555555555555555555554444444444444433333333333333333222222222222222222222111111111111111111111111111000000/////////////............-------,,,,,,,,,,,,,++++++++++++++++++++++++++,,,,,,,,,,,,-------.................///////////////*))))))))((((((''''''&&&&&&%%%%%%$$$$$##""""""!!!!!! !!!!!"""""""##$$$$%%%%%%%&&&&&&'''''((((((()))))))**""""!!!!  !!!!!"""" !  !!!!!  """"!!!!!!  !!####"""""!!!!!  !!!!!$$$#####""""""!!!!!!  !!!!!!"""%%%$$$$######""""""!!!!!!!! !!!!!!!!""""""#&&&%%%%%$$$$$######"""""""!!!!!!!!!!!!!!!!!!!!!!!!!!""""""######''''&&&&&%%%%%$$$$$$#######""""""""""""""""""""""""""######$$$$$(((((''''''&&&&&%%%%%$$$$$$$########################$$$$$$$$%%%%)))))))((((('''''&&&&&&%%%%%%%$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%%&&&++*******)))))((((((''''''&&&&&&&&&%%%%%%%%%%%%%%%&%&&&&&&&&&&'',,,,,++++++*******)))))))((((((''''''''''''''''&&'''''''''''''((.--------,,,,,,,++++++*******)))))))((((((((((((((((((((((((()))///////.......-------,,,,,,,++++++*********)*))))))))))))*******1000000000000/////////.....------,,,,,,,++++++++++++++++++++++++222222222222111111111100000///////.....--------,,,,,,,,,,,,,,,,,33334343333333333333222222221111100000//////..........----------444444444444444444444444333333222221111100000////////...........3333333333333333333322222222111110000000//////./.........--..---///./..........-.-----,,,,,,,,,,+++++++++*++*+++++++++++++++++++(((('''''''&&&&%%%%$$$%$$$$$#################$$$$$$%%%%%%%%%&&&&  !!!  #"""!!!  !!$$###"""!!! !!!"""&%%%$$$###""""!!!!!!!!!!"""""###('''&&&%%%%$$$#############$$$$%)))))(((''''&&&%%%%%%%%%%%%%%&&&+++++*****)))(((('''''''''''''''-----,,,,,,++++****)))))((((((((---.....------,,,++++****))))))),,,,,,,,,,,,,,++++***)))))((((((((((((((('''''&&&&&%%%%%%%%%%%%%##""""!!!!    ""!!  !!$$###""!!!!!!"""&&&%%%$$$#####$$'''''''&&%%%%%$$'''''''&&%%%$$$$$#####""""!!!!!!!  #"""!!!!####""!!  %%%%%%%$$$$$$$$$$$$$$$$$#######################"""""""""""""""!!!!!!!!!!!!!!!!!!!!! %%%%%%%%%$$$$$$$$$$$$$$$$$$######################"""""""""""""""!!!!!!!!!!!!!!!!!!!! %%%%%%%%%%%%$$$$$$$$$$$$$$$$$$#####################"""""""""""""""!!!!!!!!!!!!!!!!!!!! %%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$####################"""""""""""""""!!!!!!!!!!!!!!!!!!!! %%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$###################"""""""""""""""!!!!!!!!!!!!!!!!!!! &%%%%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$#################""""""""""""""""!!!!!!!!!!!!!!!!!!! &&&&%%%%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$#################""""""""""""""""!!!!!!!!!!!!!!!!!! &&&&&&&%%%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$################""""""""""""""""!!!!!!!!!!!!!!!!! &&&&&&&&&&%%%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$################""""""""""""""""!!!!!!!!!!!!!!!!! &&&&&&&&&&&&&%%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$###############""""""""""""""""!!!!!!!!!!!!!!!!!!!!! &&&&&&&&&&&&&&&&%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$###############""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!! &&&&&&&&&&&&&&&&&&&%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$###############""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!! '&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$###############""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!! ''''&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$$$##############""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ''''''''&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$$##############"""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ''''''''''''&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$$##############""""""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ''''''''''''''''&&&&&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$$##############""""""""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!''''''''''''''''''''&&&&&&&&&&&&&&&&%%%%%%%%%%%$$$$$$$$$$$$$$$$#############""""""""""""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!!!!''''''''''''''''''''''''&&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$##############""""""""""""""""""""""""""!!!!!!!!!!!!!!!!!!!!!!!((''''''''''''''''''''''''''&&&&&&&&&&&&%%%%%%%%%%%%%$$$$$$$$$$$$$$###############"""""""""""""""""""""""""""!!!!!!!!!!!!!!!!!!!((((((('''''''''''''''''''''''&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$###############""""""""""""""""""""""""""""!!!!!!!!!!!!!!!!(((((((((((('''''''''''''''''''''&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$#################"""""""""""""""""""""""""""!!!!!!!!!!!!((((((((((((((((''''''''''''''''''''&&&&&&&&&&&&%%%%%%%%%%%%%$$$$$$$$$$$$$$##################""""""""""""""""""""""""""!!!!!!!!!((((((((((((((((((((('''''''''''''''''&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$####################""""""""""""""""""""""""""""""))))(((((((((((((((((((((('''''''''''''''&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$####################"""""""""""""""""""""""""""))))))))((((((((((((((((((((((''''''''''''''&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$####################""""""""""""""""""""""""))))))))))))(((((((((((((((((((((''''''''''''''&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$$####################"""""""""""""""""""""))))))))))))))))((((((((((((((((((((''''''''''''''&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$#######################""""""""""""""""*****)))))))))))))))(((((((((((((((((((''''''''''''''&&&&&&&&&&&&&%%%%%%%%%%%%$$$$$$$$$$$$$$####################################**********)))))))))))))))(((((((((((((((((('''''''''''''&&&&&&&&&&&&%%%%%%%%%%%%%$$$$$$$$$$$$$$$################################**************)))))))))))))))))((((((((((((((('''''''''''''&&&&&&&&&&&&%%%%%%%%%%%%%$$$$$$$$$$$$$$$#############################+******************)))))))))))))))((((((((((((((('''''''''''''&&&&&&&&&&&%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$$$####################+++++++*****************))))))))))))))(((((((((((((('''''''''''''&&&&&&&&&&&%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$#########++++++++++++*****************)))))))))))))((((((((((((((''''''''''''&&&&&&&&&&&%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$++++++++++++++++++****************))))))))))))((((((((((((('''''''''''&&&&&&&&&&&%%%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$$$$$$$$$$,,,,,,++++++++++++++++++**************))))))))))))(((((((((((('''''''''''&&&&&&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%$$$$$$$$$$$$$$$$$$$$,,,,,,,,,,,,++++++++++++++++++*************)))))))))))(((((((((((''''''''''''&&&&&&&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%--,,,,,,,,,,,,,,,++++++++++++++++++************)))))))))))(((((((((((''''''''''''&&&&&&&&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%---------,,,,,,,,,,,,,,,++++++++++++++++************))))))))))((((((((((((''''''''''''&&&&&&&&&&&&&&&&%%%%%%%%%%%%%%%%%%%%%%%%%%----------------,,,,,,,,,,,,,,++++++++++++++************))))))))))(((((((((((('''''''''''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&.....-----------------,,,,,,,,,,,,,,+++++++++++++***********)))))))))))((((((((((('''''''''''''&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&.............----------------,,,,,,,,,,,,+++++++++++++**********)))))))))))(((((((((('''''''''''''''''''''&&&&&&&&&&&&&&&&&&&&&&....................---------------,,,,,,,,,,,++++++++++++**********))))))))))((((((((((((((''''''''''''''''''''''''''''''''''''/////////...................-------------,,,,,,,,,,+++++++++++**********)))))))))))))(((((((((((((((((''''''''''''''''''''''''''///////////////////................------------,,,,,,,,,++++++++++************)))))))))))))(((((((((((((((((((((((''''''''''''''0000///////////////////////..............-----------,,,,,,,,,,++++++++++************)))))))))))))))(((((((((((((((((((((((((((((0000000000000000///////////////////............-----------,,,,,,,,,,++++++++++***********))))))))))))))))))(((((((((((((((((((((11110000000000000000000000////////////////...........----------,,,,,,,,,,+++++++++++************))))))))))))))))))))))))))))))))11111111111111111100000000000000000/////////////..........----------,,,,,,,,,,+++++++++++****************)))))))))))))))))))))))222111111111111111111111111100000000000000////////////..........---------,,,,,,,,,,++++++++++++**************************)))))))2222222222222222222211111111111111111000000000000//////////..........---------,,,,,,,,,,,++++++++++++++++***********************33333322222222222222222222222222111111111111100000000000/////////.........----------,,,,,,,,,,,,+++++++++++++++++++++++++*******33333333333333333333333322222222222222222111111111111000000000/////////.........-----------,,,,,,,,,,,,,,,++++++++++++++++++++++44444444443333333333333333333333333322222222222221111111111000000000/////////.........-------------,,,,,,,,,,,,,,,,,,,,,,,,+++++44444444444444444444444444444333333333333333322222222222111111111000000000/////////..........---------------,,,,,,,,,,,,,,,,,,,,55555555555555555554444444444444444444444333333333333222222222211111111000000000/////////............--------------------------,55555555555555555555555555555555555544444444444444333333333322222222211111111000000000//////////...............-----------------66666666666666666666666666555555555555555555555444444444433333333322222222211111111000000000////////////........................666666666666666666666666666666666666666666555555555555544444444433333333222222221111111110000000000///////////////..............77777777777777777777777777777777777766666666666666665555555555444444443333333322222222111111111000000000000/////////////////////777777777777777888888777777777777777777777777777666666666665555555554444444433333333222222221111111111100000000000000000////////888888888888888888888888888888888888888888888777777777777666666666555555554444444433333333222222222211111111111110000000000000009999999999999999999999999999999999999999988888888888888777777777766666665555555554444444333333333222222222221111111111111111110099999999999999999::::::::::::::::99999999999999999999888888888877777777666666665555555544444444333333333322222222222222111111111666666666666666666666666666666666666665555555555555555544444444444443333333333333333222222222222222222221111111111111111111111110000000000////////////.............------,,,,,,,,,,,,,,++++++++++++++++++++,,,,,,,,,,,,,------...............///////////////////***))))))))(((((('''''&&&&&&&%%%%%%$$$##""""""""!!!!! !!!!!""""""""##$$$%%%%%%%&&&&&&'''''((((((())))))))**"""""!!!!  !!!!!""""%%%%%$$$$$$$$$##########""""""""!!!!!!!!!! %%%%%%$$$$$$$$$$##########""""""""!!!!!!!!! %%%%%%%%%$$$$$$$$$#########""""""""!!!!!!!!!! &&&%%%%%%%%%$$$$$$$$$########""""""""!!!!!!!!! &&&&&&%%%%%%%%$$$$$$$$$########""""""""!!!!!!!!!! &&&&&&&&&%%%%%%%%$$$$$$$$########""""""""!!!!!!!!!!!! ''&&&&&&&&&&&%%%%%%$$$$$$$$#######"""""""""!!!!!!!!!!!!!!! '''''&&&&&&&&&&%%%%%%$$$$$$$$$######""""""""""!!!!!!!!!!!!!!!! '''''''''&&&&&&&&%%%%%%%$$$$$$$########"""""""""""!!!!!!!!!!!!!!''''''''''''&&&&&&&&%%%%%%$$$$$$$########""""""""""""""!!!!!!!!!((((((''''''''''&&&&&&&%%%%%%$$$$$$$########""""""""""""""!!!!!!(((((((((((''''''''&&&&&&%%%%%%%$$$$$$##########"""""""""""""""!))))((((((((((''''''''&&&&&&%%%%%%$$$$$$$$#########""""""""""""")))))))((((((((((('''''''&&&&&&%%%%%%$$$$$$$$############"""""""****)))))))))((((((((''''''&&&&&&%%%%%%%$$$$$$$$################********)))))))))(((((((''''''&&&&&&%%%%%%%$$$$$$$$$############+++++*********))))))(((((((''''''&&&&&&%%%%%%%%$$$$$$$$$$$$$$$$$,,,+++++++********)))))))((((((''''''&&&&&&%%%%%%%%%%$$$$$$$$$$$,,,,,,,,++++++++*******)))))(((((('''''''&&&&&&&%%%%%%%%%%%%%%%%------,,,,,,,,+++++++******))))))((((('''''''&&&&&&&&&&&&&&&&&&&....---------,,,,,,,++++++*****))))))(((((''''''''''&&&&&&&&&&&&//...........------,,,,,,+++++******))))))((((((((''''''''''''''///////////........------,,,,,+++++******)))))))((((((((((((((((00000000000////////......-----,,,,,++++++******)))))))))))))((((11111111111000000000/////.....-----,,,,,++++++***********)))))))222222222222111111111000000////.....-----,,,,,+++++++++*********33333333333333222222221111100000/////....------,,,,,,,,,++++++++44444444444444443333333222222111110000////......-------,,,,,,,,,5555555555555554554444444433333222111110000//////......---------5666666666666666665555555544444333322222111100000//////.........6566666666666666666666655555554443333322221111000000////////....444444444444444444444343333332222221111100000////////...........////////////./.......-------,,,,,,,,++++++++++++++++++++++++++++)((((((('''&&&&&&%%%%%%$$$$$$#$$###$###$###$$$$$$$$%%%%%%%&%&&&&!!  %%%%$$$$$####"""""!!!!! &&%%%%%$$$$####""""!!!!!! &&&&&%%%%$$$$####""""!!!!!!!! '''&&&&%%%%$$$$####"""""!!!!!!!!('''''&&&&%%%%$$$####""""""""!!!(((((''''&&&&%%%$$$$#####"""""""))))((((('''&&&%%%%$$$$#########****))))(((('''&&&%%%%$$$$$$$$##+++++****)))((('''&&&&%%%%%%$$$$,,,,,,++++***)))((('''&&&&&&%%%%..-----,,,,+++***)))(((''''''''&////......---,,,++***))))(((((((0000000/////...--,,,++****))))))0111111100000///..---,,+++*****)000111111110000//..---,,+++*****....//////.....---,,+++***)))))(*****))))))(((((''''&&&&&&&&%%%%$$####""""!!!! !!&%%$$$##"""!!!!!'&&&%%$$##""""!!('''&&%%$$###""")))((''&&%%$$$##****))((''&&%%%$++++++**)(('&&&%+,,,,,++*))(''&&*******))(''&&%%&&&%%%%$$###""""! %%$$#""!''&%$$#"((('&%$#'''&&$#"##""! $$#"$$#! !  \ No newline at end of file diff --git a/TestCommon/Data/PlayerWithTypeTrees/sharedassets1.assets b/TestCommon/Data/PlayerWithTypeTrees/sharedassets1.assets new file mode 100644 index 0000000000000000000000000000000000000000..b0139840afe0d0ec05767fdc302642ba6c6b8309 GIT binary patch literal 2928 zcmaJ@O^6&t6n-_E$;Ms(5;bb#&uGAikj<>EqIgg|o4a5TqL+Y2K|xRuQ9P{QSJgGsHM7ivs(Mx5tM^{ld-bYC zhO~dk$=oBBpYPjo?q!E9Rjbv7>cZ0F8;f!q7F7w|2Sm5G-@f?%H}9SQ=fBtHKl<*o zi?4q{{3Mzp40=K&+Xk6QW_r^pNIX3w+2_jQlvmlFp@5Q-TEt#9?x#srE8;WqGq8iu zu?yG?aq;ozfL}nPZp!$$k{_}6MyykR8KY$EEREaW&E=ZK*eh5p+MgXkh9f>GS^Kmx z^2`bw?upa{@sTu_s*gDxb^=q*6IH|#=>^U`sYU<kfO&KZ4X_c+ezGb?Zm-Gi+UO39XP?b(A1`JHvwQ6JmY5NY2X~q5#^}iT ze*_D}C$n4aTEsdlmCJ6GVUm+OpXV{>*_!NjAV%V>9xs9Cev{qVNC4mG-42u8SBkj3 z{jPfPTNp=2y!{#zcl%7$%^XVEvWbuTzS{x$`^&P0wM%I9k5xux74(*r>^9Z+T}+AZ z$LQm;p8t0euT{`nVl0Z)?=CDWspKg6JyML{-4nRA{~^|C{{V5%Ki~dA;#2J3GojzN zfA0it?SG7Q+GmxWX8(TTQ|woWPx<}_Ch)R+f;Gk$gFJ|)$mFy`Aq%=eOE=Hx4IQJH zX^BT%*pyRaaB@bs!X%9cBe_Jjbex2}u0Y93GvQ!$HJ`0t(2caPkgGd8=xa&YHKHI% zq?<^PbP95Iqbb79eU>tio7$O3Cuee4@}CU3oXb+4?FTdxE8dROihA`RY6TtLG2a{~ z3vi9qe@N!7%4e%#Jr3f*(amm{4k}H(5o|_jCDuuAGj8BT*pZTU5bLH@TXpK`9dl*J z9sVNAX|ZHXdnWkEvOH6@Ikaq~3uVT;hCDn~E8_l72oKHZ$VFIYi`URR6Qk{rwaqgav};^Vy34C&*1Enet;b0v)idhgCkF^;lx}>jR96&y1SP@C?LAU zTTCMVsNpPMjJeAXeu~Qhj&z+w-u#Q1*)*iVCcq;0;wu#&ddbQ}gz v_^KY>0+FjCM?d}c*L8Eu*yrZ7&2Q%`RQ!B~c>D +/// Tests for the serialized-file command using PlayerWithTypeTrees test data. +/// This data contains Player build output with TypeTrees enabled. +/// +public class SerializedFileCommandTests +{ + private string m_TestOutputFolder; + private string m_TestDataFolder; + + [OneTimeSetUp] + public void OneTimeSetup() + { + UnityFileSystem.Init(); + m_TestOutputFolder = Path.Combine(TestContext.CurrentContext.TestDirectory, "test_folder"); + m_TestDataFolder = Path.Combine(TestContext.CurrentContext.TestDirectory, "Data", "PlayerWithTypeTrees"); + Directory.CreateDirectory(m_TestOutputFolder); + Directory.SetCurrentDirectory(m_TestOutputFolder); + } + + [TearDown] + public void Teardown() + { + SqliteConnection.ClearAllPools(); + + var testDir = new DirectoryInfo(m_TestOutputFolder); + testDir.EnumerateFiles() + .ToList().ForEach(f => f.Delete()); + testDir.EnumerateDirectories() + .ToList().ForEach(d => d.Delete(true)); + } + + [OneTimeTearDown] + public void OneTimeTeardown() + { + UnityFileSystem.Cleanup(); + } + + #region ExternalRefs Tests + + [Test] + public async Task ExternalRefs_TextFormat_OutputsCorrectly() + { + var path = Path.Combine(m_TestDataFolder, "sharedassets0.assets"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "externalrefs", path })); + + var output = sw.ToString(); + var lines = output.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries); + + // sharedassets0.assets should have external references + Assert.Greater(lines.Length, 0, "Expected at least one external reference"); + + // Check format: "Index: N, Path: " + foreach (var line in lines) + { + StringAssert.Contains("Index:", line); + StringAssert.Contains("Path:", line); + } + } + finally + { + Console.SetOut(currentOut); + } + } + + [Test] + public async Task ExternalRefs_JsonFormat_OutputsValidJson() + { + var path = Path.Combine(m_TestDataFolder, "sharedassets0.assets"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "externalrefs", path, "-f", "json" })); + + var output = sw.ToString(); + + // Parse JSON to verify it's valid + var jsonArray = JsonDocument.Parse(output).RootElement; + Assert.IsTrue(jsonArray.ValueKind == JsonValueKind.Array); + + // Verify structure of each element + foreach (var element in jsonArray.EnumerateArray()) + { + Assert.IsTrue(element.TryGetProperty("index", out _)); + Assert.IsTrue(element.TryGetProperty("path", out _)); + Assert.IsTrue(element.TryGetProperty("guid", out _)); + Assert.IsTrue(element.TryGetProperty("type", out _)); + } + } + finally + { + Console.SetOut(currentOut); + } + } + + [Test] + public async Task ExternalRefs_Level0_HasExpectedReferences() + { + var path = Path.Combine(m_TestDataFolder, "level0"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "externalrefs", path, "-f", "json" })); + + var output = sw.ToString(); + var jsonArray = JsonDocument.Parse(output).RootElement; + + // level0 should reference sharedassets0.assets + bool foundSharedAssets = false; + foreach (var element in jsonArray.EnumerateArray()) + { + var pathValue = element.GetProperty("path").GetString(); + if (pathValue != null && pathValue.Contains("sharedassets0")) + { + foundSharedAssets = true; + break; + } + } + + Assert.IsTrue(foundSharedAssets, "Expected level0 to reference sharedassets0.assets"); + } + finally + { + Console.SetOut(currentOut); + } + } + + #endregion + + #region ObjectList Tests + + [Test] + public async Task ObjectList_TextFormat_OutputsTable() + { + var path = Path.Combine(m_TestDataFolder, "level0"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "objectlist", path })); + + var output = sw.ToString(); + var lines = output.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries); + + // Should have header line + Assert.Greater(lines.Length, 2, "Expected header and at least one data row"); + StringAssert.Contains("Id", lines[0]); + StringAssert.Contains("Type", lines[0]); + StringAssert.Contains("Offset", lines[0]); + StringAssert.Contains("Size", lines[0]); + + // Second line should be separator + StringAssert.Contains("---", lines[1]); + + // Should have data rows with numeric values + Assert.Greater(lines.Length, 2); + } + finally + { + Console.SetOut(currentOut); + } + } + + [Test] + public async Task ObjectList_JsonFormat_OutputsValidJson() + { + var path = Path.Combine(m_TestDataFolder, "level0"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "objectlist", path, "--format", "json" })); + + var output = sw.ToString(); + + // Parse JSON to verify it's valid + var jsonArray = JsonDocument.Parse(output).RootElement; + Assert.IsTrue(jsonArray.ValueKind == JsonValueKind.Array); + Assert.Greater(jsonArray.GetArrayLength(), 0); + + // Verify structure of each element + foreach (var element in jsonArray.EnumerateArray()) + { + Assert.IsTrue(element.TryGetProperty("id", out _)); + Assert.IsTrue(element.TryGetProperty("typeId", out _)); + Assert.IsTrue(element.TryGetProperty("typeName", out _)); + Assert.IsTrue(element.TryGetProperty("offset", out _)); + Assert.IsTrue(element.TryGetProperty("size", out _)); + } + } + finally + { + Console.SetOut(currentOut); + } + } + + [Test] + public async Task ObjectList_ShowsTypeNames_NotJustNumbers() + { + var path = Path.Combine(m_TestDataFolder, "level0"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "sf", "objectlist", path, "-f", "json" })); + + var output = sw.ToString(); + var jsonArray = JsonDocument.Parse(output).RootElement; + + // Look for common Unity types by name (not just numeric TypeIds) + bool foundGameObject = false; + bool foundTransform = false; + + foreach (var element in jsonArray.EnumerateArray()) + { + var typeName = element.GetProperty("typeName").GetString(); + if (typeName == "GameObject") foundGameObject = true; + if (typeName == "Transform") foundTransform = true; + } + + Assert.IsTrue(foundGameObject, "Expected to find GameObject type"); + Assert.IsTrue(foundTransform, "Expected to find Transform type"); + } + finally + { + Console.SetOut(currentOut); + } + } + + [Test] + public async Task ObjectList_SharedAssets_ContainsExpectedTypes() + { + var path = Path.Combine(m_TestDataFolder, "sharedassets0.assets"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "objectlist", path, "-f", "json" })); + + var output = sw.ToString(); + var jsonArray = JsonDocument.Parse(output).RootElement; + + // SharedAssets should contain MonoBehaviour (114) or MonoScript (115) + bool foundScriptType = false; + + foreach (var element in jsonArray.EnumerateArray()) + { + var typeName = element.GetProperty("typeName").GetString(); + if (typeName == "MonoBehaviour" || typeName == "MonoScript") + { + foundScriptType = true; + break; + } + } + + Assert.IsTrue(foundScriptType, "Expected to find MonoBehaviour or MonoScript in sharedassets"); + } + finally + { + Console.SetOut(currentOut); + } + } + + #endregion + + #region Cross-Validation with Analyze Command + + [Test] + public async Task ObjectList_CrossValidate_MatchesAnalyzeCommand() + { + // First, run analyze command to create database + var databasePath = Path.Combine(m_TestOutputFolder, "test_analyze.db"); + var analyzePath = m_TestDataFolder; + Assert.AreEqual(0, await Program.Main(new string[] { "analyze", analyzePath, "-o", databasePath, "-p", "level0" })); + + // Now run serialized-file objectlist + var path = Path.Combine(m_TestDataFolder, "level0"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "objectlist", path, "-f", "json" })); + + var output = sw.ToString(); + var jsonArray = JsonDocument.Parse(output).RootElement; + var sfObjectCount = jsonArray.GetArrayLength(); + + // Query database for the same file + using var db = new SqliteConnection($"Data Source={databasePath}"); + db.Open(); + using var cmd = db.CreateCommand(); + cmd.CommandText = @" + SELECT COUNT(*) + FROM objects o + INNER JOIN serialized_files sf ON o.serialized_file = sf.id + WHERE sf.name = 'level0'"; + + var dbObjectCount = Convert.ToInt32(cmd.ExecuteScalar()); + + // Object counts should match + Assert.AreEqual(dbObjectCount, sfObjectCount, "Object count from serialized-file command should match analyze database"); + + // Verify a few specific objects match by type and size + cmd.CommandText = @" + SELECT o.object_id, t.name, o.size + FROM objects o + INNER JOIN types t ON o.type = t.id + INNER JOIN serialized_files sf ON o.serialized_file = sf.id + WHERE sf.name = 'level0' + LIMIT 5"; + + using var reader = cmd.ExecuteReader(); + while (reader.Read()) + { + var dbObjectId = reader.GetInt64(0); + var dbTypeName = reader.GetString(1); + var dbSize = reader.GetInt64(2); + + // Find matching object in serialized-file output + bool found = false; + foreach (var element in jsonArray.EnumerateArray()) + { + var sfObjectId = element.GetProperty("id").GetInt64(); + if (sfObjectId == dbObjectId) + { + var sfTypeName = element.GetProperty("typeName").GetString(); + var sfSize = element.GetProperty("size").GetInt64(); + + Assert.AreEqual(dbTypeName, sfTypeName, $"Type name mismatch for object {dbObjectId}"); + Assert.AreEqual(dbSize, sfSize, $"Size mismatch for object {dbObjectId}"); + found = true; + break; + } + } + + Assert.IsTrue(found, $"Object {dbObjectId} found in database but not in serialized-file output"); + } + } + finally + { + Console.SetOut(currentOut); + } + } + + #endregion + + #region Format Option Tests + + [Test] + public async Task FormatOption_DefaultIsText() + { + var path = Path.Combine(m_TestDataFolder, "level0"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "objectlist", path })); + + var output = sw.ToString(); + + // Text format should have header line with "Id", "Type", etc. + StringAssert.Contains("Id", output); + StringAssert.Contains("Type", output); + StringAssert.Contains("Offset", output); + StringAssert.Contains("Size", output); + + // Should not start with '[' or '{' (not JSON) + Assert.IsFalse(output.TrimStart().StartsWith("[")); + Assert.IsFalse(output.TrimStart().StartsWith("{")); + } + finally + { + Console.SetOut(currentOut); + } + } + + [Test] + public async Task FormatOption_ShortAndLongForms_Work() + { + var path = Path.Combine(m_TestDataFolder, "level0"); + + // Test short form -f + using (var sw = new StringWriter()) + { + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "objectlist", path, "-f", "json" })); + var output = sw.ToString(); + Assert.DoesNotThrow(() => JsonDocument.Parse(output)); + } + finally + { + Console.SetOut(currentOut); + } + } + + // Test long form --format + using (var sw = new StringWriter()) + { + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + Assert.AreEqual(0, await Program.Main(new string[] { "serialized-file", "objectlist", path, "--format", "json" })); + var output = sw.ToString(); + Assert.DoesNotThrow(() => JsonDocument.Parse(output)); + } + finally + { + Console.SetOut(currentOut); + } + } + } + + [Test] + public async Task Alias_SF_Works() + { + var path = Path.Combine(m_TestDataFolder, "level0"); + using var sw = new StringWriter(); + var currentOut = Console.Out; + try + { + Console.SetOut(sw); + + // Use 'sf' alias instead of 'serialized-file' + Assert.AreEqual(0, await Program.Main(new string[] { "sf", "objectlist", path })); + + var output = sw.ToString(); + Assert.IsNotEmpty(output); + } + finally + { + Console.SetOut(currentOut); + } + } + + #endregion + + #region Error Handling Tests + + [Test] + public async Task ErrorHandling_InvalidFile_ReturnsError() + { + var path = Path.Combine(m_TestDataFolder, "README.md"); // Text file, not a SerializedFile + + var result = await Program.Main(new string[] { "serialized-file", "objectlist", path }); + Assert.AreNotEqual(0, result, "Should return error code for invalid file"); + } + + [Test] + public async Task ErrorHandling_NonExistentFile_ReturnsError() + { + var path = Path.Combine(m_TestDataFolder, "nonexistent.file"); + + // System.CommandLine should catch this and return error + var result = await Program.Main(new string[] { "serialized-file", "objectlist", path }); + Assert.AreNotEqual(0, result, "Should return error code for non-existent file"); + } + + #endregion +} + diff --git a/UnityDataTool/Program.cs b/UnityDataTool/Program.cs index bf95060..59fae2d 100644 --- a/UnityDataTool/Program.cs +++ b/UnityDataTool/Program.cs @@ -9,6 +9,12 @@ namespace UnityDataTools.UnityDataTool; +public enum OutputFormat +{ + Text, + Json +} + public static class Program { public static async Task Main(string[] args) @@ -124,6 +130,41 @@ public static async Task Main(string[] args) rootCommand.AddCommand(archiveCommand); } + { + var pathArg = new Argument("filename", "The path of the SerializedFile").ExistingOnly(); + var fOpt = new Option(aliases: new[] { "--format", "-f" }, description: "Output format", getDefaultValue: () => OutputFormat.Text); + + var externalRefsCommand = new Command("externalrefs", "List external file references in a SerializedFile.") + { + pathArg, + fOpt, + }; + + externalRefsCommand.SetHandler( + (FileInfo fi, OutputFormat f) => Task.FromResult(SerializedFileCommands.HandleExternalRefs(fi, f)), + pathArg, fOpt); + + var objectListCommand = new Command("objectlist", "List all objects in a SerializedFile.") + { + pathArg, + fOpt, + }; + + objectListCommand.SetHandler( + (FileInfo fi, OutputFormat f) => Task.FromResult(SerializedFileCommands.HandleObjectList(fi, f)), + pathArg, fOpt); + + var serializedFileCommand = new Command("serialized-file", "Inspect a SerializedFile (scene, assets, etc.).") + { + externalRefsCommand, + objectListCommand, + }; + + serializedFileCommand.AddAlias("sf"); + + rootCommand.AddCommand(serializedFileCommand); + } + var r = await rootCommand.InvokeAsync(args); UnityFileSystem.Cleanup(); diff --git a/UnityDataTool/SerializedFileCommands.cs b/UnityDataTool/SerializedFileCommands.cs new file mode 100644 index 0000000..56ca0ca --- /dev/null +++ b/UnityDataTool/SerializedFileCommands.cs @@ -0,0 +1,139 @@ +using System; +using System.IO; +using System.Text.Json; +using UnityDataTools.FileSystem; + +namespace UnityDataTools.UnityDataTool; + +public static class SerializedFileCommands +{ + public static int HandleExternalRefs(FileInfo filename, OutputFormat format) + { + try + { + using var sf = UnityFileSystem.OpenSerializedFile(filename.FullName); + + if (format == OutputFormat.Json) + OutputExternalRefsJson(sf); + else + OutputExternalRefsText(sf); + } + catch (Exception err) when (err is NotSupportedException || err is FileFormatException) + { + Console.Error.WriteLine($"Error opening serialized file: {filename.FullName}"); + Console.Error.WriteLine(err.Message); + return 1; + } + + return 0; + } + + public static int HandleObjectList(FileInfo filename, OutputFormat format) + { + try + { + using var sf = UnityFileSystem.OpenSerializedFile(filename.FullName); + + if (format == OutputFormat.Json) + OutputObjectListJson(sf); + else + OutputObjectListText(sf); + } + catch (Exception err) when (err is NotSupportedException || err is FileFormatException) + { + Console.Error.WriteLine($"Error opening serialized file: {filename.FullName}"); + Console.Error.WriteLine(err.Message); + return 1; + } + + return 0; + } + + private static void OutputExternalRefsText(SerializedFile sf) + { + var refs = sf.ExternalReferences; + + for (int i = 0; i < refs.Count; i++) + { + var extRef = refs[i]; + var displayValue = !string.IsNullOrEmpty(extRef.Path) ? extRef.Path : extRef.Guid; + Console.WriteLine($"Index: {i + 1}, Path: {displayValue}"); + } + } + + private static void OutputExternalRefsJson(SerializedFile sf) + { + var refs = sf.ExternalReferences; + var jsonArray = new object[refs.Count]; + + for (int i = 0; i < refs.Count; i++) + { + var extRef = refs[i]; + jsonArray[i] = new + { + index = i + 1, + path = extRef.Path, + guid = extRef.Guid, + type = extRef.Type.ToString() + }; + } + + var json = JsonSerializer.Serialize(jsonArray, new JsonSerializerOptions { WriteIndented = true }); + Console.WriteLine(json); + } + + private static void OutputObjectListText(SerializedFile sf) + { + var objects = sf.Objects; + + // Print header + Console.WriteLine($"{"Id",-20} {"Type",-40} {"Offset",-15} {"Size",-15}"); + Console.WriteLine(new string('-', 90)); + + foreach (var obj in objects) + { + string typeName = GetTypeName(sf, obj); + Console.WriteLine($"{obj.Id,-20} {typeName,-40} {obj.Offset,-15} {obj.Size,-15}"); + } + } + + private static void OutputObjectListJson(SerializedFile sf) + { + var objects = sf.Objects; + var jsonArray = new object[objects.Count]; + + for (int i = 0; i < objects.Count; i++) + { + var obj = objects[i]; + string typeName = GetTypeName(sf, obj); + + jsonArray[i] = new + { + id = obj.Id, + typeId = obj.TypeId, + typeName = typeName, + offset = obj.Offset, + size = obj.Size + }; + } + + var json = JsonSerializer.Serialize(jsonArray, new JsonSerializerOptions { WriteIndented = true }); + Console.WriteLine(json); + } + + private static string GetTypeName(SerializedFile sf, ObjectInfo obj) + { + try + { + // Try to get type name from TypeTree first (most accurate) + var root = sf.GetTypeTreeRoot(obj.Id); + return root.Type; + } + catch + { + // Fall back to registry if TypeTree is not available + return TypeIdRegistry.GetTypeName(obj.TypeId); + } + } +} + diff --git a/UnityFileSystem/TypeIdRegistry.cs b/UnityFileSystem/TypeIdRegistry.cs new file mode 100644 index 0000000..ec4928d --- /dev/null +++ b/UnityFileSystem/TypeIdRegistry.cs @@ -0,0 +1,318 @@ +using System.Collections.Generic; + +namespace UnityDataTools.FileSystem; + +/// +/// Registry of common Unity TypeIds mapped to their type names. +/// Used as a fallback when TypeTree information is not available. +/// Reference: https://docs.unity3d.com/Manual/ClassIDReference.html +/// +public static class TypeIdRegistry +{ + private static readonly Dictionary s_KnownTypes = new() + { + { 1, "GameObject" }, + { 2, "Component" }, + { 3, "LevelGameManager" }, + { 4, "Transform" }, + { 5, "TimeManager" }, + { 6, "GlobalGameManager" }, + { 8, "Behaviour" }, + { 9, "GameManager" }, + { 11, "AudioManager" }, + { 13, "InputManager" }, + { 18, "EditorExtension" }, + { 19, "Physics2DSettings" }, + { 20, "Camera" }, + { 21, "Material" }, + { 23, "MeshRenderer" }, + { 25, "Renderer" }, + { 27, "Texture" }, + { 28, "Texture2D" }, + { 29, "OcclusionCullingSettings" }, + { 30, "GraphicsSettings" }, + { 33, "MeshFilter" }, + { 41, "OcclusionPortal" }, + { 43, "Mesh" }, + { 45, "Skybox" }, + { 47, "QualitySettings" }, + { 48, "Shader" }, + { 49, "TextAsset" }, + { 50, "Rigidbody2D" }, + { 53, "Collider2D" }, + { 54, "Rigidbody" }, + { 55, "PhysicsManager" }, + { 56, "Collider" }, + { 57, "Joint" }, + { 58, "CircleCollider2D" }, + { 59, "HingeJoint" }, + { 60, "PolygonCollider2D" }, + { 61, "BoxCollider2D" }, + { 62, "PhysicsMaterial2D" }, + { 64, "MeshCollider" }, + { 65, "BoxCollider" }, + { 66, "CompositeCollider2D" }, + { 68, "EdgeCollider2D" }, + { 70, "CapsuleCollider2D" }, + { 72, "ComputeShader" }, + { 74, "AnimationClip" }, + { 75, "ConstantForce" }, + { 78, "TagManager" }, + { 81, "AudioListener" }, + { 82, "AudioSource" }, + { 83, "AudioClip" }, + { 84, "RenderTexture" }, + { 86, "CustomRenderTexture" }, + { 89, "Cubemap" }, + { 90, "Avatar" }, + { 91, "AnimatorController" }, + { 93, "RuntimeAnimatorController" }, + { 94, "ShaderNameRegistry" }, + { 95, "Animator" }, + { 96, "TrailRenderer" }, + { 98, "DelayedCallManager" }, + { 102, "TextMesh" }, + { 104, "RenderSettings" }, + { 108, "Light" }, + { 109, "ShaderInclude" }, + { 110, "BaseAnimationTrack" }, + { 111, "Animation" }, + { 114, "MonoBehaviour" }, + { 115, "MonoScript" }, + { 116, "MonoManager" }, + { 117, "Texture3D" }, + { 118, "NewAnimationTrack" }, + { 119, "Projector" }, + { 120, "LineRenderer" }, + { 121, "Flare" }, + { 122, "Halo" }, + { 123, "LensFlare" }, + { 124, "FlareLayer" }, + { 126, "NavMeshProjectSettings" }, + { 128, "Font" }, + { 129, "PlayerSettings" }, + { 130, "NamedObject" }, + { 134, "PhysicsMaterial" }, + { 135, "SphereCollider" }, + { 136, "CapsuleCollider" }, + { 137, "SkinnedMeshRenderer" }, + { 138, "FixedJoint" }, + { 141, "BuildSettings" }, + { 142, "AssetBundle" }, + { 143, "CharacterController" }, + { 144, "CharacterJoint" }, + { 145, "SpringJoint" }, + { 146, "WheelCollider" }, + { 147, "ResourceManager" }, + { 150, "PreloadData" }, + { 152, "MovieTexture" }, + { 153, "ConfigurableJoint" }, + { 154, "TerrainCollider" }, + { 156, "TerrainData" }, + { 157, "LightmapSettings" }, + { 158, "WebCamTexture" }, + { 159, "EditorSettings" }, + { 162, "EditorUserSettings" }, + { 164, "AudioReverbFilter" }, + { 165, "AudioHighPassFilter" }, + { 166, "AudioChorusFilter" }, + { 167, "AudioReverbZone" }, + { 168, "AudioEchoFilter" }, + { 169, "AudioLowPassFilter" }, + { 170, "AudioDistortionFilter" }, + { 171, "SparseTexture" }, + { 180, "AudioBehaviour" }, + { 181, "AudioFilter" }, + { 182, "WindZone" }, + { 183, "Cloth" }, + { 184, "SubstanceArchive" }, + { 185, "ProceduralMaterial" }, + { 186, "ProceduralTexture" }, + { 187, "Texture2DArray" }, + { 188, "CubemapArray" }, + { 191, "OffMeshLink" }, + { 192, "OcclusionArea" }, + { 193, "Tree" }, + { 195, "NavMeshAgent" }, + { 196, "NavMeshSettings" }, + { 198, "ParticleSystem" }, + { 199, "ParticleSystemRenderer" }, + { 200, "ShaderVariantCollection" }, + { 205, "LODGroup" }, + { 206, "BlendTree" }, + { 207, "Motion" }, + { 208, "NavMeshObstacle" }, + { 210, "SortingGroup" }, + { 212, "SpriteRenderer" }, + { 213, "Sprite" }, + { 214, "CachedSpriteAtlas" }, + { 215, "ReflectionProbe" }, + { 218, "Terrain" }, + { 220, "LightProbeGroup" }, + { 221, "AnimatorOverrideController" }, + { 222, "CanvasRenderer" }, + { 223, "Canvas" }, + { 224, "RectTransform" }, + { 225, "CanvasGroup" }, + { 226, "BillboardAsset" }, + { 227, "BillboardRenderer" }, + { 228, "SpeedTreeWindAsset" }, + { 229, "AnchoredJoint2D" }, + { 230, "Joint2D" }, + { 231, "SpringJoint2D" }, + { 232, "DistanceJoint2D" }, + { 233, "HingeJoint2D" }, + { 234, "SliderJoint2D" }, + { 235, "WheelJoint2D" }, + { 236, "ClusterInputManager" }, + { 237, "BaseVideoTexture" }, + { 238, "NavMeshData" }, + { 240, "AudioMixer" }, + { 241, "AudioMixerController" }, + { 243, "AudioMixerGroupController" }, + { 244, "AudioMixerEffectController" }, + { 245, "AudioMixerSnapshotController" }, + { 246, "PhysicsUpdateBehaviour2D" }, + { 247, "ConstantForce2D" }, + { 248, "Effector2D" }, + { 249, "AreaEffector2D" }, + { 250, "PointEffector2D" }, + { 251, "PlatformEffector2D" }, + { 252, "SurfaceEffector2D" }, + { 253, "BuoyancyEffector2D" }, + { 254, "RelativeJoint2D" }, + { 255, "FixedJoint2D" }, + { 256, "FrictionJoint2D" }, + { 257, "TargetJoint2D" }, + { 258, "LightProbes" }, + { 259, "LightProbeProxyVolume" }, + { 271, "SampleClip" }, + { 272, "AudioMixerSnapshot" }, + { 273, "AudioMixerGroup" }, + { 290, "AssetBundleManifest" }, + { 300, "RuntimeInitializeOnLoadManager" }, + { 310, "UnityConnectSettings" }, + { 319, "AvatarMask" }, + { 320, "PlayableDirector" }, + { 328, "VideoPlayer" }, + { 329, "VideoClip" }, + { 330, "ParticleSystemForceField" }, + { 331, "SpriteMask" }, + { 363, "OcclusionCullingData" }, + { 900, "MarshallingTestObject" }, + { 1001, "PrefabInstance" }, + { 1002, "EditorExtensionImpl" }, + { 1026, "HierarchyState" }, + { 1028, "AssetMetaData" }, + { 1029, "DefaultAsset" }, + { 1032, "SceneAsset" }, + { 1045, "EditorBuildSettings" }, + { 1048, "InspectorExpandedState" }, + { 1049, "AnnotationManager" }, + { 1051, "EditorUserBuildSettings" }, + { 1101, "AnimatorStateTransition" }, + { 1102, "AnimatorState" }, + { 1105, "HumanTemplate" }, + { 1107, "AnimatorStateMachine" }, + { 1108, "PreviewAnimationClip" }, + { 1109, "AnimatorTransition" }, + { 1111, "AnimatorTransitionBase" }, + { 1113, "LightmapParameters" }, + { 1120, "LightingDataAsset" }, + { 1125, "BuildReport" }, + { 1126, "PackedAssets" }, + { 100000, "int" }, + { 100001, "bool" }, + { 100002, "float" }, + { 100003, "MonoObject" }, + { 100004, "Collision" }, + { 100005, "Vector3f" }, + { 100006, "RootMotionData" }, + { 100007, "Collision2D" }, + { 100008, "AudioMixerLiveUpdateFloat" }, + { 100009, "AudioMixerLiveUpdateBool" }, + { 100010, "Polygon2D" }, + { 100011, "void" }, + { 19719996, "TilemapCollider2D" }, + { 41386430, "ImportLog" }, + { 55640938, "GraphicsStateCollection" }, + { 73398921, "VFXRenderer" }, + { 156049354, "Grid" }, + { 156483287, "ScenesUsingAssets" }, + { 171741748, "ArticulationBody" }, + { 181963792, "Preset" }, + { 285090594, "IConstraint" }, + { 355983997, "AudioResource" }, + { 369655926, "AssetImportInProgressProxy" }, + { 382020655, "PluginBuildInfo" }, + { 387306366, "MemorySettings" }, + { 426301858, "EditorProjectAccess" }, + { 483693784, "TilemapRenderer" }, + { 612988286, "SpriteAtlasAsset" }, + { 638013454, "SpriteAtlasDatabase" }, + { 641289076, "AudioBuildInfo" }, + { 644342135, "CachedSpriteAtlasRuntimeData" }, + { 655991488, "MultiplayerManager" }, + { 662584278, "AssemblyDefinitionReferenceAsset" }, + { 668709126, "BuiltAssetBundleInfoSet" }, + { 687078895, "SpriteAtlas" }, + { 702665669, "DifferentMarshallingTestObject" }, + { 825902497, "RayTracingShader" }, + { 850595691, "LightingSettings" }, + { 877146078, "PlatformModuleSetup" }, + { 890905787, "VersionControlSettings" }, + { 893571522, "CustomCollider2D" }, + { 895512359, "AimConstraint" }, + { 937362698, "VFXManager" }, + { 947337230, "RoslynAnalyzerConfigAsset" }, + { 954905827, "RuleSetFileAsset" }, + { 994735392, "VisualEffectSubgraph" }, + { 994735403, "VisualEffectSubgraphOperator" }, + { 994735404, "VisualEffectSubgraphBlock" }, + { 1001480554, "Prefab" }, + { 1114811875, "ReferencesArtifactGenerator" }, + { 1152215463, "AssemblyDefinitionAsset" }, + { 1154873562, "SceneVisibilityState" }, + { 1183024399, "LookAtConstraint" }, + { 1233149941, "AudioContainerElement" }, + { 1268269756, "GameObjectRecorder" }, + { 1307931743, "AudioRandomContainer" }, + { 1325145578, "LightingDataAssetParent" }, + { 1386491679, "PresetManager" }, + { 1403656975, "StreamingManager" }, + { 1480428607, "LowerResBlitTexture" }, + { 1521398425, "VideoBuildInfo" }, + { 1542919678, "StreamingController" }, + { 1557264870, "ShaderContainer" }, + { 1597193336, "RoslynAdditionalFileAsset" }, + { 1652712579, "MultiplayerRolesData" }, + { 1660057539, "SceneRoots" }, + { 1731078267, "BrokenPrefabAsset" }, + { 1740304944, "VulkanDeviceFilterLists" }, + { 1742807556, "GridLayout" }, + { 1773428102, "ParentConstraint" }, + { 1818360608, "PositionConstraint" }, + { 1818360609, "RotationConstraint" }, + { 1818360610, "ScaleConstraint" }, + { 1839735485, "Tilemap" }, + { 1896753125, "PackageManifest" }, + { 1931382933, "UIRenderer" }, + { 1953259897, "TerrainLayer" }, + { 1971053207, "SpriteShapeRenderer" }, + { 2058629509, "VisualEffectAsset" }, + { 2058629511, "VisualEffectResource" }, + { 2059678085, "VisualEffectObject" }, + { 2083052967, "VisualEffect" }, + { 2083778819, "LocalizationAsset" }, + }; + + /// The Unity TypeId + /// The type name or TypeId as string if unknown + public static string GetTypeName(int typeId) + { + return s_KnownTypes.TryGetValue(typeId, out var name) + ? name + : typeId.ToString(); + } +} + From 38f11fba8d520debc09e6573fa19f17264814d4d Mon Sep 17 00:00:00 2001 From: Andrew Skowronski Date: Wed, 31 Dec 2025 17:12:04 -0500 Subject: [PATCH 8/8] Remove text dumps These test dumps were not meant for source control --- .../BuildReports/AssetBundle.buildreport.txt | 633 --- .../Data/BuildReports/Player.buildreport.txt | 4140 ----------------- 2 files changed, 4773 deletions(-) delete mode 100644 TestCommon/Data/BuildReports/AssetBundle.buildreport.txt delete mode 100644 TestCommon/Data/BuildReports/Player.buildreport.txt diff --git a/TestCommon/Data/BuildReports/AssetBundle.buildreport.txt b/TestCommon/Data/BuildReports/AssetBundle.buildreport.txt deleted file mode 100644 index e67e099..0000000 --- a/TestCommon/Data/BuildReports/AssetBundle.buildreport.txt +++ /dev/null @@ -1,633 +0,0 @@ -External References - -ID: -6210328523265720665 (ClassID: 1126) PackedAssets - m_ShortPath (string) CAB-76a378bdc9304bd3c3a82de8dd97981a.resource - m_Overhead (UInt64) 0 - m_Contents (vector) - Array[1] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 83 - packedSize (UInt64) 18496 - offset (UInt64) 0 - sourceAssetGUID (GUID) - data[0] (unsigned int) 510047344 - data[1] (unsigned int) 1200191226 - data[2] (unsigned int) 2021230213 - data[3] (unsigned int) 2122331027 - buildTimeAssetPath (string) Assets/audio/audio.mp3 - -ID: -5068572036128640151 (ClassID: 382020655) PluginBuildInfo - m_RuntimePlugins (vector) - Array[5] - data[0] (string) Newtonsoft.Json - data[1] (string) UnityAdsInitializationListener - data[2] (string) UnityAdsShowListener - data[3] (string) nunit.framework - data[4] (string) UnityAdsLoadListener - m_EditorPlugins (vector) - Array[15] - data[0] (string) Mono.Cecil.Pdb - data[1] (string) log4netPlastic - data[2] (string) JetBrains.Rider.PathLocator - data[3] (string) Mono.Cecil.Rocks - data[4] (string) unityplastic - data[5] (string) Mono.Cecil.Mdb - data[6] (string) Unity.Plastic.Newtonsoft.Json - data[7] (string) Unity.Analytics.Editor - data[8] (string) Unity.Plastic.Antlr3.Runtime - data[9] (string) zlib64Plastic - data[10] (string) liblz4Plastic - data[11] (string) lz4x64Plastic - data[12] (string) Unity.Analytics.Tracker - data[13] (string) AppleEventIntegration - data[14] (string) Mono.Cecil - -ID: -2699881322159949766 (ClassID: 1126) PackedAssets - m_ShortPath (string) CAB-6b49068aebcf9d3b05692c8efd933167 - m_Overhead (UInt64) 10720 - m_Contents (vector) - Array[7] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) -4266742476527514910 - classID (Type*) 213 - packedSize (UInt64) 464 - offset (UInt64) 10704 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1377324347 - data[1] (unsigned int) 1291145104 - data[2] (unsigned int) 2227835800 - data[3] (unsigned int) 660996637 - buildTimeAssetPath (string) Assets/Sprites/Snow 1.jpg - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) -3600607445234681765 - classID (Type*) 28 - packedSize (UInt64) 204 - offset (UInt64) 11168 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2731658232 - data[1] (unsigned int) 1324654785 - data[2] (unsigned int) 2360135852 - data[3] (unsigned int) 2253774587 - buildTimeAssetPath (string) Assets/Sprites/red.png - data[2] (BuildReportPackedAssetInfo) - fileID (SInt64) -2408881041259534328 - classID (Type*) 213 - packedSize (UInt64) 460 - offset (UInt64) 11376 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1179607688 - data[1] (unsigned int) 1278849281 - data[2] (unsigned int) 1374027963 - data[3] (unsigned int) 1900018330 - buildTimeAssetPath (string) Assets/Sprites/Snow.jpg - data[3] (BuildReportPackedAssetInfo) - fileID (SInt64) -1350043613627603771 - classID (Type*) 28 - packedSize (UInt64) 204 - offset (UInt64) 11840 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1179607688 - data[1] (unsigned int) 1278849281 - data[2] (unsigned int) 1374027963 - data[3] (unsigned int) 1900018330 - buildTimeAssetPath (string) Assets/Sprites/Snow.jpg - data[4] (BuildReportPackedAssetInfo) - fileID (SInt64) -39415655269619539 - classID (Type*) 28 - packedSize (UInt64) 208 - offset (UInt64) 12048 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1377324347 - data[1] (unsigned int) 1291145104 - data[2] (unsigned int) 2227835800 - data[3] (unsigned int) 660996637 - buildTimeAssetPath (string) Assets/Sprites/Snow 1.jpg - data[5] (BuildReportPackedAssetInfo) - fileID (SInt64) 1 - classID (Type*) 142 - packedSize (UInt64) 460 - offset (UInt64) 12256 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) AssetBundle Object - data[6] (BuildReportPackedAssetInfo) - fileID (SInt64) 3866367853307903194 - classID (Type*) 213 - packedSize (UInt64) 460 - offset (UInt64) 12720 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2731658232 - data[1] (unsigned int) 1324654785 - data[2] (unsigned int) 2360135852 - data[3] (unsigned int) 2253774587 - buildTimeAssetPath (string) Assets/Sprites/red.png - -ID: -1478881110413844972 (ClassID: 1126) PackedAssets - m_ShortPath (string) BuildPlayer-Scene2.sharedAssets - m_Overhead (UInt64) 83443 - m_Contents (vector) - Array[7] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 1 - classID (Type*) 150 - packedSize (UInt64) 121 - offset (UInt64) 83408 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 2 - classID (Type*) 142 - packedSize (UInt64) 184 - offset (UInt64) 83536 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) - data[2] (BuildReportPackedAssetInfo) - fileID (SInt64) 3 - classID (Type*) 21 - packedSize (UInt64) 1064 - offset (UInt64) 83728 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[3] (BuildReportPackedAssetInfo) - fileID (SInt64) 4 - classID (Type*) 21 - packedSize (UInt64) 268 - offset (UInt64) 84800 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[4] (BuildReportPackedAssetInfo) - fileID (SInt64) 5 - classID (Type*) 21 - packedSize (UInt64) 304 - offset (UInt64) 85072 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[5] (BuildReportPackedAssetInfo) - fileID (SInt64) 6 - classID (Type*) 48 - packedSize (UInt64) 49400 - offset (UInt64) 85376 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[6] (BuildReportPackedAssetInfo) - fileID (SInt64) 7 - classID (Type*) 48 - packedSize (UInt64) 6964 - offset (UInt64) 134784 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - -ID: -1012789659855765783 (ClassID: 1126) PackedAssets - m_ShortPath (string) CAB-a1e31f31856813b7384f999fbbf5e9b0 - m_Overhead (UInt64) 4040 - m_Contents (vector) - Array[2] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 1 - classID (Type*) 142 - packedSize (UInt64) 104 - offset (UInt64) 4032 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) AssetBundle Object - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 2 - classID (Type*) 290 - packedSize (UInt64) 184 - offset (UInt64) 4144 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Built-in AssetBundleManifest: AssetBundleManifest - -ID: 1 (ClassID: 1125) BuildReport - m_ObjectHideFlags (unsigned int) 0 - m_CorrespondingSourceObject (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_PrefabInstance (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_PrefabAsset (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_Name (string) Build AssetBundles - m_Summary (BuildSummary) - buildStartTime (DateTime) - ticks (SInt64) 638858729667744767 - buildGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - platformName (string) Win64 - platformGroupName (string) Standalone - subtarget (int) 2 - options (int) 0 - assetBundleOptions (int) 98817 - outputPath (string) C:/UnitySrc/BuildReportInspector/TestProject/Build/AssetBundles - crc (unsigned int) 4147003805 - totalSize (UInt64) 1434814 - totalTimeTicks (UInt64) 8038492 - totalErrors (int) 0 - totalWarnings (int) 0 - buildType (int) 2 - buildResult (int) 1 - multiProcessEnabled (bool) False - m_Files (vector) - Array[17] - data[0] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/audio.bundle/CAB-76a378bdc9304bd3c3a82de8dd97981a - role (string) SharedAssets - id (unsigned int) 0 - totalSize (UInt64) 3616 - data[1] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/audio.bundle/CAB-76a378bdc9304bd3c3a82de8dd97981a.resource - role (string) StreamingResourceFile - id (unsigned int) 1 - totalSize (UInt64) 18496 - data[2] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/audio.bundle - role (string) AssetBundle - id (unsigned int) 2 - totalSize (UInt64) 22256 - data[3] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/sprites.bundle/CAB-6b49068aebcf9d3b05692c8efd933167 - role (string) SharedAssets - id (unsigned int) 3 - totalSize (UInt64) 13180 - data[4] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/sprites.bundle/CAB-6b49068aebcf9d3b05692c8efd933167.resS - role (string) StreamingResourceFile - id (unsigned int) 4 - totalSize (UInt64) 1200464 - data[5] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/sprites.bundle - role (string) AssetBundle - id (unsigned int) 5 - totalSize (UInt64) 1213792 - data[6] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/audio.bundle.manifest - role (string) AssetBundleTextManifest - id (unsigned int) 6 - totalSize (UInt64) 488 - data[7] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/sprites.bundle.manifest - role (string) AssetBundleTextManifest - id (unsigned int) 7 - totalSize (UInt64) 581 - data[8] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle/BuildPlayer-Scene2 - role (string) Scene - id (unsigned int) 8 - totalSize (UInt64) 29008 - data[9] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle/BuildPlayer-SampleScene - role (string) Scene - id (unsigned int) 9 - totalSize (UInt64) 19344 - data[10] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle/BuildPlayer-SampleScene.sharedAssets - role (string) SharedAssets - id (unsigned int) 10 - totalSize (UInt64) 1213 - data[11] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle/BuildPlayer-Scene2.sharedAssets - role (string) SharedAssets - id (unsigned int) 11 - totalSize (UInt64) 141748 - data[12] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle - role (string) AssetBundle - id (unsigned int) 12 - totalSize (UInt64) 191504 - data[13] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/scenes.bundle.manifest - role (string) AssetBundleTextManifest - id (unsigned int) 13 - totalSize (UInt64) 1372 - data[14] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/AssetBundles/CAB-a1e31f31856813b7384f999fbbf5e9b0 - role (string) ResourcesFile - id (unsigned int) 14 - totalSize (UInt64) 4328 - data[15] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/AssetBundles - role (string) ManifestAssetBundle - id (unsigned int) 15 - totalSize (UInt64) 4448 - data[16] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector/TestProject/AssetBundles.manifest - role (string) AssetBundleTextManifest - id (unsigned int) 16 - totalSize (UInt64) 373 - m_BuildSteps (vector) - Array[19] - data[0] (BuildStepInfo) - stepName (string) Build Asset Bundles - durationTicks (UInt64) 8038492 - depth (int) 0 - messages (vector) - Array[0] - data[1] (BuildStepInfo) - stepName (string) Calculate asset bundles to be built - durationTicks (UInt64) 13044 - depth (int) 1 - messages (vector) - Array[0] - data[2] (BuildStepInfo) - stepName (string) Prebuild Cleanup and Recompile - durationTicks (UInt64) 2608713 - depth (int) 1 - messages (vector) - Array[0] - data[3] (BuildStepInfo) - stepName (string) Compile scripts - durationTicks (UInt64) 2298122 - depth (int) 2 - messages (vector) - Array[0] - data[4] (BuildStepInfo) - stepName (string) Generate and validate platform script types - durationTicks (UInt64) 268349 - depth (int) 2 - messages (vector) - Array[0] - data[5] (BuildStepInfo) - stepName (string) Build bundle: audio.bundle - durationTicks (UInt64) 48102 - depth (int) 1 - messages (vector) - Array[0] - data[6] (BuildStepInfo) - stepName (string) Build bundle: sprites.bundle - durationTicks (UInt64) 99557 - depth (int) 1 - messages (vector) - Array[0] - data[7] (BuildStepInfo) - stepName (string) Build Scene AssetBundle(s) - durationTicks (UInt64) 2742249 - depth (int) 1 - messages (vector) - Array[0] - data[8] (BuildStepInfo) - stepName (string) Build bundle: scenes.bundle - durationTicks (UInt64) 2416551 - depth (int) 2 - messages (vector) - Array[0] - data[9] (BuildStepInfo) - stepName (string) Verify Build setup - durationTicks (UInt64) 217540 - depth (int) 3 - messages (vector) - Array[0] - data[10] (BuildStepInfo) - stepName (string) Prepare assets for target platform - durationTicks (UInt64) 56191 - depth (int) 3 - messages (vector) - Array[0] - data[11] (BuildStepInfo) - stepName (string) Building scenes - durationTicks (UInt64) 1157898 - depth (int) 3 - messages (vector) - Array[0] - data[12] (BuildStepInfo) - stepName (string) Building scene Assets/Scenes/Scene2.unity - durationTicks (UInt64) 652340 - depth (int) 4 - messages (vector) - Array[0] - data[13] (BuildStepInfo) - stepName (string) Building scene Assets/Scenes/SampleScene.unity - durationTicks (UInt64) 505218 - depth (int) 4 - messages (vector) - Array[0] - data[14] (BuildStepInfo) - stepName (string) Writing asset files - durationTicks (UInt64) 305260 - depth (int) 3 - messages (vector) - Array[0] - data[15] (BuildStepInfo) - stepName (string) Packaging assets - archive:/BuildPlayer-Scene2/BuildPlayer-SampleScene.sharedAssets - durationTicks (UInt64) 52472 - depth (int) 4 - messages (vector) - Array[0] - data[16] (BuildStepInfo) - stepName (string) Packaging assets - archive:/BuildPlayer-Scene2/BuildPlayer-Scene2.sharedAssets - durationTicks (UInt64) 243071 - depth (int) 4 - messages (vector) - Array[0] - data[17] (BuildStepInfo) - stepName (string) Creating compressed player package - durationTicks (UInt64) 22510 - depth (int) 3 - messages (vector) - Array[0] - data[18] (BuildStepInfo) - stepName (string) Postprocess built player - durationTicks (UInt64) 70340 - depth (int) 3 - messages (vector) - Array[0] - m_Appendices (vector) - Array>[11] - data[0] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 6668369999605714922 - data[1] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 4690487375616820380 - data[2] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -6210328523265720665 - data[3] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -2699881322159949766 - data[4] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 6958117599249036206 - data[5] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 2944972063485144436 - data[6] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -1478881110413844972 - data[7] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -5068572036128640151 - data[8] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 6043972027667874493 - data[9] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 6371803369801214078 - data[10] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -1012789659855765783 - -ID: 2944972063485144436 (ClassID: 1126) PackedAssets - m_ShortPath (string) BuildPlayer-SampleScene.sharedAssets - m_Overhead (UInt64) 1120 - m_Contents (vector) - Array[1] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 1 - classID (Type*) 150 - packedSize (UInt64) 93 - offset (UInt64) 1120 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) - -ID: 4690487375616820380 (ClassID: 1126) PackedAssets - m_ShortPath (string) CAB-76a378bdc9304bd3c3a82de8dd97981a - m_Overhead (UInt64) 3312 - m_Contents (vector) - Array[2] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) -1630896013228033972 - classID (Type*) 83 - packedSize (UInt64) 160 - offset (UInt64) 3312 - sourceAssetGUID (GUID) - data[0] (unsigned int) 510047344 - data[1] (unsigned int) 1200191226 - data[2] (unsigned int) 2021230213 - data[3] (unsigned int) 2122331027 - buildTimeAssetPath (string) Assets/audio/audio.mp3 - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 1 - classID (Type*) 142 - packedSize (UInt64) 144 - offset (UInt64) 3472 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) AssetBundle Object - -ID: 6043972027667874493 (ClassID: 641289076) AudioBuildInfo - m_IsAudioDisabled (bool) False - m_AudioClipCount (int) 1 - m_AudioMixerCount (int) 0 - -ID: 6371803369801214078 (ClassID: 1521398425) VideoBuildInfo - m_VideoClipCount (int) 0 - m_IsVideoModuleDisabled (bool) False - -ID: 6668369999605714922 (ClassID: 668709126) BuiltAssetBundleInfoSet - bundleInfos (vector) - Array[4] - data[0] (BuiltAssetBundleInfo) - bundleName (string) audio.bundle - bundleArchiveFile (unsigned int) 2 - packagedFileIndices (vector) - Array[2] - 0, 1 - data[1] (BuiltAssetBundleInfo) - bundleName (string) sprites.bundle - bundleArchiveFile (unsigned int) 5 - packagedFileIndices (vector) - Array[2] - 3, 4 - data[2] (BuiltAssetBundleInfo) - bundleName (string) scenes.bundle - bundleArchiveFile (unsigned int) 12 - packagedFileIndices (vector) - Array[4] - 8, 9, 10, 11 - data[3] (BuiltAssetBundleInfo) - bundleName (string) AssetBundles - bundleArchiveFile (unsigned int) 15 - packagedFileIndices (vector) - Array[1] - 14 - -ID: 6958117599249036206 (ClassID: 1126) PackedAssets - m_ShortPath (string) CAB-6b49068aebcf9d3b05692c8efd933167.resS - m_Overhead (UInt64) 13 - m_Contents (vector) - Array[3] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 28 - packedSize (UInt64) 151875 - offset (UInt64) 0 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2731658232 - data[1] (unsigned int) 1324654785 - data[2] (unsigned int) 2360135852 - data[3] (unsigned int) 2253774587 - buildTimeAssetPath (string) Assets/Sprites/red.png - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 28 - packedSize (UInt64) 524288 - offset (UInt64) 151888 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1179607688 - data[1] (unsigned int) 1278849281 - data[2] (unsigned int) 1374027963 - data[3] (unsigned int) 1900018330 - buildTimeAssetPath (string) Assets/Sprites/Snow.jpg - data[2] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 28 - packedSize (UInt64) 524288 - offset (UInt64) 676176 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1377324347 - data[1] (unsigned int) 1291145104 - data[2] (unsigned int) 2227835800 - data[3] (unsigned int) 660996637 - buildTimeAssetPath (string) Assets/Sprites/Snow 1.jpg - diff --git a/TestCommon/Data/BuildReports/Player.buildreport.txt b/TestCommon/Data/BuildReports/Player.buildreport.txt deleted file mode 100644 index e1eaf62..0000000 --- a/TestCommon/Data/BuildReports/Player.buildreport.txt +++ /dev/null @@ -1,4140 +0,0 @@ -External References -path(1): "Library/unity default resources" GUID: 0000000000000000e000000000000000 Type: 0 - -ID: -8657125485098368963 (ClassID: 1126) PackedAssets - m_ShortPath (string) sharedassets0.assets - m_Overhead (UInt64) 451 - m_Contents (vector) - Array[5] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 1 - classID (Type*) 150 - packedSize (UInt64) 49 - offset (UInt64) 432 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 2 - classID (Type*) 28 - packedSize (UInt64) 144 - offset (UInt64) 496 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1179607688 - data[1] (unsigned int) 1278849281 - data[2] (unsigned int) 1374027963 - data[3] (unsigned int) 1900018330 - buildTimeAssetPath (string) Assets/Sprites/Snow.jpg - data[2] (BuildReportPackedAssetInfo) - fileID (SInt64) 3 - classID (Type*) 28 - packedSize (UInt64) 144 - offset (UInt64) 640 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2731658232 - data[1] (unsigned int) 1324654785 - data[2] (unsigned int) 2360135852 - data[3] (unsigned int) 2253774587 - buildTimeAssetPath (string) Assets/Sprites/red.png - data[3] (BuildReportPackedAssetInfo) - fileID (SInt64) 4 - classID (Type*) 213 - packedSize (UInt64) 460 - offset (UInt64) 784 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1179607688 - data[1] (unsigned int) 1278849281 - data[2] (unsigned int) 1374027963 - data[3] (unsigned int) 1900018330 - buildTimeAssetPath (string) Assets/Sprites/Snow.jpg - data[4] (BuildReportPackedAssetInfo) - fileID (SInt64) 5 - classID (Type*) 213 - packedSize (UInt64) 460 - offset (UInt64) 1248 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2731658232 - data[1] (unsigned int) 1324654785 - data[2] (unsigned int) 2360135852 - data[3] (unsigned int) 2253774587 - buildTimeAssetPath (string) Assets/Sprites/red.png - -ID: -8406665477514816739 (ClassID: 1521398425) VideoBuildInfo - m_VideoClipCount (int) 0 - m_IsVideoModuleDisabled (bool) False - -ID: -4621170717555149581 (ClassID: 1126) PackedAssets - m_ShortPath (string) globalgamemanagers.assets - m_Overhead (UInt64) 7195 - m_Contents (vector) - Array[229] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 1 - classID (Type*) 150 - packedSize (UInt64) 229 - offset (UInt64) 30624 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 2 - classID (Type*) 21 - packedSize (UInt64) 304 - offset (UInt64) 30864 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[2] (BuildReportPackedAssetInfo) - fileID (SInt64) 3 - classID (Type*) 28 - packedSize (UInt64) 168 - offset (UInt64) 31168 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Built-in Texture2D: Splash Screen Unity Logo - data[3] (BuildReportPackedAssetInfo) - fileID (SInt64) 4 - classID (Type*) 28 - packedSize (UInt64) 156 - offset (UInt64) 31344 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[4] (BuildReportPackedAssetInfo) - fileID (SInt64) 5 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 5808 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2352178688 - data[1] (unsigned int) 1240092522 - data[2] (unsigned int) 2142943658 - data[3] (unsigned int) 706626338 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/LayoutRebuilder.cs - data[5] (BuildReportPackedAssetInfo) - fileID (SInt64) 6 - classID (Type*) 115 - packedSize (UInt64) 128 - offset (UInt64) 5920 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3049696528 - data[1] (unsigned int) 1192331207 - data[2] (unsigned int) 3261497741 - data[3] (unsigned int) 3099148142 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/AnimationPreviewUtilities.cs - data[6] (BuildReportPackedAssetInfo) - fileID (SInt64) 7 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 6048 - sourceAssetGUID (GUID) - data[0] (unsigned int) 474931232 - data[1] (unsigned int) 1121167511 - data[2] (unsigned int) 4224234659 - data[3] (unsigned int) 3536504558 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/PositionAsUV1.cs - data[7] (BuildReportPackedAssetInfo) - fileID (SInt64) 8 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 6160 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1012461616 - data[1] (unsigned int) 1334997887 - data[2] (unsigned int) 4134496159 - data[3] (unsigned int) 1468740287 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/AnimationPlayableAsset.cs - data[8] (BuildReportPackedAssetInfo) - fileID (SInt64) 9 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 6288 - sourceAssetGUID (GUID) - data[0] (unsigned int) 950782032 - data[1] (unsigned int) 1013219782 - data[2] (unsigned int) 771080618 - data[3] (unsigned int) 2007935022 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SubMeshUI.cs - data[9] (BuildReportPackedAssetInfo) - fileID (SInt64) 10 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 6384 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4021590384 - data[1] (unsigned int) 3181699256 - data[2] (unsigned int) 3982523769 - data[3] (unsigned int) 1568976597 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SubMesh.cs - data[10] (BuildReportPackedAssetInfo) - fileID (SInt64) 11 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 6480 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2522288288 - data[1] (unsigned int) 1313283835 - data[2] (unsigned int) 1266249880 - data[3] (unsigned int) 3417031789 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontAssetUtilities.cs - data[11] (BuildReportPackedAssetInfo) - fileID (SInt64) 12 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 6592 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3343952544 - data[1] (unsigned int) 1239835998 - data[2] (unsigned int) 3423240624 - data[3] (unsigned int) 962872077 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/UIBehaviour.cs - data[12] (BuildReportPackedAssetInfo) - fileID (SInt64) 13 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 6704 - sourceAssetGUID (GUID) - data[0] (unsigned int) 29642176 - data[1] (unsigned int) 1235426835 - data[2] (unsigned int) 73624499 - data[3] (unsigned int) 1742403136 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/CanvasScaler.cs - data[13] (BuildReportPackedAssetInfo) - fileID (SInt64) 14 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 6800 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4065767632 - data[1] (unsigned int) 1120676387 - data[2] (unsigned int) 542011795 - data[3] (unsigned int) 1678707448 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Dropdown.cs - data[14] (BuildReportPackedAssetInfo) - fileID (SInt64) 15 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 6896 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1615464144 - data[1] (unsigned int) 1129072314 - data[2] (unsigned int) 420707742 - data[3] (unsigned int) 3780776420 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Audio/AudioClipProperties.cs - data[15] (BuildReportPackedAssetInfo) - fileID (SInt64) 16 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 7008 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1124755985 - data[1] (unsigned int) 3281275066 - data[2] (unsigned int) 2784652779 - data[3] (unsigned int) 3095308926 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/MaterialReferenceManager.cs - data[16] (BuildReportPackedAssetInfo) - fileID (SInt64) 17 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 7120 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2352759857 - data[1] (unsigned int) 1244276434 - data[2] (unsigned int) 2372359073 - data[3] (unsigned int) 2923334586 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/RawImage.cs - data[17] (BuildReportPackedAssetInfo) - fileID (SInt64) 18 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 7216 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1181342769 - data[1] (unsigned int) 1161022984 - data[2] (unsigned int) 518525883 - data[3] (unsigned int) 4143959274 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/FontData.cs - data[18] (BuildReportPackedAssetInfo) - fileID (SInt64) 19 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 7312 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3939242321 - data[1] (unsigned int) 1291620759 - data[2] (unsigned int) 3115517622 - data[3] (unsigned int) 1238234931 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/BaseInput.cs - data[19] (BuildReportPackedAssetInfo) - fileID (SInt64) 20 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 7424 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4143463505 - data[1] (unsigned int) 1108363546 - data[2] (unsigned int) 1870373309 - data[3] (unsigned int) 495331311 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Signals/SignalEmitter.cs - data[20] (BuildReportPackedAssetInfo) - fileID (SInt64) 21 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 7536 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1416826449 - data[1] (unsigned int) 1171865360 - data[2] (unsigned int) 1966212030 - data[3] (unsigned int) 3773183558 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Control/ControlTrack.cs - data[21] (BuildReportPackedAssetInfo) - fileID (SInt64) 22 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 7632 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1806174881 - data[1] (unsigned int) 1257244686 - data[2] (unsigned int) 1926586020 - data[3] (unsigned int) 1043481048 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/ScrollRect.cs - data[22] (BuildReportPackedAssetInfo) - fileID (SInt64) 23 - classID (Type*) 115 - packedSize (UInt64) 140 - offset (UInt64) 7728 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1328450993 - data[1] (unsigned int) 2269431463 - data[2] (unsigned int) 3986749626 - data[3] (unsigned int) 3112073319 - buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/IOnboardingSection.cs - data[23] (BuildReportPackedAssetInfo) - fileID (SInt64) 24 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 7872 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1888979921 - data[1] (unsigned int) 1330948560 - data[2] (unsigned int) 3858613900 - data[3] (unsigned int) 1607866005 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/TimeControlPlayable.cs - data[24] (BuildReportPackedAssetInfo) - fileID (SInt64) 25 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 7984 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4024409297 - data[1] (unsigned int) 1200253462 - data[2] (unsigned int) 2562125993 - data[3] (unsigned int) 3616073035 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/ILayerable.cs - data[25] (BuildReportPackedAssetInfo) - fileID (SInt64) 26 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 8080 - sourceAssetGUID (GUID) - data[0] (unsigned int) 181269473 - data[1] (unsigned int) 4115476288 - data[2] (unsigned int) 1575729806 - data[3] (unsigned int) 1572506135 - buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/NavMeshModifier.cs - data[26] (BuildReportPackedAssetInfo) - fileID (SInt64) 27 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 8192 - sourceAssetGUID (GUID) - data[0] (unsigned int) 427825889 - data[1] (unsigned int) 1158842333 - data[2] (unsigned int) 3077304492 - data[3] (unsigned int) 670493164 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/BaseInputModule.cs - data[27] (BuildReportPackedAssetInfo) - fileID (SInt64) 28 - classID (Type*) 115 - packedSize (UInt64) 124 - offset (UInt64) 8304 - sourceAssetGUID (GUID) - data[0] (unsigned int) 344870369 - data[1] (unsigned int) 1280432696 - data[2] (unsigned int) 2736399283 - data[3] (unsigned int) 2310351566 - buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/ArmModels/ArmModel.cs - data[28] (BuildReportPackedAssetInfo) - fileID (SInt64) 29 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 8432 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3504841457 - data[1] (unsigned int) 1253815985 - data[2] (unsigned int) 48319104 - data[3] (unsigned int) 3274462358 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/TimelineUndo.cs - data[29] (BuildReportPackedAssetInfo) - fileID (SInt64) 30 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 8528 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3629634050 - data[1] (unsigned int) 1166455297 - data[2] (unsigned int) 3099596698 - data[3] (unsigned int) 3259481401 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteCharacter.cs - data[30] (BuildReportPackedAssetInfo) - fileID (SInt64) 31 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 8640 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1968937474 - data[1] (unsigned int) 4254340682 - data[2] (unsigned int) 2745436923 - data[3] (unsigned int) 2858354695 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextProcessingStack.cs - data[31] (BuildReportPackedAssetInfo) - fileID (SInt64) 32 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 8752 - sourceAssetGUID (GUID) - data[0] (unsigned int) 941948674 - data[1] (unsigned int) 1141799023 - data[2] (unsigned int) 2403432320 - data[3] (unsigned int) 4090942658 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/MaterialModifiers/IMaterialModifier.cs - data[32] (BuildReportPackedAssetInfo) - fileID (SInt64) 33 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 8864 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1475633938 - data[1] (unsigned int) 1268490180 - data[2] (unsigned int) 843515559 - data[3] (unsigned int) 1710902563 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Compatibility.cs - data[33] (BuildReportPackedAssetInfo) - fileID (SInt64) 34 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 8976 - sourceAssetGUID (GUID) - data[0] (unsigned int) 402127634 - data[1] (unsigned int) 1177372882 - data[2] (unsigned int) 711900807 - data[3] (unsigned int) 2205233049 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Activation/ActivationTrack.cs - data[34] (BuildReportPackedAssetInfo) - fileID (SInt64) 35 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 9088 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3597440306 - data[1] (unsigned int) 1162609134 - data[2] (unsigned int) 2930177948 - data[3] (unsigned int) 586104392 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventInterfaces.cs - data[35] (BuildReportPackedAssetInfo) - fileID (SInt64) 36 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 9200 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2441153362 - data[1] (unsigned int) 1229332076 - data[2] (unsigned int) 3114450306 - data[3] (unsigned int) 1178584178 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/SpriteState.cs - data[36] (BuildReportPackedAssetInfo) - fileID (SInt64) 37 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 9296 - sourceAssetGUID (GUID) - data[0] (unsigned int) 783316322 - data[1] (unsigned int) 1167147258 - data[2] (unsigned int) 3391057541 - data[3] (unsigned int) 243582449 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/RaycasterManager.cs - data[37] (BuildReportPackedAssetInfo) - fileID (SInt64) 38 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 9408 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2769440882 - data[1] (unsigned int) 129272668 - data[2] (unsigned int) 906349739 - data[3] (unsigned int) 423521970 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Settings.cs - data[38] (BuildReportPackedAssetInfo) - fileID (SInt64) 39 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 9504 - sourceAssetGUID (GUID) - data[0] (unsigned int) 565443954 - data[1] (unsigned int) 1202769983 - data[2] (unsigned int) 2476743578 - data[3] (unsigned int) 4280306822 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontFeaturesCommon.cs - data[39] (BuildReportPackedAssetInfo) - fileID (SInt64) 40 - classID (Type*) 115 - packedSize (UInt64) 140 - offset (UInt64) 9616 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3613197714 - data[1] (unsigned int) 1307446522 - data[2] (unsigned int) 2386931604 - data[3] (unsigned int) 3326184632 - buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/ArmModels/SwingArmModel.cs - data[40] (BuildReportPackedAssetInfo) - fileID (SInt64) 41 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 9760 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3628556706 - data[1] (unsigned int) 1320031817 - data[2] (unsigned int) 2614437798 - data[3] (unsigned int) 154523255 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/MarkerTrack.cs - data[41] (BuildReportPackedAssetInfo) - fileID (SInt64) 42 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 9856 - sourceAssetGUID (GUID) - data[0] (unsigned int) 444322978 - data[1] (unsigned int) 1132624193 - data[2] (unsigned int) 3071364748 - data[3] (unsigned int) 984780062 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Scrollbar.cs - data[42] (BuildReportPackedAssetInfo) - fileID (SInt64) 43 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 9952 - sourceAssetGUID (GUID) - data[0] (unsigned int) 477861074 - data[1] (unsigned int) 1192111563 - data[2] (unsigned int) 450119833 - data[3] (unsigned int) 3627084658 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/TouchInputModule.cs - data[43] (BuildReportPackedAssetInfo) - fileID (SInt64) 44 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 10064 - sourceAssetGUID (GUID) - data[0] (unsigned int) 559680210 - data[1] (unsigned int) 1316262431 - data[2] (unsigned int) 1637056408 - data[3] (unsigned int) 2893887353 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_InputField.cs - data[44] (BuildReportPackedAssetInfo) - fileID (SInt64) 45 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 10160 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4230937330 - data[1] (unsigned int) 1201074542 - data[2] (unsigned int) 3256460696 - data[3] (unsigned int) 529421683 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/ToggleGroup.cs - data[45] (BuildReportPackedAssetInfo) - fileID (SInt64) 46 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 10256 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2748925443 - data[1] (unsigned int) 1285139193 - data[2] (unsigned int) 1712437160 - data[3] (unsigned int) 170899083 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/HorizontalLayoutGroup.cs - data[46] (BuildReportPackedAssetInfo) - fileID (SInt64) 47 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 10384 - sourceAssetGUID (GUID) - data[0] (unsigned int) 747423235 - data[1] (unsigned int) 1092081995 - data[2] (unsigned int) 1931885230 - data[3] (unsigned int) 1645399912 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/LayoutElement.cs - data[47] (BuildReportPackedAssetInfo) - fileID (SInt64) 48 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 10496 - sourceAssetGUID (GUID) - data[0] (unsigned int) 410905347 - data[1] (unsigned int) 2838765646 - data[2] (unsigned int) 870640779 - data[3] (unsigned int) 1360529269 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Style.cs - data[48] (BuildReportPackedAssetInfo) - fileID (SInt64) 49 - classID (Type*) 115 - packedSize (UInt64) 76 - offset (UInt64) 10592 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1095309843 - data[1] (unsigned int) 1319493964 - data[2] (unsigned int) 872033962 - data[3] (unsigned int) 1864466159 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Mask.cs - data[49] (BuildReportPackedAssetInfo) - fileID (SInt64) 50 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 10672 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2569613859 - data[1] (unsigned int) 852774581 - data[2] (unsigned int) 3754331194 - data[3] (unsigned int) 4164481657 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_DefaultControls.cs - data[50] (BuildReportPackedAssetInfo) - fileID (SInt64) 51 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 10784 - sourceAssetGUID (GUID) - data[0] (unsigned int) 701387811 - data[1] (unsigned int) 1095538023 - data[2] (unsigned int) 495930528 - data[3] (unsigned int) 2177642567 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/ContentSizeFitter.cs - data[51] (BuildReportPackedAssetInfo) - fileID (SInt64) 52 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 10896 - sourceAssetGUID (GUID) - data[0] (unsigned int) 768947491 - data[1] (unsigned int) 1309830217 - data[2] (unsigned int) 1135343506 - data[3] (unsigned int) 633451803 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/Extrapolation.cs - data[52] (BuildReportPackedAssetInfo) - fileID (SInt64) 53 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 11008 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2281721123 - data[1] (unsigned int) 1975787882 - data[2] (unsigned int) 2185981352 - data[3] (unsigned int) 3806758397 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TextContainer.cs - data[53] (BuildReportPackedAssetInfo) - fileID (SInt64) 54 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 11104 - sourceAssetGUID (GUID) - data[0] (unsigned int) 930947379 - data[1] (unsigned int) 1261279385 - data[2] (unsigned int) 2436293022 - data[3] (unsigned int) 1742117534 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/RectMask2D.cs - data[54] (BuildReportPackedAssetInfo) - fileID (SInt64) 55 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 11200 - sourceAssetGUID (GUID) - data[0] (unsigned int) 285548099 - data[1] (unsigned int) 3391406530 - data[2] (unsigned int) 632320312 - data[3] (unsigned int) 574523789 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_ScrollbarEventHandler.cs - data[55] (BuildReportPackedAssetInfo) - fileID (SInt64) 56 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 11328 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3465348435 - data[1] (unsigned int) 1136300790 - data[2] (unsigned int) 2850707853 - data[3] (unsigned int) 738614580 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/RaycastResult.cs - data[56] (BuildReportPackedAssetInfo) - fileID (SInt64) 57 - classID (Type*) 115 - packedSize (UInt64) 124 - offset (UInt64) 11440 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1557503571 - data[1] (unsigned int) 2202448639 - data[2] (unsigned int) 2816280704 - data[3] (unsigned int) 1954687324 - buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/NavMeshModifierVolume.cs - data[57] (BuildReportPackedAssetInfo) - fileID (SInt64) 58 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 11568 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1084479587 - data[1] (unsigned int) 1091075721 - data[2] (unsigned int) 1520989613 - data[3] (unsigned int) 2037572943 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/ILayoutElement.cs - data[58] (BuildReportPackedAssetInfo) - fileID (SInt64) 59 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 11680 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3384193395 - data[1] (unsigned int) 1191562664 - data[2] (unsigned int) 1785130149 - data[3] (unsigned int) 407334879 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Culling/IClipRegion.cs - data[59] (BuildReportPackedAssetInfo) - fileID (SInt64) 60 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 11776 - sourceAssetGUID (GUID) - data[0] (unsigned int) 375700115 - data[1] (unsigned int) 1273530662 - data[2] (unsigned int) 2671002511 - data[3] (unsigned int) 2355084049 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/FontUpdateTracker.cs - data[60] (BuildReportPackedAssetInfo) - fileID (SInt64) 61 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 11888 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2518900131 - data[1] (unsigned int) 1208034428 - data[2] (unsigned int) 1083143866 - data[3] (unsigned int) 239702421 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TrackAsset.cs - data[61] (BuildReportPackedAssetInfo) - fileID (SInt64) 62 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 11984 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1753329075 - data[1] (unsigned int) 2699360351 - data[2] (unsigned int) 4796699 - data[3] (unsigned int) 3996911131 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Asset.cs - data[62] (BuildReportPackedAssetInfo) - fileID (SInt64) 63 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 12080 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3242301923 - data[1] (unsigned int) 1224654173 - data[2] (unsigned int) 3145938084 - data[3] (unsigned int) 2561685880 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelineAttributes.cs - data[63] (BuildReportPackedAssetInfo) - fileID (SInt64) 64 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 12208 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3610360836 - data[1] (unsigned int) 1315015136 - data[2] (unsigned int) 3725857960 - data[3] (unsigned int) 3672046129 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/TimelineCreateUtilities.cs - data[64] (BuildReportPackedAssetInfo) - fileID (SInt64) 65 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 12336 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1130370596 - data[1] (unsigned int) 1184886953 - data[2] (unsigned int) 2266490031 - data[3] (unsigned int) 1598700828 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/Raycasters/BaseRaycaster.cs - data[65] (BuildReportPackedAssetInfo) - fileID (SInt64) 66 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 12448 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1176130356 - data[1] (unsigned int) 1075013563 - data[2] (unsigned int) 556075148 - data[3] (unsigned int) 4120367916 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/MarkerList.cs - data[66] (BuildReportPackedAssetInfo) - fileID (SInt64) 67 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 12544 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3356543284 - data[1] (unsigned int) 1240012367 - data[2] (unsigned int) 17996445 - data[3] (unsigned int) 2283446508 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/PrefabControlPlayable.cs - data[67] (BuildReportPackedAssetInfo) - fileID (SInt64) 68 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 12672 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3486369092 - data[1] (unsigned int) 1236002631 - data[2] (unsigned int) 1601812610 - data[3] (unsigned int) 3207244136 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/GraphicRebuildTracker.cs - data[68] (BuildReportPackedAssetInfo) - fileID (SInt64) 69 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 12800 - sourceAssetGUID (GUID) - data[0] (unsigned int) 395278212 - data[1] (unsigned int) 1189426707 - data[2] (unsigned int) 3830222720 - data[3] (unsigned int) 3784796373 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_ResourcesManager.cs - data[69] (BuildReportPackedAssetInfo) - fileID (SInt64) 70 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 12912 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1319327876 - data[1] (unsigned int) 1183035224 - data[2] (unsigned int) 480330626 - data[3] (unsigned int) 122823086 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Control/ControlPlayableAsset.cs - data[70] (BuildReportPackedAssetInfo) - fileID (SInt64) 71 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 13024 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1785420964 - data[1] (unsigned int) 1230760613 - data[2] (unsigned int) 1752907399 - data[3] (unsigned int) 1126145542 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Character.cs - data[71] (BuildReportPackedAssetInfo) - fileID (SInt64) 72 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 13120 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4092882596 - data[1] (unsigned int) 1887698983 - data[2] (unsigned int) 2677120922 - data[3] (unsigned int) 3171919660 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextInfo.cs - data[72] (BuildReportPackedAssetInfo) - fileID (SInt64) 73 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 13216 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2895518660 - data[1] (unsigned int) 1339942762 - data[2] (unsigned int) 3750998925 - data[3] (unsigned int) 1419407760 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/IMarker.cs - data[73] (BuildReportPackedAssetInfo) - fileID (SInt64) 74 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 13312 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2317062884 - data[1] (unsigned int) 1152703486 - data[2] (unsigned int) 1634988987 - data[3] (unsigned int) 4285592446 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Button.cs - data[74] (BuildReportPackedAssetInfo) - fileID (SInt64) 75 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 13408 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2020262132 - data[1] (unsigned int) 72645284 - data[2] (unsigned int) 1593103291 - data[3] (unsigned int) 3434516234 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextUtilities.cs - data[75] (BuildReportPackedAssetInfo) - fileID (SInt64) 76 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 13520 - sourceAssetGUID (GUID) - data[0] (unsigned int) 115147252 - data[1] (unsigned int) 1074186070 - data[2] (unsigned int) 2805135237 - data[3] (unsigned int) 1317997031 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Audio/AudioPlayableAsset.cs - data[76] (BuildReportPackedAssetInfo) - fileID (SInt64) 77 - classID (Type*) 115 - packedSize (UInt64) 124 - offset (UInt64) 13632 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4106302196 - data[1] (unsigned int) 1228892283 - data[2] (unsigned int) 2332669606 - data[3] (unsigned int) 2003324008 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/StandaloneInputModule.cs - data[77] (BuildReportPackedAssetInfo) - fileID (SInt64) 78 - classID (Type*) 115 - packedSize (UInt64) 128 - offset (UInt64) 13760 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2579245061 - data[1] (unsigned int) 1220124554 - data[2] (unsigned int) 1267586189 - data[3] (unsigned int) 3919786588 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/INotificationOptionProvider.cs - data[78] (BuildReportPackedAssetInfo) - fileID (SInt64) 79 - classID (Type*) 115 - packedSize (UInt64) 136 - offset (UInt64) 13888 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4194262277 - data[1] (unsigned int) 2000992846 - data[2] (unsigned int) 3628510843 - data[3] (unsigned int) 496908314 - buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/StyleConstants.cs - data[79] (BuildReportPackedAssetInfo) - fileID (SInt64) 80 - classID (Type*) 115 - packedSize (UInt64) 80 - offset (UInt64) 14032 - sourceAssetGUID (GUID) - data[0] (unsigned int) 408892437 - data[1] (unsigned int) 1401161328 - data[2] (unsigned int) 2951061946 - data[3] (unsigned int) 3749808338 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Text.cs - data[80] (BuildReportPackedAssetInfo) - fileID (SInt64) 81 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 14112 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1083986245 - data[1] (unsigned int) 1312603980 - data[2] (unsigned int) 749949577 - data[3] (unsigned int) 3698570856 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/ITimeControl.cs - data[81] (BuildReportPackedAssetInfo) - fileID (SInt64) 82 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 14208 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3997655877 - data[1] (unsigned int) 1142646652 - data[2] (unsigned int) 969052578 - data[3] (unsigned int) 1000195810 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextElement.cs - data[82] (BuildReportPackedAssetInfo) - fileID (SInt64) 83 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 14304 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3874565445 - data[1] (unsigned int) 1952756716 - data[2] (unsigned int) 4163092729 - data[3] (unsigned int) 242222792 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_ColorGradient.cs - data[83] (BuildReportPackedAssetInfo) - fileID (SInt64) 84 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 14416 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2781242981 - data[1] (unsigned int) 1173451012 - data[2] (unsigned int) 1632490375 - data[3] (unsigned int) 4213503050 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/Raycasters/Physics2DRaycaster.cs - data[84] (BuildReportPackedAssetInfo) - fileID (SInt64) 85 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 14544 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2520878997 - data[1] (unsigned int) 1116733315 - data[2] (unsigned int) 662566332 - data[3] (unsigned int) 1467317091 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/VerticalLayoutGroup.cs - data[85] (BuildReportPackedAssetInfo) - fileID (SInt64) 86 - classID (Type*) 115 - packedSize (UInt64) 132 - offset (UInt64) 14656 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1137287845 - data[1] (unsigned int) 1331234045 - data[2] (unsigned int) 2676672951 - data[3] (unsigned int) 3052761431 - buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/TrackedPoseDriver/TrackedPoseDriver.cs - data[86] (BuildReportPackedAssetInfo) - fileID (SInt64) 87 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 14800 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1973863861 - data[1] (unsigned int) 1278955622 - data[2] (unsigned int) 388856746 - data[3] (unsigned int) 1928693561 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteGlyph.cs - data[87] (BuildReportPackedAssetInfo) - fileID (SInt64) 88 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 14896 - sourceAssetGUID (GUID) - data[0] (unsigned int) 929012453 - data[1] (unsigned int) 1241549645 - data[2] (unsigned int) 439933369 - data[3] (unsigned int) 2292236655 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontFeatureTable.cs - data[88] (BuildReportPackedAssetInfo) - fileID (SInt64) 89 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 15008 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3044797413 - data[1] (unsigned int) 1076126109 - data[2] (unsigned int) 477051832 - data[3] (unsigned int) 1726871865 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/MultipleDisplayUtilities.cs - data[89] (BuildReportPackedAssetInfo) - fileID (SInt64) 90 - classID (Type*) 115 - packedSize (UInt64) 76 - offset (UInt64) 15136 - sourceAssetGUID (GUID) - data[0] (unsigned int) 437266421 - data[1] (unsigned int) 1291803090 - data[2] (unsigned int) 1507411088 - data[3] (unsigned int) 591381295 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Text.cs - data[90] (BuildReportPackedAssetInfo) - fileID (SInt64) 91 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 15216 - sourceAssetGUID (GUID) - data[0] (unsigned int) 34613782 - data[1] (unsigned int) 1211485660 - data[2] (unsigned int) 3473001401 - data[3] (unsigned int) 3824153864 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/IMaskable.cs - data[91] (BuildReportPackedAssetInfo) - fileID (SInt64) 92 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 15312 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2635681046 - data[1] (unsigned int) 1277766121 - data[2] (unsigned int) 282579338 - data[3] (unsigned int) 2920838266 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Navigation.cs - data[92] (BuildReportPackedAssetInfo) - fileID (SInt64) 93 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 15408 - sourceAssetGUID (GUID) - data[0] (unsigned int) 446153510 - data[1] (unsigned int) 1229664542 - data[2] (unsigned int) 2365317025 - data[3] (unsigned int) 3750662616 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/ExecuteEvents.cs - data[93] (BuildReportPackedAssetInfo) - fileID (SInt64) 94 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 15520 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2045666870 - data[1] (unsigned int) 1142184815 - data[2] (unsigned int) 3089126681 - data[3] (unsigned int) 2773710921 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteAnimator.cs - data[94] (BuildReportPackedAssetInfo) - fileID (SInt64) 95 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 15632 - sourceAssetGUID (GUID) - data[0] (unsigned int) 468830294 - data[1] (unsigned int) 2828304020 - data[2] (unsigned int) 202057482 - data[3] (unsigned int) 254933823 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_CoroutineTween.cs - data[95] (BuildReportPackedAssetInfo) - fileID (SInt64) 96 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 15728 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1816805206 - data[1] (unsigned int) 1249023207 - data[2] (unsigned int) 3056630663 - data[3] (unsigned int) 1040896490 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelineClip.cs - data[96] (BuildReportPackedAssetInfo) - fileID (SInt64) 97 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 15824 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1738123110 - data[1] (unsigned int) 1212546482 - data[2] (unsigned int) 1965075135 - data[3] (unsigned int) 778649075 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/ClipCaps.cs - data[97] (BuildReportPackedAssetInfo) - fileID (SInt64) 98 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 15936 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3750439782 - data[1] (unsigned int) 1286912465 - data[2] (unsigned int) 863024796 - data[3] (unsigned int) 1059229093 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/IPropertyCollector.cs - data[98] (BuildReportPackedAssetInfo) - fileID (SInt64) 99 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 16048 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4176067958 - data[1] (unsigned int) 1285464800 - data[2] (unsigned int) 1798184112 - data[3] (unsigned int) 1265247540 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Slider.cs - data[99] (BuildReportPackedAssetInfo) - fileID (SInt64) 100 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 16144 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3011853942 - data[1] (unsigned int) 1225355545 - data[2] (unsigned int) 2175190160 - data[3] (unsigned int) 639775416 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Culling/Clipping.cs - data[100] (BuildReportPackedAssetInfo) - fileID (SInt64) 101 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 16240 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3163279766 - data[1] (unsigned int) 2787396615 - data[2] (unsigned int) 1686208168 - data[3] (unsigned int) 4114813637 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_UpdateManager.cs - data[101] (BuildReportPackedAssetInfo) - fileID (SInt64) 102 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 16352 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2136337046 - data[1] (unsigned int) 1210778758 - data[2] (unsigned int) 3217447609 - data[3] (unsigned int) 265755189 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/StencilMaterial.cs - data[102] (BuildReportPackedAssetInfo) - fileID (SInt64) 103 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 16464 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3111730838 - data[1] (unsigned int) 1250857479 - data[2] (unsigned int) 2070532781 - data[3] (unsigned int) 2747640641 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/GraphicRegistry.cs - data[103] (BuildReportPackedAssetInfo) - fileID (SInt64) 104 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 16576 - sourceAssetGUID (GUID) - data[0] (unsigned int) 432075942 - data[1] (unsigned int) 1089267754 - data[2] (unsigned int) 3489839249 - data[3] (unsigned int) 223614301 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/AssetUpgrade/ClipUpgrade.cs - data[104] (BuildReportPackedAssetInfo) - fileID (SInt64) 105 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 16672 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3896458662 - data[1] (unsigned int) 1347190520 - data[2] (unsigned int) 2172407208 - data[3] (unsigned int) 3919869835 - buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/HelpUrls.cs - data[105] (BuildReportPackedAssetInfo) - fileID (SInt64) 106 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 16768 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3156438438 - data[1] (unsigned int) 1131378892 - data[2] (unsigned int) 1611041693 - data[3] (unsigned int) 1605238748 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextParsingUtilities.cs - data[106] (BuildReportPackedAssetInfo) - fileID (SInt64) 107 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 16880 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3425031110 - data[1] (unsigned int) 1232954565 - data[2] (unsigned int) 316680614 - data[3] (unsigned int) 3896504585 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Attributes/TrackColorAttribute.cs - data[107] (BuildReportPackedAssetInfo) - fileID (SInt64) 108 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 16992 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3408910806 - data[1] (unsigned int) 3608463505 - data[2] (unsigned int) 141754379 - data[3] (unsigned int) 3375466067 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_MaterialManager.cs - data[108] (BuildReportPackedAssetInfo) - fileID (SInt64) 109 - classID (Type*) 115 - packedSize (UInt64) 76 - offset (UInt64) 17104 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4153806294 - data[1] (unsigned int) 1114285196 - data[2] (unsigned int) 2777906062 - data[3] (unsigned int) 3198737228 - buildTimeAssetPath (string) Assets/AssetDuplication/ImageList.cs - data[109] (BuildReportPackedAssetInfo) - fileID (SInt64) 110 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 17184 - sourceAssetGUID (GUID) - data[0] (unsigned int) 215334630 - data[1] (unsigned int) 1263525730 - data[2] (unsigned int) 245877640 - data[3] (unsigned int) 2440800305 - buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/NavMeshLink.cs - data[110] (BuildReportPackedAssetInfo) - fileID (SInt64) 111 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 17296 - sourceAssetGUID (GUID) - data[0] (unsigned int) 436804103 - data[1] (unsigned int) 1310539835 - data[2] (unsigned int) 1408915859 - data[3] (unsigned int) 1829972237 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/RuntimeClip.cs - data[111] (BuildReportPackedAssetInfo) - fileID (SInt64) 112 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 17392 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3142950663 - data[1] (unsigned int) 1229615947 - data[2] (unsigned int) 3563055240 - data[3] (unsigned int) 1196145273 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/RuntimeClipBase.cs - data[112] (BuildReportPackedAssetInfo) - fileID (SInt64) 113 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 17504 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2674300951 - data[1] (unsigned int) 1174780934 - data[2] (unsigned int) 3851511955 - data[3] (unsigned int) 2889195253 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/BaseMeshEffect.cs - data[113] (BuildReportPackedAssetInfo) - fileID (SInt64) 114 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 17616 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2752846871 - data[1] (unsigned int) 3789827510 - data[2] (unsigned int) 3955147400 - data[3] (unsigned int) 1089224849 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontAsset.cs - data[114] (BuildReportPackedAssetInfo) - fileID (SInt64) 115 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 17712 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2204596023 - data[1] (unsigned int) 672459123 - data[2] (unsigned int) 1870162858 - data[3] (unsigned int) 168983584 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelinePlayable_Animation.cs - data[115] (BuildReportPackedAssetInfo) - fileID (SInt64) 116 - classID (Type*) 115 - packedSize (UInt64) 136 - offset (UInt64) 17840 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1239672151 - data[1] (unsigned int) 1296594930 - data[2] (unsigned int) 1253956485 - data[3] (unsigned int) 666569746 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/AnimationPreviewUpdateCallback.cs - data[116] (BuildReportPackedAssetInfo) - fileID (SInt64) 117 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 17984 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3430284631 - data[1] (unsigned int) 1187270171 - data[2] (unsigned int) 1922643328 - data[3] (unsigned int) 2887667783 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventData/PointerEventData.cs - data[117] (BuildReportPackedAssetInfo) - fileID (SInt64) 118 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 18096 - sourceAssetGUID (GUID) - data[0] (unsigned int) 603679591 - data[1] (unsigned int) 1134546794 - data[2] (unsigned int) 2455538602 - data[3] (unsigned int) 416075227 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/RuntimeElement.cs - data[118] (BuildReportPackedAssetInfo) - fileID (SInt64) 119 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 18208 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1311325287 - data[1] (unsigned int) 1284048306 - data[2] (unsigned int) 4257634437 - data[3] (unsigned int) 447392998 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventSystem.cs - data[119] (BuildReportPackedAssetInfo) - fileID (SInt64) 120 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 18320 - sourceAssetGUID (GUID) - data[0] (unsigned int) 690386039 - data[1] (unsigned int) 1351921567 - data[2] (unsigned int) 342784122 - data[3] (unsigned int) 3058185607 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMPro_ExtensionMethods.cs - data[120] (BuildReportPackedAssetInfo) - fileID (SInt64) 121 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 18432 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3075287927 - data[1] (unsigned int) 1332165036 - data[2] (unsigned int) 2157374090 - data[3] (unsigned int) 1972733092 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/FontFeatureCommonGSUB.cs - data[121] (BuildReportPackedAssetInfo) - fileID (SInt64) 122 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 18544 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3532914583 - data[1] (unsigned int) 2107960753 - data[2] (unsigned int) 1248035752 - data[3] (unsigned int) 3532851274 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_InputValidator.cs - data[122] (BuildReportPackedAssetInfo) - fileID (SInt64) 123 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 18656 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4269744295 - data[1] (unsigned int) 3019170780 - data[2] (unsigned int) 1855389866 - data[3] (unsigned int) 2109594370 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/TimelineClipExtensions.cs - data[123] (BuildReportPackedAssetInfo) - fileID (SInt64) 124 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 18784 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3239880103 - data[1] (unsigned int) 2169399196 - data[2] (unsigned int) 1662197134 - data[3] (unsigned int) 636610315 - buildTimeAssetPath (string) Packages/com.unity.ai.navigation/Runtime/NavMeshSurface.cs - data[124] (BuildReportPackedAssetInfo) - fileID (SInt64) 125 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 18896 - sourceAssetGUID (GUID) - data[0] (unsigned int) 776771495 - data[1] (unsigned int) 1186256083 - data[2] (unsigned int) 3920583419 - data[3] (unsigned int) 105518950 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/UIElements/PanelRaycaster.cs - data[125] (BuildReportPackedAssetInfo) - fileID (SInt64) 126 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 19008 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1428261287 - data[1] (unsigned int) 1263632160 - data[2] (unsigned int) 2009056139 - data[3] (unsigned int) 1666073419 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Selectable.cs - data[126] (BuildReportPackedAssetInfo) - fileID (SInt64) 127 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 19104 - sourceAssetGUID (GUID) - data[0] (unsigned int) 120801207 - data[1] (unsigned int) 753198026 - data[2] (unsigned int) 1173906970 - data[3] (unsigned int) 2835253845 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Dropdown.cs - data[127] (BuildReportPackedAssetInfo) - fileID (SInt64) 128 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 19200 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1742118327 - data[1] (unsigned int) 1176834327 - data[2] (unsigned int) 3569760168 - data[3] (unsigned int) 794201474 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/MaskUtilities.cs - data[128] (BuildReportPackedAssetInfo) - fileID (SInt64) 129 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 19312 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2493812407 - data[1] (unsigned int) 1316864699 - data[2] (unsigned int) 3079724698 - data[3] (unsigned int) 222917162 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Animation/CoroutineTween.cs - data[129] (BuildReportPackedAssetInfo) - fileID (SInt64) 130 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 19424 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3252689672 - data[1] (unsigned int) 1151927685 - data[2] (unsigned int) 3466970025 - data[3] (unsigned int) 1430574860 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelinePlayable.cs - data[130] (BuildReportPackedAssetInfo) - fileID (SInt64) 131 - classID (Type*) 115 - packedSize (UInt64) 76 - offset (UInt64) 19536 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3411478568 - data[1] (unsigned int) 1223503669 - data[2] (unsigned int) 2202641033 - data[3] (unsigned int) 3082364167 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Misc.cs - data[131] (BuildReportPackedAssetInfo) - fileID (SInt64) 132 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 19616 - sourceAssetGUID (GUID) - data[0] (unsigned int) 938736424 - data[1] (unsigned int) 1320210135 - data[2] (unsigned int) 2442659491 - data[3] (unsigned int) 2024639109 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/LayoutUtility.cs - data[132] (BuildReportPackedAssetInfo) - fileID (SInt64) 133 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 19728 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4280933416 - data[1] (unsigned int) 1194866988 - data[2] (unsigned int) 3341493138 - data[3] (unsigned int) 4035723594 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Scripting/PlayableTrack.cs - data[133] (BuildReportPackedAssetInfo) - fileID (SInt64) 134 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 19840 - sourceAssetGUID (GUID) - data[0] (unsigned int) 716734520 - data[1] (unsigned int) 1238090289 - data[2] (unsigned int) 1812645808 - data[3] (unsigned int) 3501329047 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/ColorBlock.cs - data[134] (BuildReportPackedAssetInfo) - fileID (SInt64) 135 - classID (Type*) 115 - packedSize (UInt64) 184 - offset (UInt64) 19936 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1065497400 - data[1] (unsigned int) 3427016651 - data[2] (unsigned int) 2195889993 - data[3] (unsigned int) 1917544678 - buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/IOnboardingSectionAnalyticsProvider.cs - data[135] (BuildReportPackedAssetInfo) - fileID (SInt64) 136 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 20128 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1387436616 - data[1] (unsigned int) 2610221967 - data[2] (unsigned int) 47329739 - data[3] (unsigned int) 404779958 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteAsset.cs - data[136] (BuildReportPackedAssetInfo) - fileID (SInt64) 137 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 20224 - sourceAssetGUID (GUID) - data[0] (unsigned int) 977026904 - data[1] (unsigned int) 1304634924 - data[2] (unsigned int) 186016173 - data[3] (unsigned int) 803400052 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/IMeshModifier.cs - data[137] (BuildReportPackedAssetInfo) - fileID (SInt64) 138 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 20336 - sourceAssetGUID (GUID) - data[0] (unsigned int) 887101288 - data[1] (unsigned int) 1332700397 - data[2] (unsigned int) 1586265259 - data[3] (unsigned int) 2572824960 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/AspectRatioFitter.cs - data[138] (BuildReportPackedAssetInfo) - fileID (SInt64) 139 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 20448 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3723030904 - data[1] (unsigned int) 4172582501 - data[2] (unsigned int) 3223017771 - data[3] (unsigned int) 1677229116 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/FastAction.cs - data[139] (BuildReportPackedAssetInfo) - fileID (SInt64) 140 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 20544 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3199318648 - data[1] (unsigned int) 2400514846 - data[2] (unsigned int) 2121418201 - data[3] (unsigned int) 2245278765 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextElement_Legacy.cs - data[140] (BuildReportPackedAssetInfo) - fileID (SInt64) 141 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 20656 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1609644952 - data[1] (unsigned int) 1273340076 - data[2] (unsigned int) 3580667799 - data[3] (unsigned int) 1888045364 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/ICurvesOwner.cs - data[141] (BuildReportPackedAssetInfo) - fileID (SInt64) 142 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 20752 - sourceAssetGUID (GUID) - data[0] (unsigned int) 816335768 - data[1] (unsigned int) 1239633775 - data[2] (unsigned int) 764200846 - data[3] (unsigned int) 3570652161 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Marker.cs - data[142] (BuildReportPackedAssetInfo) - fileID (SInt64) 143 - classID (Type*) 115 - packedSize (UInt64) 124 - offset (UInt64) 20848 - sourceAssetGUID (GUID) - data[0] (unsigned int) 865954712 - data[1] (unsigned int) 2429851982 - data[2] (unsigned int) 3628822280 - data[3] (unsigned int) 3380054828 - buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/AnswerData.cs - data[143] (BuildReportPackedAssetInfo) - fileID (SInt64) 144 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 20976 - sourceAssetGUID (GUID) - data[0] (unsigned int) 313529512 - data[1] (unsigned int) 4064579619 - data[2] (unsigned int) 2543232283 - data[3] (unsigned int) 1510220025 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/UIElements/PanelEventHandler.cs - data[144] (BuildReportPackedAssetInfo) - fileID (SInt64) 145 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 21104 - sourceAssetGUID (GUID) - data[0] (unsigned int) 626616488 - data[1] (unsigned int) 1310773489 - data[2] (unsigned int) 4009318041 - data[3] (unsigned int) 744661504 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/GridLayoutGroup.cs - data[145] (BuildReportPackedAssetInfo) - fileID (SInt64) 146 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 21216 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3264684728 - data[1] (unsigned int) 1145075123 - data[2] (unsigned int) 2277278142 - data[3] (unsigned int) 1201928748 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Audio/AudioTrack.cs - data[146] (BuildReportPackedAssetInfo) - fileID (SInt64) 147 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 21312 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2862476984 - data[1] (unsigned int) 1297110139 - data[2] (unsigned int) 4025183880 - data[3] (unsigned int) 4268702789 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/DiscreteTime.cs - data[147] (BuildReportPackedAssetInfo) - fileID (SInt64) 148 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 21408 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2845591544 - data[1] (unsigned int) 1270113366 - data[2] (unsigned int) 331138699 - data[3] (unsigned int) 4154826468 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/IntervalTree.cs - data[148] (BuildReportPackedAssetInfo) - fileID (SInt64) 149 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 21504 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4131411977 - data[1] (unsigned int) 1146711840 - data[2] (unsigned int) 1625258430 - data[3] (unsigned int) 788021355 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Toggle.cs - data[149] (BuildReportPackedAssetInfo) - fileID (SInt64) 150 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 21600 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1455550217 - data[1] (unsigned int) 1286847342 - data[2] (unsigned int) 4247158942 - data[3] (unsigned int) 3910629671 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_CharacterInfo.cs - data[150] (BuildReportPackedAssetInfo) - fileID (SInt64) 151 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 21712 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1415139097 - data[1] (unsigned int) 1329850041 - data[2] (unsigned int) 1931594385 - data[3] (unsigned int) 461995268 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventData/BaseEventData.cs - data[151] (BuildReportPackedAssetInfo) - fileID (SInt64) 152 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 21824 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3848067113 - data[1] (unsigned int) 1323550914 - data[2] (unsigned int) 3602070957 - data[3] (unsigned int) 2926297445 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/IGraphicEnabledDisabled.cs - data[152] (BuildReportPackedAssetInfo) - fileID (SInt64) 153 - classID (Type*) 115 - packedSize (UInt64) 148 - offset (UInt64) 21952 - sourceAssetGUID (GUID) - data[0] (unsigned int) 964858937 - data[1] (unsigned int) 1182508155 - data[2] (unsigned int) 2420757387 - data[3] (unsigned int) 817453665 - buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/ArmModels/TransitionArmModel.cs - data[153] (BuildReportPackedAssetInfo) - fileID (SInt64) 154 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 22112 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3868005465 - data[1] (unsigned int) 3519319538 - data[2] (unsigned int) 266209689 - data[3] (unsigned int) 3125269080 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TextMeshPro.cs - data[154] (BuildReportPackedAssetInfo) - fileID (SInt64) 155 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 22208 - sourceAssetGUID (GUID) - data[0] (unsigned int) 529573993 - data[1] (unsigned int) 54818101 - data[2] (unsigned int) 2661621354 - data[3] (unsigned int) 2255831383 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_Sprite.cs - data[155] (BuildReportPackedAssetInfo) - fileID (SInt64) 156 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 22304 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1114676841 - data[1] (unsigned int) 370428469 - data[2] (unsigned int) 2269922680 - data[3] (unsigned int) 2181281111 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMPro_EventManager.cs - data[156] (BuildReportPackedAssetInfo) - fileID (SInt64) 157 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 22416 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1473029753 - data[1] (unsigned int) 1230961403 - data[2] (unsigned int) 2990608572 - data[3] (unsigned int) 3950285098 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/MaskableGraphic.cs - data[157] (BuildReportPackedAssetInfo) - fileID (SInt64) 158 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 22528 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1003201977 - data[1] (unsigned int) 1170262712 - data[2] (unsigned int) 595436695 - data[3] (unsigned int) 1053863738 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/InfiniteRuntimeClip.cs - data[158] (BuildReportPackedAssetInfo) - fileID (SInt64) 159 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 22640 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1650590201 - data[1] (unsigned int) 1171515637 - data[2] (unsigned int) 2163861183 - data[3] (unsigned int) 4226626754 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Culling/ClipperRegistry.cs - data[159] (BuildReportPackedAssetInfo) - fileID (SInt64) 160 - classID (Type*) 115 - packedSize (UInt64) 132 - offset (UInt64) 22752 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3115549738 - data[1] (unsigned int) 1151281277 - data[2] (unsigned int) 1797756329 - data[3] (unsigned int) 2585122737 - buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/CameraOffset.cs - data[160] (BuildReportPackedAssetInfo) - fileID (SInt64) 161 - classID (Type*) 115 - packedSize (UInt64) 136 - offset (UInt64) 22896 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3896218186 - data[1] (unsigned int) 1204309406 - data[2] (unsigned int) 2960690304 - data[3] (unsigned int) 1124467962 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/AnimationOutputWeightProcessor.cs - data[161] (BuildReportPackedAssetInfo) - fileID (SInt64) 162 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 23040 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4055612234 - data[1] (unsigned int) 1202906334 - data[2] (unsigned int) 825883268 - data[3] (unsigned int) 1666190701 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/FontFeatureCommonGPOS.cs - data[162] (BuildReportPackedAssetInfo) - fileID (SInt64) 163 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 23152 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1266414938 - data[1] (unsigned int) 891593065 - data[2] (unsigned int) 4068613400 - data[3] (unsigned int) 1721713228 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_UpdateRegistery.cs - data[163] (BuildReportPackedAssetInfo) - fileID (SInt64) 164 - classID (Type*) 115 - packedSize (UInt64) 132 - offset (UInt64) 23264 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1581329498 - data[1] (unsigned int) 1117365832 - data[2] (unsigned int) 1942504370 - data[3] (unsigned int) 2515712334 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/HorizontalOrVerticalLayoutGroup.cs - data[164] (BuildReportPackedAssetInfo) - fileID (SInt64) 165 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 23408 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1239954026 - data[1] (unsigned int) 1081932581 - data[2] (unsigned int) 1983902351 - data[3] (unsigned int) 1419898649 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Graphic.cs - data[165] (BuildReportPackedAssetInfo) - fileID (SInt64) 166 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 23504 - sourceAssetGUID (GUID) - data[0] (unsigned int) 840810106 - data[1] (unsigned int) 1331509049 - data[2] (unsigned int) 1072000929 - data[3] (unsigned int) 1414493906 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Signals/CustomSignalEventDrawer.cs - data[166] (BuildReportPackedAssetInfo) - fileID (SInt64) 167 - classID (Type*) 115 - packedSize (UInt64) 136 - offset (UInt64) 23632 - sourceAssetGUID (GUID) - data[0] (unsigned int) 759916970 - data[1] (unsigned int) 1335577429 - data[2] (unsigned int) 3967272109 - data[3] (unsigned int) 3459856179 - buildTimeAssetPath (string) Packages/com.unity.xr.legacyinputhelpers/Runtime/TrackedPoseDriver/BasePoseProvider.cs - data[167] (BuildReportPackedAssetInfo) - fileID (SInt64) 168 - classID (Type*) 115 - packedSize (UInt64) 128 - offset (UInt64) 23776 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1442881450 - data[1] (unsigned int) 1079410054 - data[2] (unsigned int) 3036883103 - data[3] (unsigned int) 155973397 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_DynamicFontAssetUtilities.cs - data[168] (BuildReportPackedAssetInfo) - fileID (SInt64) 169 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 23904 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3678474938 - data[1] (unsigned int) 2032420236 - data[2] (unsigned int) 4278022475 - data[3] (unsigned int) 21897118 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_StyleSheet.cs - data[169] (BuildReportPackedAssetInfo) - fileID (SInt64) 170 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 24000 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3180797370 - data[1] (unsigned int) 3031705421 - data[2] (unsigned int) 2004465705 - data[3] (unsigned int) 2024598814 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/ObjectId.cs - data[170] (BuildReportPackedAssetInfo) - fileID (SInt64) 171 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 24096 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2107718906 - data[1] (unsigned int) 1237848950 - data[2] (unsigned int) 3227708808 - data[3] (unsigned int) 3509438049 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/ITextPreProcessor.cs - data[171] (BuildReportPackedAssetInfo) - fileID (SInt64) 172 - classID (Type*) 115 - packedSize (UInt64) 128 - offset (UInt64) 24208 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1482014458 - data[1] (unsigned int) 1261873109 - data[2] (unsigned int) 3683609269 - data[3] (unsigned int) 539596153 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/TimeNotificationBehaviour.cs - data[172] (BuildReportPackedAssetInfo) - fileID (SInt64) 173 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 24336 - sourceAssetGUID (GUID) - data[0] (unsigned int) 954140699 - data[1] (unsigned int) 1155860481 - data[2] (unsigned int) 1415572413 - data[3] (unsigned int) 2168533517 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventData/AxisEventData.cs - data[173] (BuildReportPackedAssetInfo) - fileID (SInt64) 174 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 24448 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3656058155 - data[1] (unsigned int) 1267213659 - data[2] (unsigned int) 202513576 - data[3] (unsigned int) 1851358535 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Evaluation/ScheduleRuntimeClip.cs - data[174] (BuildReportPackedAssetInfo) - fileID (SInt64) 175 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 24560 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2083226955 - data[1] (unsigned int) 1289447711 - data[2] (unsigned int) 4193431941 - data[3] (unsigned int) 329079405 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_RichTextTagsCommon.cs - data[175] (BuildReportPackedAssetInfo) - fileID (SInt64) 176 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 24672 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1885595211 - data[1] (unsigned int) 1109138901 - data[2] (unsigned int) 583148682 - data[3] (unsigned int) 3206436840 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/SignalTrack.cs - data[176] (BuildReportPackedAssetInfo) - fileID (SInt64) 177 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 24768 - sourceAssetGUID (GUID) - data[0] (unsigned int) 562564955 - data[1] (unsigned int) 1193827970 - data[2] (unsigned int) 3118759811 - data[3] (unsigned int) 3442226103 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/IPropertyPreview.cs - data[177] (BuildReportPackedAssetInfo) - fileID (SInt64) 178 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 24880 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4157963883 - data[1] (unsigned int) 3890522404 - data[2] (unsigned int) 4106220009 - data[3] (unsigned int) 4182768728 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_LineInfo.cs - data[178] (BuildReportPackedAssetInfo) - fileID (SInt64) 179 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 24976 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2316382363 - data[1] (unsigned int) 1325446927 - data[2] (unsigned int) 4294098619 - data[3] (unsigned int) 1389896115 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/NotificationUtilities.cs - data[179] (BuildReportPackedAssetInfo) - fileID (SInt64) 180 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 25104 - sourceAssetGUID (GUID) - data[0] (unsigned int) 239315867 - data[1] (unsigned int) 1162119195 - data[2] (unsigned int) 659705023 - data[3] (unsigned int) 1186082310 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/SetPropertyUtility.cs - data[180] (BuildReportPackedAssetInfo) - fileID (SInt64) 181 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 25216 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1556500971 - data[1] (unsigned int) 1264610674 - data[2] (unsigned int) 3808742058 - data[3] (unsigned int) 3867227273 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/DirectorControlPlayable.cs - data[181] (BuildReportPackedAssetInfo) - fileID (SInt64) 182 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 25344 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4029577467 - data[1] (unsigned int) 1289765979 - data[2] (unsigned int) 1628721033 - data[3] (unsigned int) 2400789943 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/DefaultControls.cs - data[182] (BuildReportPackedAssetInfo) - fileID (SInt64) 183 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 25456 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1250458619 - data[1] (unsigned int) 1130574051 - data[2] (unsigned int) 2830455185 - data[3] (unsigned int) 396023679 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/CanvasUpdateRegistry.cs - data[183] (BuildReportPackedAssetInfo) - fileID (SInt64) 184 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 25568 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2909122043 - data[1] (unsigned int) 1211294520 - data[2] (unsigned int) 1036482202 - data[3] (unsigned int) 1665820572 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/TimelineAsset.cs - data[184] (BuildReportPackedAssetInfo) - fileID (SInt64) 185 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 25680 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1525069116 - data[1] (unsigned int) 1205632287 - data[2] (unsigned int) 826899630 - data[3] (unsigned int) 3228960702 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Attributes/TimelineHelpURLAttribute.cs - data[185] (BuildReportPackedAssetInfo) - fileID (SInt64) 186 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 25808 - sourceAssetGUID (GUID) - data[0] (unsigned int) 69506380 - data[1] (unsigned int) 1213608984 - data[2] (unsigned int) 1880943756 - data[3] (unsigned int) 2211094390 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Utility/VertexHelper.cs - data[186] (BuildReportPackedAssetInfo) - fileID (SInt64) 187 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 25904 - sourceAssetGUID (GUID) - data[0] (unsigned int) 751089996 - data[1] (unsigned int) 1095150128 - data[2] (unsigned int) 2306629295 - data[3] (unsigned int) 1836977437 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/Raycasters/PhysicsRaycaster.cs - data[187] (BuildReportPackedAssetInfo) - fileID (SInt64) 188 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 26016 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4047528044 - data[1] (unsigned int) 1171771168 - data[2] (unsigned int) 143802802 - data[3] (unsigned int) 2995922822 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Culling/RectangularVertexClipper.cs - data[188] (BuildReportPackedAssetInfo) - fileID (SInt64) 189 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 26144 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1315743596 - data[1] (unsigned int) 1324792752 - data[2] (unsigned int) 1236635815 - data[3] (unsigned int) 248055481 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/AnimationTriggers.cs - data[189] (BuildReportPackedAssetInfo) - fileID (SInt64) 190 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 26256 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1282699148 - data[1] (unsigned int) 1313253068 - data[2] (unsigned int) 387736491 - data[3] (unsigned int) 2057021543 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_TextProcessingCommon.cs - data[190] (BuildReportPackedAssetInfo) - fileID (SInt64) 191 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 26368 - sourceAssetGUID (GUID) - data[0] (unsigned int) 73996460 - data[1] (unsigned int) 428127071 - data[2] (unsigned int) 1953988537 - data[3] (unsigned int) 3844046660 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SelectionCaret.cs - data[191] (BuildReportPackedAssetInfo) - fileID (SInt64) 192 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 26480 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2839136188 - data[1] (unsigned int) 1127282184 - data[2] (unsigned int) 2177009329 - data[3] (unsigned int) 2163416272 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Layout/LayoutGroup.cs - data[192] (BuildReportPackedAssetInfo) - fileID (SInt64) 193 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 26576 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1401469628 - data[1] (unsigned int) 1244803728 - data[2] (unsigned int) 2094201219 - data[3] (unsigned int) 410808205 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/InputModules/PointerInputModule.cs - data[193] (BuildReportPackedAssetInfo) - fileID (SInt64) 194 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 26704 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2137038524 - data[1] (unsigned int) 1322943951 - data[2] (unsigned int) 901966766 - data[3] (unsigned int) 791994290 - buildTimeAssetPath (string) Assets/AssetDuplication/ReferenceMonoBehaviour.cs - data[194] (BuildReportPackedAssetInfo) - fileID (SInt64) 195 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 26816 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3482479596 - data[1] (unsigned int) 1295090022 - data[2] (unsigned int) 3125504144 - data[3] (unsigned int) 1814556651 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/IMask.cs - data[195] (BuildReportPackedAssetInfo) - fileID (SInt64) 196 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 26912 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2690576892 - data[1] (unsigned int) 1286271302 - data[2] (unsigned int) 3914314134 - data[3] (unsigned int) 859750971 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_PackageResourceImporter.cs - data[196] (BuildReportPackedAssetInfo) - fileID (SInt64) 197 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 27040 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1141619452 - data[1] (unsigned int) 1153066512 - data[2] (unsigned int) 1737010099 - data[3] (unsigned int) 2600334935 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/Shadow.cs - data[197] (BuildReportPackedAssetInfo) - fileID (SInt64) 198 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 27136 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1984987149 - data[1] (unsigned int) 1240711791 - data[2] (unsigned int) 690706364 - data[3] (unsigned int) 585712551 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/AnimatorBindingCache.cs - data[198] (BuildReportPackedAssetInfo) - fileID (SInt64) 199 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 27248 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4018412301 - data[1] (unsigned int) 1273601618 - data[2] (unsigned int) 625113528 - data[3] (unsigned int) 464204675 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/EventSystem/EventTrigger.cs - data[199] (BuildReportPackedAssetInfo) - fileID (SInt64) 200 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 27360 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3803687949 - data[1] (unsigned int) 1337083208 - data[2] (unsigned int) 2155387322 - data[3] (unsigned int) 3667384551 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/HashUtility.cs - data[200] (BuildReportPackedAssetInfo) - fileID (SInt64) 201 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 27456 - sourceAssetGUID (GUID) - data[0] (unsigned int) 368496397 - data[1] (unsigned int) 1288800888 - data[2] (unsigned int) 2951649687 - data[3] (unsigned int) 1402009325 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/GroupTrack.cs - data[201] (BuildReportPackedAssetInfo) - fileID (SInt64) 202 - classID (Type*) 115 - packedSize (UInt64) 92 - offset (UInt64) 27552 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2694093085 - data[1] (unsigned int) 1219672888 - data[2] (unsigned int) 3159976372 - data[3] (unsigned int) 4262507295 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/InputField.cs - data[202] (BuildReportPackedAssetInfo) - fileID (SInt64) 203 - classID (Type*) 115 - packedSize (UInt64) 128 - offset (UInt64) 27648 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1910825005 - data[1] (unsigned int) 1210738871 - data[2] (unsigned int) 2212319363 - data[3] (unsigned int) 615599945 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/ActivationControlPlayable.cs - data[203] (BuildReportPackedAssetInfo) - fileID (SInt64) 204 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 27776 - sourceAssetGUID (GUID) - data[0] (unsigned int) 852283693 - data[1] (unsigned int) 1275424104 - data[2] (unsigned int) 862189461 - data[3] (unsigned int) 2314315132 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Animation/AnimationTrack.cs - data[204] (BuildReportPackedAssetInfo) - fileID (SInt64) 205 - classID (Type*) 115 - packedSize (UInt64) 108 - offset (UInt64) 27888 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3318818621 - data[1] (unsigned int) 1172877222 - data[2] (unsigned int) 2868730261 - data[3] (unsigned int) 1732780973 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Extensions/TrackExtensions.cs - data[205] (BuildReportPackedAssetInfo) - fileID (SInt64) 206 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 28000 - sourceAssetGUID (GUID) - data[0] (unsigned int) 701673325 - data[1] (unsigned int) 1140044239 - data[2] (unsigned int) 1966375597 - data[3] (unsigned int) 3016331230 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Signals/SignalAsset.cs - data[206] (BuildReportPackedAssetInfo) - fileID (SInt64) 207 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 28096 - sourceAssetGUID (GUID) - data[0] (unsigned int) 43666573 - data[1] (unsigned int) 1185681423 - data[2] (unsigned int) 3748520070 - data[3] (unsigned int) 896651867 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Audio/AudioMixerProperties.cs - data[207] (BuildReportPackedAssetInfo) - fileID (SInt64) 208 - classID (Type*) 115 - packedSize (UInt64) 112 - offset (UInt64) 28208 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2314759341 - data[1] (unsigned int) 778313466 - data[2] (unsigned int) 3769037115 - data[3] (unsigned int) 2550014510 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Extensions/SelectionExtensions.cs - data[208] (BuildReportPackedAssetInfo) - fileID (SInt64) 209 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 28320 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3297191117 - data[1] (unsigned int) 1275884575 - data[2] (unsigned int) 2486208168 - data[3] (unsigned int) 2575851951 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/GraphicRaycaster.cs - data[209] (BuildReportPackedAssetInfo) - fileID (SInt64) 210 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 28432 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3650770462 - data[1] (unsigned int) 1308738888 - data[2] (unsigned int) 3863343278 - data[3] (unsigned int) 1214833221 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Activation/ActivationMixerPlayable.cs - data[210] (BuildReportPackedAssetInfo) - fileID (SInt64) 211 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 28560 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3983833374 - data[1] (unsigned int) 1185719795 - data[2] (unsigned int) 1944791970 - data[3] (unsigned int) 1757357886 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/VertexModifiers/Outline.cs - data[211] (BuildReportPackedAssetInfo) - fileID (SInt64) 212 - classID (Type*) 115 - packedSize (UInt64) 88 - offset (UInt64) 28656 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1406054702 - data[1] (unsigned int) 2453973071 - data[2] (unsigned int) 3844805016 - data[3] (unsigned int) 1052792282 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_MeshInfo.cs - data[212] (BuildReportPackedAssetInfo) - fileID (SInt64) 213 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 28752 - sourceAssetGUID (GUID) - data[0] (unsigned int) 4077768494 - data[1] (unsigned int) 495196439 - data[2] (unsigned int) 3324775721 - data[3] (unsigned int) 3283570687 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/CurveEditUtility.cs - data[213] (BuildReportPackedAssetInfo) - fileID (SInt64) 214 - classID (Type*) 115 - packedSize (UInt64) 136 - offset (UInt64) 28864 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3977973326 - data[1] (unsigned int) 3489984161 - data[2] (unsigned int) 925163032 - data[3] (unsigned int) 847765825 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_SpriteAssetImportFormats.cs - data[214] (BuildReportPackedAssetInfo) - fileID (SInt64) 215 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 29008 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2704200286 - data[1] (unsigned int) 1155361570 - data[2] (unsigned int) 2408696988 - data[3] (unsigned int) 2500160513 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Events/Signals/SignalReceiver.cs - data[215] (BuildReportPackedAssetInfo) - fileID (SInt64) 216 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 29120 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2875310958 - data[1] (unsigned int) 4023697929 - data[2] (unsigned int) 3370303387 - data[3] (unsigned int) 1949426945 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/BlendUtility.cs - data[216] (BuildReportPackedAssetInfo) - fileID (SInt64) 217 - classID (Type*) 115 - packedSize (UInt64) 104 - offset (UInt64) 29216 - sourceAssetGUID (GUID) - data[0] (unsigned int) 995121790 - data[1] (unsigned int) 1105429012 - data[2] (unsigned int) 879290006 - data[3] (unsigned int) 2661397923 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/WeightUtility.cs - data[217] (BuildReportPackedAssetInfo) - fileID (SInt64) 218 - classID (Type*) 115 - packedSize (UInt64) 148 - offset (UInt64) 29328 - sourceAssetGUID (GUID) - data[0] (unsigned int) 336017358 - data[1] (unsigned int) 3047476958 - data[2] (unsigned int) 2740551481 - data[3] (unsigned int) 1626992630 - buildTimeAssetPath (string) Packages/com.unity.multiplayer.center/Common/SelectedSolutionsData.cs - data[218] (BuildReportPackedAssetInfo) - fileID (SInt64) 219 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 29488 - sourceAssetGUID (GUID) - data[0] (unsigned int) 510115838 - data[1] (unsigned int) 4283742009 - data[2] (unsigned int) 1582628264 - data[3] (unsigned int) 4236297377 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMPro_MeshUtilities.cs - data[219] (BuildReportPackedAssetInfo) - fileID (SInt64) 220 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 29600 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3187181135 - data[1] (unsigned int) 1933840343 - data[2] (unsigned int) 2608942058 - data[3] (unsigned int) 1557226262 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TextMeshProUGUI.cs - data[220] (BuildReportPackedAssetInfo) - fileID (SInt64) 221 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 29696 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2111713391 - data[1] (unsigned int) 1332958049 - data[2] (unsigned int) 2195354260 - data[3] (unsigned int) 1386692992 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/ParticleControlPlayable.cs - data[221] (BuildReportPackedAssetInfo) - fileID (SInt64) 222 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 29824 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2673564015 - data[1] (unsigned int) 990168340 - data[2] (unsigned int) 2927070889 - data[3] (unsigned int) 3868988671 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_FontAssetCommon.cs - data[222] (BuildReportPackedAssetInfo) - fileID (SInt64) 223 - classID (Type*) 115 - packedSize (UInt64) 96 - offset (UInt64) 29936 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2541655935 - data[1] (unsigned int) 1254470253 - data[2] (unsigned int) 1663588025 - data[3] (unsigned int) 3578295100 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Utilities/TimeUtility.cs - data[223] (BuildReportPackedAssetInfo) - fileID (SInt64) 224 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 30032 - sourceAssetGUID (GUID) - data[0] (unsigned int) 3240159951 - data[1] (unsigned int) 1207750147 - data[2] (unsigned int) 417636503 - data[3] (unsigned int) 2445777590 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Utility/ReflectionMethodsCache.cs - data[224] (BuildReportPackedAssetInfo) - fileID (SInt64) 225 - classID (Type*) 115 - packedSize (UInt64) 120 - offset (UInt64) 30160 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2771193567 - data[1] (unsigned int) 1300844657 - data[2] (unsigned int) 484028582 - data[3] (unsigned int) 1517442230 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Activation/ActivationPlayableAsset.cs - data[225] (BuildReportPackedAssetInfo) - fileID (SInt64) 226 - classID (Type*) 115 - packedSize (UInt64) 116 - offset (UInt64) 30288 - sourceAssetGUID (GUID) - data[0] (unsigned int) 192557295 - data[1] (unsigned int) 1296725419 - data[2] (unsigned int) 1916562312 - data[3] (unsigned int) 1396466154 - buildTimeAssetPath (string) Packages/com.unity.timeline/Runtime/Playables/BasicScriptPlayable.cs - data[226] (BuildReportPackedAssetInfo) - fileID (SInt64) 227 - classID (Type*) 115 - packedSize (UInt64) 84 - offset (UInt64) 30416 - sourceAssetGUID (GUID) - data[0] (unsigned int) 504133871 - data[1] (unsigned int) 1306788556 - data[2] (unsigned int) 2268806568 - data[3] (unsigned int) 3488169732 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/UGUI/UI/Core/Image.cs - data[227] (BuildReportPackedAssetInfo) - fileID (SInt64) 228 - classID (Type*) 115 - packedSize (UInt64) 100 - offset (UInt64) 30512 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1890142959 - data[1] (unsigned int) 2309243395 - data[2] (unsigned int) 2138571259 - data[3] (unsigned int) 2315340204 - buildTimeAssetPath (string) Packages/com.unity.ugui/Runtime/TMP/TMP_ShaderUtilities.cs - data[228] (BuildReportPackedAssetInfo) - fileID (SInt64) 229 - classID (Type*) 213 - packedSize (UInt64) 420 - offset (UInt64) 31504 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Built-in Sprite: - -ID: -4211197064891926221 (ClassID: 1126) PackedAssets - m_ShortPath (string) sharedassets0.assets.resS - m_Overhead (UInt64) 13 - m_Contents (vector) - Array[2] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 28 - packedSize (UInt64) 524288 - offset (UInt64) 0 - sourceAssetGUID (GUID) - data[0] (unsigned int) 1179607688 - data[1] (unsigned int) 1278849281 - data[2] (unsigned int) 1374027963 - data[3] (unsigned int) 1900018330 - buildTimeAssetPath (string) Assets/Sprites/Snow.jpg - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 28 - packedSize (UInt64) 151875 - offset (UInt64) 524288 - sourceAssetGUID (GUID) - data[0] (unsigned int) 2731658232 - data[1] (unsigned int) 1324654785 - data[2] (unsigned int) 2360135852 - data[3] (unsigned int) 2253774587 - buildTimeAssetPath (string) Assets/Sprites/red.png - -ID: -2209428987046021830 (ClassID: 641289076) AudioBuildInfo - m_IsAudioDisabled (bool) False - m_AudioClipCount (int) 1 - m_AudioMixerCount (int) 0 - -ID: -837533726333199562 (ClassID: 1126) PackedAssets - m_ShortPath (string) sharedassets1.resource - m_Overhead (UInt64) 0 - m_Contents (vector) - Array[1] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 83 - packedSize (UInt64) 18496 - offset (UInt64) 0 - sourceAssetGUID (GUID) - data[0] (unsigned int) 510047344 - data[1] (unsigned int) 1200191226 - data[2] (unsigned int) 2021230213 - data[3] (unsigned int) 2122331027 - buildTimeAssetPath (string) Assets/audio/audio.mp3 - -ID: 1 (ClassID: 1125) BuildReport - m_ObjectHideFlags (unsigned int) 0 - m_CorrespondingSourceObject (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_PrefabInstance (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_PrefabAsset (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_Name (string) New Report - m_Summary (BuildSummary) - buildStartTime (DateTime) - ticks (SInt64) 639026101805010432 - buildGUID (GUID) - data[0] (unsigned int) 1816015996 - data[1] (unsigned int) 1779718668 - data[2] (unsigned int) 3322342121 - data[3] (unsigned int) 3828488599 - platformName (string) Win64 - platformGroupName (string) Standalone - subtarget (int) 2 - options (int) 137 - assetBundleOptions (int) 0 - outputPath (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject.exe - crc (unsigned int) 0 - totalSize (UInt64) 263323536 - totalTimeTicks (UInt64) 58976739 - totalErrors (int) 0 - totalWarnings (int) 0 - buildType (int) 1 - buildResult (int) 1 - multiProcessEnabled (bool) False - m_Files (vector) - Array[226] - data[0] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/globalgamemanagers - role (string) globalgamemanagers - id (unsigned int) 0 - totalSize (UInt64) 35636 - data[1] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/globalgamemanagers.assets - role (string) assets - id (unsigned int) 1 - totalSize (UInt64) 31924 - data[2] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/globalgamemanagers.assets.resS - role (string) resS - id (unsigned int) 2 - totalSize (UInt64) 2798288 - data[3] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/level0 - role (string) level0 - id (unsigned int) 3 - totalSize (UInt64) 2184 - data[4] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/level1 - role (string) level1 - id (unsigned int) 4 - totalSize (UInt64) 3384 - data[5] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Resources/unity_builtin_extra - role (string) unity_builtin_extra - id (unsigned int) 5 - totalSize (UInt64) 368772 - data[6] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/RuntimeInitializeOnLoads.json - role (string) json - id (unsigned int) 6 - totalSize (UInt64) 703 - data[7] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/ScriptingAssemblies.json - role (string) json - id (unsigned int) 7 - totalSize (UInt64) 3074 - data[8] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/sharedassets0.assets - role (string) assets - id (unsigned int) 8 - totalSize (UInt64) 1708 - data[9] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/sharedassets0.assets.resS - role (string) resS - id (unsigned int) 9 - totalSize (UInt64) 676176 - data[10] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/sharedassets1.assets - role (string) assets - id (unsigned int) 10 - totalSize (UInt64) 58460 - data[11] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/sharedassets1.resource - role (string) resource - id (unsigned int) 11 - totalSize (UInt64) 18496 - data[12] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/boot.config - role (string) config - id (unsigned int) 12 - totalSize (UInt64) 431 - data[13] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Assembly-CSharp.dll - role (string) dll - id (unsigned int) 13 - totalSize (UInt64) 5120 - data[14] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Mono.Security.dll - role (string) dll - id (unsigned int) 14 - totalSize (UInt64) 241152 - data[15] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/mscorlib.dll - role (string) dll - id (unsigned int) 15 - totalSize (UInt64) 4632064 - data[16] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/netstandard.dll - role (string) dll - id (unsigned int) 16 - totalSize (UInt64) 90112 - data[17] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.ComponentModel.Composition.dll - role (string) dll - id (unsigned int) 17 - totalSize (UInt64) 257024 - data[18] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Configuration.dll - role (string) dll - id (unsigned int) 18 - totalSize (UInt64) 124928 - data[19] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Core.dll - role (string) dll - id (unsigned int) 19 - totalSize (UInt64) 1113088 - data[20] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Data.DataSetExtensions.dll - role (string) dll - id (unsigned int) 20 - totalSize (UInt64) 29696 - data[21] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Data.dll - role (string) dll - id (unsigned int) 21 - totalSize (UInt64) 2125312 - data[22] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.dll - role (string) dll - id (unsigned int) 22 - totalSize (UInt64) 2641920 - data[23] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Drawing.dll - role (string) dll - id (unsigned int) 23 - totalSize (UInt64) 489984 - data[24] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.EnterpriseServices.dll - role (string) dll - id (unsigned int) 24 - totalSize (UInt64) 44544 - data[25] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.IO.Compression.dll - role (string) dll - id (unsigned int) 25 - totalSize (UInt64) 114688 - data[26] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.IO.Compression.FileSystem.dll - role (string) dll - id (unsigned int) 26 - totalSize (UInt64) 18432 - data[27] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Net.Http.dll - role (string) dll - id (unsigned int) 27 - totalSize (UInt64) 122880 - data[28] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Numerics.dll - role (string) dll - id (unsigned int) 28 - totalSize (UInt64) 119296 - data[29] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Runtime.Serialization.dll - role (string) dll - id (unsigned int) 29 - totalSize (UInt64) 934400 - data[30] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Security.dll - role (string) dll - id (unsigned int) 30 - totalSize (UInt64) 320000 - data[31] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.ServiceModel.Internals.dll - role (string) dll - id (unsigned int) 31 - totalSize (UInt64) 215040 - data[32] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Transactions.dll - role (string) dll - id (unsigned int) 32 - totalSize (UInt64) 35328 - data[33] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Xml.dll - role (string) dll - id (unsigned int) 33 - totalSize (UInt64) 3160064 - data[34] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/System.Xml.Linq.dll - role (string) dll - id (unsigned int) 34 - totalSize (UInt64) 136704 - data[35] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.AI.Navigation.dll - role (string) dll - id (unsigned int) 35 - totalSize (UInt64) 26112 - data[36] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.Multiplayer.Center.Common.dll - role (string) dll - id (unsigned int) 36 - totalSize (UInt64) 10752 - data[37] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.TextMeshPro.dll - role (string) dll - id (unsigned int) 37 - totalSize (UInt64) 506880 - data[38] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.Timeline.dll - role (string) dll - id (unsigned int) 38 - totalSize (UInt64) 148992 - data[39] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AccessibilityModule.dll - role (string) dll - id (unsigned int) 39 - totalSize (UInt64) 42496 - data[40] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AIModule.dll - role (string) dll - id (unsigned int) 40 - totalSize (UInt64) 62976 - data[41] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AMDModule.dll - role (string) dll - id (unsigned int) 41 - totalSize (UInt64) 11264 - data[42] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AndroidJNIModule.dll - role (string) dll - id (unsigned int) 42 - totalSize (UInt64) 105984 - data[43] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AnimationModule.dll - role (string) dll - id (unsigned int) 43 - totalSize (UInt64) 203776 - data[44] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ARModule.dll - role (string) dll - id (unsigned int) 44 - totalSize (UInt64) 11776 - data[45] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AssetBundleModule.dll - role (string) dll - id (unsigned int) 45 - totalSize (UInt64) 28160 - data[46] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AudioModule.dll - role (string) dll - id (unsigned int) 46 - totalSize (UInt64) 92672 - data[47] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClothModule.dll - role (string) dll - id (unsigned int) 47 - totalSize (UInt64) 22528 - data[48] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClusterInputModule.dll - role (string) dll - id (unsigned int) 48 - totalSize (UInt64) 13824 - data[49] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClusterRendererModule.dll - role (string) dll - id (unsigned int) 49 - totalSize (UInt64) 12800 - data[50] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ContentLoadModule.dll - role (string) dll - id (unsigned int) 50 - totalSize (UInt64) 18432 - data[51] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.CoreModule.dll - role (string) dll - id (unsigned int) 51 - totalSize (UInt64) 1787392 - data[52] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.CrashReportingModule.dll - role (string) dll - id (unsigned int) 52 - totalSize (UInt64) 12800 - data[53] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.DirectorModule.dll - role (string) dll - id (unsigned int) 53 - totalSize (UInt64) 27648 - data[54] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.dll - role (string) dll - id (unsigned int) 54 - totalSize (UInt64) 159744 - data[55] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.DSPGraphModule.dll - role (string) dll - id (unsigned int) 55 - totalSize (UInt64) 19968 - data[56] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GameCenterModule.dll - role (string) dll - id (unsigned int) 56 - totalSize (UInt64) 31744 - data[57] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GIModule.dll - role (string) dll - id (unsigned int) 57 - totalSize (UInt64) 10240 - data[58] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GraphicsStateCollectionSerializerModule.dll - role (string) dll - id (unsigned int) 58 - totalSize (UInt64) 3584 - data[59] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GridModule.dll - role (string) dll - id (unsigned int) 59 - totalSize (UInt64) 16384 - data[60] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.HierarchyCoreModule.dll - role (string) dll - id (unsigned int) 60 - totalSize (UInt64) 80896 - data[61] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.HotReloadModule.dll - role (string) dll - id (unsigned int) 61 - totalSize (UInt64) 10240 - data[62] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ImageConversionModule.dll - role (string) dll - id (unsigned int) 62 - totalSize (UInt64) 17408 - data[63] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.IMGUIModule.dll - role (string) dll - id (unsigned int) 63 - totalSize (UInt64) 196096 - data[64] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputForUIModule.dll - role (string) dll - id (unsigned int) 64 - totalSize (UInt64) 46592 - data[65] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputLegacyModule.dll - role (string) dll - id (unsigned int) 65 - totalSize (UInt64) 31744 - data[66] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputModule.dll - role (string) dll - id (unsigned int) 66 - totalSize (UInt64) 14336 - data[67] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.JSONSerializeModule.dll - role (string) dll - id (unsigned int) 67 - totalSize (UInt64) 13312 - data[68] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.LocalizationModule.dll - role (string) dll - id (unsigned int) 68 - totalSize (UInt64) 12800 - data[69] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.MarshallingModule.dll - role (string) dll - id (unsigned int) 69 - totalSize (UInt64) 53760 - data[70] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.MultiplayerModule.dll - role (string) dll - id (unsigned int) 70 - totalSize (UInt64) 5120 - data[71] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.NVIDIAModule.dll - role (string) dll - id (unsigned int) 71 - totalSize (UInt64) 24576 - data[72] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ParticleSystemModule.dll - role (string) dll - id (unsigned int) 72 - totalSize (UInt64) 156160 - data[73] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PerformanceReportingModule.dll - role (string) dll - id (unsigned int) 73 - totalSize (UInt64) 11264 - data[74] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.Physics2DModule.dll - role (string) dll - id (unsigned int) 74 - totalSize (UInt64) 190464 - data[75] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PhysicsModule.dll - role (string) dll - id (unsigned int) 75 - totalSize (UInt64) 172544 - data[76] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PropertiesModule.dll - role (string) dll - id (unsigned int) 76 - totalSize (UInt64) 138752 - data[77] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll - role (string) dll - id (unsigned int) 77 - totalSize (UInt64) 10752 - data[78] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ScreenCaptureModule.dll - role (string) dll - id (unsigned int) 78 - totalSize (UInt64) 12288 - data[79] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ShaderVariantAnalyticsModule.dll - role (string) dll - id (unsigned int) 79 - totalSize (UInt64) 10752 - data[80] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SharedInternalsModule.dll - role (string) dll - id (unsigned int) 80 - totalSize (UInt64) 21504 - data[81] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpatialTracking.dll - role (string) dll - id (unsigned int) 81 - totalSize (UInt64) 12288 - data[82] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpriteMaskModule.dll - role (string) dll - id (unsigned int) 82 - totalSize (UInt64) 14336 - data[83] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpriteShapeModule.dll - role (string) dll - id (unsigned int) 83 - totalSize (UInt64) 17920 - data[84] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.StreamingModule.dll - role (string) dll - id (unsigned int) 84 - totalSize (UInt64) 11776 - data[85] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SubstanceModule.dll - role (string) dll - id (unsigned int) 85 - totalSize (UInt64) 15360 - data[86] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SubsystemsModule.dll - role (string) dll - id (unsigned int) 86 - totalSize (UInt64) 27648 - data[87] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TerrainModule.dll - role (string) dll - id (unsigned int) 87 - totalSize (UInt64) 119296 - data[88] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TerrainPhysicsModule.dll - role (string) dll - id (unsigned int) 88 - totalSize (UInt64) 11776 - data[89] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextCoreFontEngineModule.dll - role (string) dll - id (unsigned int) 89 - totalSize (UInt64) 74240 - data[90] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextCoreTextEngineModule.dll - role (string) dll - id (unsigned int) 90 - totalSize (UInt64) 292352 - data[91] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextRenderingModule.dll - role (string) dll - id (unsigned int) 91 - totalSize (UInt64) 35328 - data[92] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TilemapModule.dll - role (string) dll - id (unsigned int) 92 - totalSize (UInt64) 44032 - data[93] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TLSModule.dll - role (string) dll - id (unsigned int) 93 - totalSize (UInt64) 17408 - data[94] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UI.dll - role (string) dll - id (unsigned int) 94 - totalSize (UInt64) 298496 - data[95] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UIElementsModule.dll - role (string) dll - id (unsigned int) 95 - totalSize (UInt64) 2063872 - data[96] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UIModule.dll - role (string) dll - id (unsigned int) 96 - totalSize (UInt64) 34816 - data[97] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UmbraModule.dll - role (string) dll - id (unsigned int) 97 - totalSize (UInt64) 10240 - data[98] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityAnalyticsCommonModule.dll - role (string) dll - id (unsigned int) 98 - totalSize (UInt64) 21504 - data[99] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityAnalyticsModule.dll - role (string) dll - id (unsigned int) 99 - totalSize (UInt64) 46592 - data[100] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityConnectModule.dll - role (string) dll - id (unsigned int) 100 - totalSize (UInt64) 13312 - data[101] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityCurlModule.dll - role (string) dll - id (unsigned int) 101 - totalSize (UInt64) 12288 - data[102] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityTestProtocolModule.dll - role (string) dll - id (unsigned int) 102 - totalSize (UInt64) 10752 - data[103] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.dll - role (string) dll - id (unsigned int) 103 - totalSize (UInt64) 14848 - data[104] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestAudioModule.dll - role (string) dll - id (unsigned int) 104 - totalSize (UInt64) 14336 - data[105] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestModule.dll - role (string) dll - id (unsigned int) 105 - totalSize (UInt64) 55296 - data[106] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestTextureModule.dll - role (string) dll - id (unsigned int) 106 - totalSize (UInt64) 13824 - data[107] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestWWWModule.dll - role (string) dll - id (unsigned int) 107 - totalSize (UInt64) 22528 - data[108] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VehiclesModule.dll - role (string) dll - id (unsigned int) 108 - totalSize (UInt64) 17408 - data[109] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VFXModule.dll - role (string) dll - id (unsigned int) 109 - totalSize (UInt64) 64000 - data[110] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VideoModule.dll - role (string) dll - id (unsigned int) 110 - totalSize (UInt64) 44544 - data[111] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VirtualTexturingModule.dll - role (string) dll - id (unsigned int) 111 - totalSize (UInt64) 29184 - data[112] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VRModule.dll - role (string) dll - id (unsigned int) 112 - totalSize (UInt64) 17408 - data[113] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.WindModule.dll - role (string) dll - id (unsigned int) 113 - totalSize (UInt64) 12800 - data[114] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.XR.LegacyInputHelpers.dll - role (string) dll - id (unsigned int) 114 - totalSize (UInt64) 25088 - data[115] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.XRModule.dll - role (string) dll - id (unsigned int) 115 - totalSize (UInt64) 73728 - data[116] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Assembly-CSharp.pdb - role (string) pdb - id (unsigned int) 116 - totalSize (UInt64) 16376 - data[117] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.AI.Navigation.pdb - role (string) pdb - id (unsigned int) 117 - totalSize (UInt64) 25272 - data[118] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.Multiplayer.Center.Common.pdb - role (string) pdb - id (unsigned int) 118 - totalSize (UInt64) 17628 - data[119] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.TextMeshPro.pdb - role (string) pdb - id (unsigned int) 119 - totalSize (UInt64) 256336 - data[120] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/Unity.Timeline.pdb - role (string) pdb - id (unsigned int) 120 - totalSize (UInt64) 90272 - data[121] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AccessibilityModule.pdb - role (string) pdb - id (unsigned int) 121 - totalSize (UInt64) 25048 - data[122] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AIModule.pdb - role (string) pdb - id (unsigned int) 122 - totalSize (UInt64) 20392 - data[123] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AMDModule.pdb - role (string) pdb - id (unsigned int) 123 - totalSize (UInt64) 11784 - data[124] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AndroidJNIModule.pdb - role (string) pdb - id (unsigned int) 124 - totalSize (UInt64) 49676 - data[125] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AnimationModule.pdb - role (string) pdb - id (unsigned int) 125 - totalSize (UInt64) 58372 - data[126] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ARModule.pdb - role (string) pdb - id (unsigned int) 126 - totalSize (UInt64) 9768 - data[127] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AssetBundleModule.pdb - role (string) pdb - id (unsigned int) 127 - totalSize (UInt64) 13896 - data[128] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.AudioModule.pdb - role (string) pdb - id (unsigned int) 128 - totalSize (UInt64) 23724 - data[129] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClothModule.pdb - role (string) pdb - id (unsigned int) 129 - totalSize (UInt64) 10360 - data[130] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClusterInputModule.pdb - role (string) pdb - id (unsigned int) 130 - totalSize (UInt64) 9156 - data[131] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ClusterRendererModule.pdb - role (string) pdb - id (unsigned int) 131 - totalSize (UInt64) 9756 - data[132] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ContentLoadModule.pdb - role (string) pdb - id (unsigned int) 132 - totalSize (UInt64) 10928 - data[133] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.CoreModule.pdb - role (string) pdb - id (unsigned int) 133 - totalSize (UInt64) 523876 - data[134] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.CrashReportingModule.pdb - role (string) pdb - id (unsigned int) 134 - totalSize (UInt64) 9700 - data[135] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.DirectorModule.pdb - role (string) pdb - id (unsigned int) 135 - totalSize (UInt64) 13664 - data[136] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.DSPGraphModule.pdb - role (string) pdb - id (unsigned int) 136 - totalSize (UInt64) 10300 - data[137] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GameCenterModule.pdb - role (string) pdb - id (unsigned int) 137 - totalSize (UInt64) 17240 - data[138] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GIModule.pdb - role (string) pdb - id (unsigned int) 138 - totalSize (UInt64) 9036 - data[139] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GraphicsStateCollectionSerializerModule.pdb - role (string) pdb - id (unsigned int) 139 - totalSize (UInt64) 9064 - data[140] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.GridModule.pdb - role (string) pdb - id (unsigned int) 140 - totalSize (UInt64) 9784 - data[141] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.HierarchyCoreModule.pdb - role (string) pdb - id (unsigned int) 141 - totalSize (UInt64) 31420 - data[142] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.HotReloadModule.pdb - role (string) pdb - id (unsigned int) 142 - totalSize (UInt64) 9036 - data[143] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ImageConversionModule.pdb - role (string) pdb - id (unsigned int) 143 - totalSize (UInt64) 10372 - data[144] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.IMGUIModule.pdb - role (string) pdb - id (unsigned int) 144 - totalSize (UInt64) 89156 - data[145] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputForUIModule.pdb - role (string) pdb - id (unsigned int) 145 - totalSize (UInt64) 25784 - data[146] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputLegacyModule.pdb - role (string) pdb - id (unsigned int) 146 - totalSize (UInt64) 15136 - data[147] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.InputModule.pdb - role (string) pdb - id (unsigned int) 147 - totalSize (UInt64) 10392 - data[148] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.JSONSerializeModule.pdb - role (string) pdb - id (unsigned int) 148 - totalSize (UInt64) 9652 - data[149] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.LocalizationModule.pdb - role (string) pdb - id (unsigned int) 149 - totalSize (UInt64) 9448 - data[150] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.MarshallingModule.pdb - role (string) pdb - id (unsigned int) 150 - totalSize (UInt64) 12480 - data[151] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.MultiplayerModule.pdb - role (string) pdb - id (unsigned int) 151 - totalSize (UInt64) 9060 - data[152] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.NVIDIAModule.pdb - role (string) pdb - id (unsigned int) 152 - totalSize (UInt64) 15460 - data[153] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ParticleSystemModule.pdb - role (string) pdb - id (unsigned int) 153 - totalSize (UInt64) 39964 - data[154] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.pdb - role (string) pdb - id (unsigned int) 154 - totalSize (UInt64) 12116 - data[155] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PerformanceReportingModule.pdb - role (string) pdb - id (unsigned int) 155 - totalSize (UInt64) 9240 - data[156] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.Physics2DModule.pdb - role (string) pdb - id (unsigned int) 156 - totalSize (UInt64) 48312 - data[157] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PhysicsModule.pdb - role (string) pdb - id (unsigned int) 157 - totalSize (UInt64) 47248 - data[158] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.PropertiesModule.pdb - role (string) pdb - id (unsigned int) 158 - totalSize (UInt64) 58716 - data[159] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.pdb - role (string) pdb - id (unsigned int) 159 - totalSize (UInt64) 9096 - data[160] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ScreenCaptureModule.pdb - role (string) pdb - id (unsigned int) 160 - totalSize (UInt64) 9632 - data[161] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.ShaderVariantAnalyticsModule.pdb - role (string) pdb - id (unsigned int) 161 - totalSize (UInt64) 9160 - data[162] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SharedInternalsModule.pdb - role (string) pdb - id (unsigned int) 162 - totalSize (UInt64) 13452 - data[163] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpatialTracking.pdb - role (string) pdb - id (unsigned int) 163 - totalSize (UInt64) 18920 - data[164] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpriteMaskModule.pdb - role (string) pdb - id (unsigned int) 164 - totalSize (UInt64) 9368 - data[165] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SpriteShapeModule.pdb - role (string) pdb - id (unsigned int) 165 - totalSize (UInt64) 10592 - data[166] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.StreamingModule.pdb - role (string) pdb - id (unsigned int) 166 - totalSize (UInt64) 9112 - data[167] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SubstanceModule.pdb - role (string) pdb - id (unsigned int) 167 - totalSize (UInt64) 11232 - data[168] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.SubsystemsModule.pdb - role (string) pdb - id (unsigned int) 168 - totalSize (UInt64) 15744 - data[169] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TerrainModule.pdb - role (string) pdb - id (unsigned int) 169 - totalSize (UInt64) 33664 - data[170] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TerrainPhysicsModule.pdb - role (string) pdb - id (unsigned int) 170 - totalSize (UInt64) 9496 - data[171] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextCoreFontEngineModule.pdb - role (string) pdb - id (unsigned int) 171 - totalSize (UInt64) 28088 - data[172] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextCoreTextEngineModule.pdb - role (string) pdb - id (unsigned int) 172 - totalSize (UInt64) 134900 - data[173] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TextRenderingModule.pdb - role (string) pdb - id (unsigned int) 173 - totalSize (UInt64) 15160 - data[174] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TilemapModule.pdb - role (string) pdb - id (unsigned int) 174 - totalSize (UInt64) 18756 - data[175] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.TLSModule.pdb - role (string) pdb - id (unsigned int) 175 - totalSize (UInt64) 9056 - data[176] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UI.pdb - role (string) pdb - id (unsigned int) 176 - totalSize (UInt64) 181520 - data[177] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UIElementsModule.pdb - role (string) pdb - id (unsigned int) 177 - totalSize (UInt64) 919012 - data[178] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UIModule.pdb - role (string) pdb - id (unsigned int) 178 - totalSize (UInt64) 13576 - data[179] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UmbraModule.pdb - role (string) pdb - id (unsigned int) 179 - totalSize (UInt64) 9036 - data[180] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityAnalyticsCommonModule.pdb - role (string) pdb - id (unsigned int) 180 - totalSize (UInt64) 13484 - data[181] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityAnalyticsModule.pdb - role (string) pdb - id (unsigned int) 181 - totalSize (UInt64) 17744 - data[182] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityConnectModule.pdb - role (string) pdb - id (unsigned int) 182 - totalSize (UInt64) 9628 - data[183] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityCurlModule.pdb - role (string) pdb - id (unsigned int) 183 - totalSize (UInt64) 9420 - data[184] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityTestProtocolModule.pdb - role (string) pdb - id (unsigned int) 184 - totalSize (UInt64) 9096 - data[185] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.pdb - role (string) pdb - id (unsigned int) 185 - totalSize (UInt64) 10600 - data[186] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestAudioModule.pdb - role (string) pdb - id (unsigned int) 186 - totalSize (UInt64) 10404 - data[187] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestModule.pdb - role (string) pdb - id (unsigned int) 187 - totalSize (UInt64) 28084 - data[188] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestTextureModule.pdb - role (string) pdb - id (unsigned int) 188 - totalSize (UInt64) 10568 - data[189] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.UnityWebRequestWWWModule.pdb - role (string) pdb - id (unsigned int) 189 - totalSize (UInt64) 13468 - data[190] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VehiclesModule.pdb - role (string) pdb - id (unsigned int) 190 - totalSize (UInt64) 10272 - data[191] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VFXModule.pdb - role (string) pdb - id (unsigned int) 191 - totalSize (UInt64) 18532 - data[192] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VideoModule.pdb - role (string) pdb - id (unsigned int) 192 - totalSize (UInt64) 13936 - data[193] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VirtualTexturingModule.pdb - role (string) pdb - id (unsigned int) 193 - totalSize (UInt64) 13276 - data[194] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.VRModule.pdb - role (string) pdb - id (unsigned int) 194 - totalSize (UInt64) 10156 - data[195] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.WindModule.pdb - role (string) pdb - id (unsigned int) 195 - totalSize (UInt64) 9172 - data[196] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.XR.LegacyInputHelpers.pdb - role (string) pdb - id (unsigned int) 196 - totalSize (UInt64) 25224 - data[197] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Managed/UnityEngine.XRModule.pdb - role (string) pdb - id (unsigned int) 197 - totalSize (UInt64) 24004 - data[198] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/app.info - role (string) info - id (unsigned int) 198 - totalSize (UInt64) 26 - data[199] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject_Data/Resources/unity default resources - role (string) unity default resources - id (unsigned int) 199 - totalSize (UInt64) 5858500 - data[200] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/TestProject.exe - role (string) exe - id (unsigned int) 200 - totalSize (UInt64) 672256 - data[201] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/EmbedRuntime/mono-2.0-bdwgc.dll - role (string) dll - id (unsigned int) 201 - totalSize (UInt64) 7820288 - data[202] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/EmbedRuntime/MonoPosixHelper.dll - role (string) dll - id (unsigned int) 202 - totalSize (UInt64) 600576 - data[203] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/Browsers/Compat.browser - role (string) browser - id (unsigned int) 203 - totalSize (UInt64) 1605 - data[204] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx - role (string) aspx - id (unsigned int) 204 - totalSize (UInt64) 60575 - data[205] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/machine.config - role (string) config - id (unsigned int) 205 - totalSize (UInt64) 29066 - data[206] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/settings.map - role (string) map - id (unsigned int) 206 - totalSize (UInt64) 2622 - data[207] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/2.0/web.config - role (string) config - id (unsigned int) 207 - totalSize (UInt64) 11635 - data[208] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/Browsers/Compat.browser - role (string) browser - id (unsigned int) 208 - totalSize (UInt64) 1605 - data[209] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/DefaultWsdlHelpGenerator.aspx - role (string) aspx - id (unsigned int) 209 - totalSize (UInt64) 60575 - data[210] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/machine.config - role (string) config - id (unsigned int) 210 - totalSize (UInt64) 33598 - data[211] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/settings.map - role (string) map - id (unsigned int) 211 - totalSize (UInt64) 2622 - data[212] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.0/web.config - role (string) config - id (unsigned int) 212 - totalSize (UInt64) 18802 - data[213] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/Browsers/Compat.browser - role (string) browser - id (unsigned int) 213 - totalSize (UInt64) 1605 - data[214] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/DefaultWsdlHelpGenerator.aspx - role (string) aspx - id (unsigned int) 214 - totalSize (UInt64) 60575 - data[215] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/machine.config - role (string) config - id (unsigned int) 215 - totalSize (UInt64) 34056 - data[216] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/settings.map - role (string) map - id (unsigned int) 216 - totalSize (UInt64) 2622 - data[217] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/4.5/web.config - role (string) config - id (unsigned int) 217 - totalSize (UInt64) 18811 - data[218] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/browscap.ini - role (string) ini - id (unsigned int) 218 - totalSize (UInt64) 311984 - data[219] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/config - role (string) config - id (unsigned int) 219 - totalSize (UInt64) 3815 - data[220] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/MonoBleedingEdge/etc/mono/mconfig/config.xml - role (string) xml - id (unsigned int) 220 - totalSize (UInt64) 25817 - data[221] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/UnityCrashHandler64.exe - role (string) exe - id (unsigned int) 221 - totalSize (UInt64) 7282688 - data[222] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/UnityPlayer.dll - role (string) dll - id (unsigned int) 222 - totalSize (UInt64) 192243200 - data[223] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/WinPixEventRuntime.dll - role (string) dll - id (unsigned int) 223 - totalSize (UInt64) 58368 - data[224] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/D3D12/D3D12Core.dll - role (string) dll - id (unsigned int) 224 - totalSize (UInt64) 5908408 - data[225] (BuildReportFile) - path (string) C:/UnitySrc/BuildReportInspector_2021_3/TestProject/Build/D3D12/d3d12SDKLayers.dll - role (string) dll - id (unsigned int) 225 - totalSize (UInt64) 9525272 - m_BuildSteps (vector) - Array[26] - data[0] (BuildStepInfo) - stepName (string) Build player - durationTicks (UInt64) 58976739 - depth (int) 0 - messages (vector) - Array[0] - data[1] (BuildStepInfo) - stepName (string) Preprocess Player - durationTicks (UInt64) 114960 - depth (int) 1 - messages (vector) - Array[0] - data[2] (BuildStepInfo) - stepName (string) Prepare For Build - durationTicks (UInt64) 2476643 - depth (int) 1 - messages (vector) - Array[0] - data[3] (BuildStepInfo) - stepName (string) ProducePlayerScriptAssemblies - durationTicks (UInt64) 33733176 - depth (int) 1 - messages (vector) - Array[0] - data[4] (BuildStepInfo) - stepName (string) Prebuild Cleanup and Recompile - durationTicks (UInt64) 29833880 - depth (int) 2 - messages (vector) - Array[0] - data[5] (BuildStepInfo) - stepName (string) Compile scripts - durationTicks (UInt64) 29606308 - depth (int) 3 - messages (vector) - Array[0] - data[6] (BuildStepInfo) - stepName (string) Generate and validate platform script types - durationTicks (UInt64) 184213 - depth (int) 3 - messages (vector) - Array[0] - data[7] (BuildStepInfo) - stepName (string) Verify Build setup - durationTicks (UInt64) 117657 - depth (int) 1 - messages (vector) - Array[0] - data[8] (BuildStepInfo) - stepName (string) Prepare assets for target platform - durationTicks (UInt64) 71250 - depth (int) 1 - messages (vector) - Array[0] - data[9] (BuildStepInfo) - stepName (string) Prepare splash screen - durationTicks (UInt64) 6948 - depth (int) 1 - messages (vector) - Array[1] - data[0] (BuildStepMessage) - type (int) 3 - content (string) Including Unity Splash Screen logo because 'Show Unity Logo' is enabled. - data[10] (BuildStepInfo) - stepName (string) Building scenes - durationTicks (UInt64) 1045290 - depth (int) 1 - messages (vector) - Array[0] - data[11] (BuildStepInfo) - stepName (string) Building scene Assets/Scenes/SampleScene.unity - durationTicks (UInt64) 526194 - depth (int) 2 - messages (vector) - Array[0] - data[12] (BuildStepInfo) - stepName (string) Building scene Assets/Scenes/Scene2.unity - durationTicks (UInt64) 518519 - depth (int) 2 - messages (vector) - Array[0] - data[13] (BuildStepInfo) - stepName (string) Build scripts DLLs - durationTicks (UInt64) 222040 - depth (int) 1 - messages (vector) - Array[0] - data[14] (BuildStepInfo) - stepName (string) GetSystemAssemblies - durationTicks (UInt64) 18065 - depth (int) 2 - messages (vector) - Array[0] - data[15] (BuildStepInfo) - stepName (string) Build GlobalGameManagers file - durationTicks (UInt64) 1630809 - depth (int) 1 - messages (vector) - Array[0] - data[16] (BuildStepInfo) - stepName (string) Writing asset files - durationTicks (UInt64) 812536 - depth (int) 1 - messages (vector) - Array[0] - data[17] (BuildStepInfo) - stepName (string) Packaging assets - globalgamemanagers.assets - durationTicks (UInt64) 386663 - depth (int) 2 - messages (vector) - Array[0] - data[18] (BuildStepInfo) - stepName (string) Packaging assets - sharedassets0.assets = additional assets for scene 0: Assets/Scenes/SampleScene.unity - durationTicks (UInt64) 36262 - depth (int) 2 - messages (vector) - Array[0] - data[19] (BuildStepInfo) - stepName (string) Packaging assets - sharedassets1.assets = additional assets for scene 1: Assets/Scenes/Scene2.unity - durationTicks (UInt64) 331391 - depth (int) 2 - messages (vector) - Array[0] - data[20] (BuildStepInfo) - stepName (string) Building Resources/unity_builtin_extra - durationTicks (UInt64) 1073435 - depth (int) 1 - messages (vector) - Array[0] - data[21] (BuildStepInfo) - stepName (string) Write data build dirty tracking information - durationTicks (UInt64) 493831 - depth (int) 1 - messages (vector) - Array[0] - data[22] (BuildStepInfo) - stepName (string) Postprocess built player - durationTicks (UInt64) 14792654 - depth (int) 1 - messages (vector) - Array[0] - data[23] (BuildStepInfo) - stepName (string) Setup incremental player build - durationTicks (UInt64) 518578 - depth (int) 2 - messages (vector) - Array[0] - data[24] (BuildStepInfo) - stepName (string) Incremental player build - durationTicks (UInt64) 10927654 - depth (int) 2 - messages (vector) - Array[0] - data[25] (BuildStepInfo) - stepName (string) Report output files - durationTicks (UInt64) 275374 - depth (int) 2 - messages (vector) - Array[0] - m_Appendices (vector) - Array>[10] - data[0] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -4621170717555149581 - data[1] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -8657125485098368963 - data[2] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 6492385875147650225 - data[3] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 1106856995980594659 - data[4] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -4211197064891926221 - data[5] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -837533726333199562 - data[6] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 1152048598135469203 - data[7] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 8852773078263724989 - data[8] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -2209428987046021830 - data[9] (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) -8406665477514816739 - -ID: 1106856995980594659 (ClassID: 1126) PackedAssets - m_ShortPath (string) globalgamemanagers.assets.resS - m_Overhead (UInt64) 0 - m_Contents (vector) - Array[2] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 28 - packedSize (UInt64) 2796240 - offset (UInt64) 0 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Built-in Texture2D: Splash Screen Unity Logo - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 0 - classID (Type*) 28 - packedSize (UInt64) 2048 - offset (UInt64) 2796240 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - -ID: 1152048598135469203 (ClassID: 114) MonoBehaviour - m_ObjectHideFlags (unsigned int) 3 - m_CorrespondingSourceObject (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_PrefabInstance (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_PrefabAsset (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_GameObject (PPtr) - m_FileID (int) 0 - m_PathID (SInt64) 0 - m_Enabled (UInt8) 1 - m_EditorHideFlags (unsigned int) 0 - m_Script (PPtr) - m_FileID (int) 1 - m_PathID (SInt64) 13805 - m_Name (string) - m_EditorClassIdentifier (string) - -ID: 6492385875147650225 (ClassID: 1126) PackedAssets - m_ShortPath (string) sharedassets1.assets - m_Overhead (UInt64) 575 - m_Contents (vector) - Array[6] - data[0] (BuildReportPackedAssetInfo) - fileID (SInt64) 1 - classID (Type*) 150 - packedSize (UInt64) 97 - offset (UInt64) 528 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 0 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) - data[1] (BuildReportPackedAssetInfo) - fileID (SInt64) 2 - classID (Type*) 21 - packedSize (UInt64) 1064 - offset (UInt64) 640 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[2] (BuildReportPackedAssetInfo) - fileID (SInt64) 3 - classID (Type*) 21 - packedSize (UInt64) 268 - offset (UInt64) 1712 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[3] (BuildReportPackedAssetInfo) - fileID (SInt64) 4 - classID (Type*) 48 - packedSize (UInt64) 49400 - offset (UInt64) 1984 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[4] (BuildReportPackedAssetInfo) - fileID (SInt64) 5 - classID (Type*) 48 - packedSize (UInt64) 6964 - offset (UInt64) 51392 - sourceAssetGUID (GUID) - data[0] (unsigned int) 0 - data[1] (unsigned int) 0 - data[2] (unsigned int) 15 - data[3] (unsigned int) 0 - buildTimeAssetPath (string) Resources/unity_builtin_extra - data[5] (BuildReportPackedAssetInfo) - fileID (SInt64) 6 - classID (Type*) 83 - packedSize (UInt64) 92 - offset (UInt64) 58368 - sourceAssetGUID (GUID) - data[0] (unsigned int) 510047344 - data[1] (unsigned int) 1200191226 - data[2] (unsigned int) 2021230213 - data[3] (unsigned int) 2122331027 - buildTimeAssetPath (string) Assets/audio/audio.mp3 - -ID: 8852773078263724989 (ClassID: 382020655) PluginBuildInfo - m_RuntimePlugins (vector) - Array[1] - data[0] (string) nunit.framework - m_EditorPlugins (vector) - Array[8] - data[0] (string) Unity.Plastic.Newtonsoft.Json - data[1] (string) Unity.Plastic.Antlr3.Runtime - data[2] (string) zlib64Plastic - data[3] (string) liblz4Plastic - data[4] (string) JetBrains.Rider.PathLocator - data[5] (string) log4netPlastic - data[6] (string) lz4x64Plastic - data[7] (string) unityplastic -