Skip to content

Conversation

@SkowronskiAndrew
Copy link
Collaborator

The AssetBundleHandler got lost in recent code change, so restore it.

Add a few cross links to the new Addressables Build Layout parsing.

Fix the section "Matching content back to the source asset" because it wasn't explaining that some source asset paths actually are available in the build output (for AssetBundle explicit assets, and the scenes in a Player Build)

The AssetBundleHandler got lost in recent code change so restore it.

Add a few cross links to the new Addressables Build Layout parsing.

Fix the section "Matching content back to the source asset" because it wasn't explaining that some source asset path are available in the build output (for AssetBundle explicit assets, and Player build scenes)
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR restores the AssetBundleHandler that was inadvertently removed in a recent code change, and improves documentation clarity around asset path availability in build outputs. The changes clarify that only explicitly added assets (for AssetBundles) and scenes (for Player builds) have their source paths recorded in the build output, while implicitly included assets do not.

Key Changes:

  • Restored AssetBundleHandler registration to populate the assets table
  • Updated documentation to clarify which asset paths are available in build outputs
  • Added cross-references to Addressables Build Layout parsing documentation

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
Documentation/analyze-examples.md Clarified asset path availability in build outputs and added cross-references to Addressables features
Analyzer/SQLite/Writers/SerializedFileSQLiteWriter.cs Restored registration of AssetBundleHandler to re-enable assets table population
Analyzer/SQLite/Parsers/SerializedFileParser.cs Added .hash to the list of ignored file extensions
Analyzer/SQLite/Handlers/AssetBundleHandler.cs New handler class for processing AssetBundle objects and populating assets table
Analyzer/README.md Updated file reference and added documentation about supporting other file formats

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

{
".txt", ".resS", ".resource", ".json", ".dll", ".pdb", ".exe", ".manifest", ".entities", ".entityheader",
".ini", ".config"
".ini", ".config", ".hash"
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ignore .hash files - just to reduce the false alarm errors when parsing a "Library\com.unity.addressables" folder

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice catch.

m_InsertCommand?.Dispose();
m_InsertDepCommand?.Dispose();
}
} No newline at end of file
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Restored file, not new code

* Regular AssetBundle builds create [.manifest files](https://docs.unity3d.com/Manual/assetbundles-file-format.html), which contain information about the source assets and types.
* Addressable builds do not produce BuildReport files, nor .manifest files. But there is similar reporting, for example the [Build Layout Report](https://docs.unity3d.com/Packages/com.unity.addressables@2.4/manual/BuildLayoutReport.html).

* Addressable builds do not produce BuildReport files, nor .manifest files. But UnityDataTools supports analyzing the [Addressables Build Reports](addressables-build-reports.md) and will populate the `addressables_build_explicit_assets` and `addressables_build_implicit_assets` tables.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tim - in the test project i was looking at there weren't any implicit assets, so i wasn't able to confirm that that addressables_build_implicit_assets table gets populated. Hopefully my guess based on the name is correct.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's actually addressables_build_data_from_other_assets. Not my favorite name, but that's coming from the name of the object so keeping it consistent with the data.

Given an explicit asset id and build number this will get you a list of implicit dependencies:

SELECT a.explicit_asset_id, b.id, b.asset_path, b.asset_path 
  FROM addressables_build_explicit_asset_internal_referenced_other_assets a, 
       addressables_build_data_from_other_assets b
 WHERE a.internal_referenced_other_asset_rid = b.id 
   AND a.build_id = b.build_id;
   AND a.explicit_asset_id = 5092 
   AND a.build_id = 3 

In my case my Pillar_Stone_Corner.prefab has an fbc, a material, and a texture in the other assets table.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I pushed up this SQL in the Addressables documentation since it seemed useful.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@SkowronskiAndrew SkowronskiAndrew force-pushed the addressablse-buildlayout-doctweaks branch from e287244 to 3810f3d Compare October 24, 2025 11:52
@SkowronskiAndrew SkowronskiAndrew merged commit a4894c4 into main Oct 24, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants