TAssetBundle
All copyrights to TAssetBundle belong to tigu77.
TAssetBundle is a powerful asset bundle integrated management system.
Good Points
- Very easy!
- Very powerful!
- Very simple!
- Customizable!
Key Advantages of TAssetBundle
Flexibility in Asset Bundle Configuration: Using TAssetBundleManifest, you can maintain the project folder structure while easily configuring asset bundles as desired and modifying them at any time.
Dependency Management Between Asset Bundles: TAssetBundle automatically manages dependencies between asset bundles, eliminating the need for developers to manually handle dependencies or names.
Build Cache: Unchanged assets are automatically excluded during the build process, saving build time and enhancing efficiency.
Path-Based Asset Loading: Operates solely based on asset paths rather than bundle or asset names, making it very convenient to use.
Two Play Modes in Editor: Play asset bundles directly or individual assets within the editor, speeding up development and providing flexibility.
Asset Reference Feature: Connect assets via drag-and-drop in the inspector, ensuring links remain intact even if assets are moved, thus enhancing workflow efficiency.
Support for Split Download: Split asset bundles based on assets, tags, or scenes for efficient downloading of necessary assets.
Asset Bundle Configuration Strategies: Utilize asset bundle configuration strategies to automatically configure bundles as needed.
Asset Reference Tracker: Monitor active assets and asset bundles during editor runtime, facilitating debugging and optimization.
Asset Bundle Dependency Checker: Preview how asset bundles are interconnected to preemptively prevent dependency issues.
Security Features: Encrypt asset bundles and catalogs to enhance security.
Built-in Web Server for Remote Download Testing: Provides a feature to download asset bundles from remote locations via an embedded web server during editor play, enabling immediate testing in a local environment.
Cross-Platform Functionality: TAssetBundle operates on all major platforms (Windows, Mac, iOS, Android, WebGL, etc.), ensuring compatibility across diverse environments.
Full Source Code Inclusion
These features collectively enhance asset management, asset downloading, deployment efficiency, security, and overall workflow efficiency in Unity development.
Content Update Flow
- Configure asset bundles
- Configure manually
- Configure Automatically Using Composition Strategies
- Build the AssetBundle
- Upload the result to a remote storage
- Finish!
Change Logs
3.11.0
- When building AssetBundles, an option has been added to output built-in AssetBundles to a separate folder. The option is named "Builtin Asset Bundles Use Separate Folder"
- Built-in AssetBundles that are compressed with LZMA (smaller size) now undergo recompression to LZ4 the first time they are accessed for use.
- Fixed to not use Unity's default AssetBundle provider since native caching is not available on the WebGL platform. Instead, a specific managed AssetBundle provider is used. This fixes a bug in previous versions where the download size was unknown when using Unity's default AssetBundle provider.
3.10.0
- Added an option to automatically abort web requests when download latency exceeds a specified time. (This feature is intended to resolve situations where there is no response for up to 2 minutes when switching to Wi-Fi.)
- Fixed an issue where apps would throw an exception saying there was no catalog when not using TAssetBundle.
3.9.2
- Fixed a bug where references would be lost when using AssetRef inside an asset that has already been AssetBundled when playing in AssetBundle mode in the editor.
3.9.1
Fixed so that if an exception occurs during AssetBundle building, the exception is also passed to the parent. (this is mainly an issue where the next command is executed even if an exception occurs when building with a script)
Improved way of catching duplicate assets in TAssetBundleManifest.
3.9.0
- Added Asset Dependency Finder (Right click on the asset in the project window [TAssetBundle] Run Dependency Finder)
3.8.1
- Fixed bug where assets were not excluded from the build cache if only their properties were changed
3.8.0
- Build number has been added to settings. When loading a catalog, it has been modified to use the catalog with the higher build number between the local catalog and the remote catalog.
3.7.3
- Fixed bug where local AssetBundle could not be found on Android
3.7.2
- Fixed initialization in AssetManager to support Unity EnterPlayMode.
3.7.1
- Fixed bug where disk space check was incorrect in SpecificAssetBundleProvider
3.7.0
- The scene path to be saved in the catalog has been modified to be saved as is rather than converted to lowercase letters.
- Changed the remote url to one for more efficient networking and simplicity.
- Cleaned up source code and added help menu
3.6.1
- Fixed a bug where an error occurred during build if an embedded asset bundle exists when using 'Append Hash From File Name' in the build options in Settings.
- Fixed a bug where an error occurred in the log when reading a remotely updated AssetBundle as if it were an AssetBundle included in the build.
3.6.0
- WebGL platform supports all Unity versions and bug fixes
- Limitations related to the WebGL platform: When using UnityRemoteAssetBundleProvider in versions after 2022, the cache information of remotely received asset bundles cannot be obtained. We recommend disabling the Use UnityRemoteAssetBundleProvider option.
3.5.0
- Added tag rename function to tag editor
- Added context menu to tag editor
- Added a function to check the manifest using the tag in the tag editor
3.4.0
- Added ignore assets to allow specific assets to be ignored in the manifest
- Efficient modifications to the method for finding embeddable assets
3.3.0
- Fixed a bug where the AssetBundle could not be released when the AssetBundle scene loaded with Additive was unloaded
- Fixed a bug where dependent AssetBundles would not be rebuilt if they were not cached
- Support scene loading from scene path
- Support for loading progress of assets and scenes
- Added scene activation callback after scene loading
3.2.1
- Fixed bug with AssetRef not updating in editor
3.2.0
- Added Manual
- Added Api Documentation
- Added api comment
- Added TAssetBundle, TAssetBundle.Editor asmdef
- Class scope refactoring
3.1.0
- Added Runtime Asset Reference Tracker
- Added AssetBundle Dependency Checker
3.0.0
- Added TAssetBundle Browser
- Added AssetReference
- Added Web Server Test
- Newly developed simple tag system
- Added downloads as Assets and AssetReference
- Optimize asset bundle loading
- Build cache bug fixed
- TAssetBundleManifest bug fixed
- WebGL support
2.0.0
- added catalog compress and encryption
- added asset bundle encryption
- added inherit based tag system
- check download size based on tags, download based on tags
- optimize and refactoring
- minor bug fixes