Legacy Documentation: Version 5.4
Asset Bundle Compression
Downloading AssetBundles

Asset Bundle Internal Structure

An AssetBundle is essentially a set of objects grouped together into a serialized file. It is deployed as a data file which has a slightly different structure depending on whether it is a normal bundle or a scene bundle.

Normal AssetBundle structure.

The internal structure of a Normal Asset Bundle
The internal structure of a Normal Asset Bundle

Streamed scene AssetBundle structure.

The internal structure of a Streamed Scene Asset Bundle
The internal structure of a Streamed Scene Asset Bundle

Both types are archived and compressed in a same way.

AssetBundle compression

The ArchiveFileSystem container has the following structure:

The ArchiveFileSystem container structure
The ArchiveFileSystem container structure

The Compressed blocks shown above might have chunk-based compression or stream-based compression. Chunk-based compression (LZ4) means that the original data is split to chunks (subblocks) of equal size and that chunks are compressed independently. You should use this if you want realtime decompression - random read overhead is small. Stream-based compression (LZMA) uses the same dictionary when processing the whole block, it provides the highest possible compression ratio but supports only sequential reads.

Asset Bundle Compression
Downloading AssetBundles