Search Issue Tracker
By Design
Votes
1
Found in
2017.4
2018.4.12f1
2020.2
Issue ID
1228188
Regression
No
[Asset Bundles] Font assets are included in every AssetBundle that references them
Reproduction steps:
1. Open user's attached project
2. There is a Font in a project (Assets/Fonts)
3. The Font is referenced by some Scenes and a Prefab
4. Build the project for any Platform
5. This will execute "Builder.cs" Script and build Asset Bundles
6. Go to AssetBundles in the root directory of the project
7. Inspect the created Asset Bundles by checking their size (files with the Font will be 10MB+)
Expected result: Font file will only be included in project_fonts Asset Bundle
Actual result: all Scene and Prefab Asset Bundles that reference the Font have it included in them (scene_a, scene_b, prefab_c)
Reproducible with: 2017.4.38f1, 2018.4.19f1, 2019.3.6f1, 2020.1.0b2, 2020.2.0a4
Comments (1)
-
Peter77
Mar 18, 2020 15:36
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Required SpriteMask class (ID 331) is stripped when "Strip Engine Code" is enabled
- “Maximized serialized file backup not found” error is thrown when minimizing a window in a newly opened project
- Build stack trace contains invalid lines when building with IL2CPP using scripts with delegates containing generic types in the signature
- Entities Systems window has a “Show Full Player Loop” dropdown which does nothing when clicked after enabling “Show Full Player Loop”
- Entities Hierarchy Search “Show/Hide” button’s Lens Icon is blurry when the Editor is on an external monitor
Resolution Note:
User build code is set up to build each bundle independently from each other. Thus each bundle will not know about the setup of other bundles and will pull in all dependencies. To fix the build code, update the code to construct the AssetBundleBuild containing all asset bundles and assets necessary and pass the entire array into the BuildAssetBundles api, or use the BuildAssetBundles api that does not take an AssetBundleBuild array, and the data will be pulled from the Asset Database fields.