CFS

Chunked File System

CFS is a virtual file system for video games and game engines. It packs multiple files inside bundles and navigate through the system with an index file. It reduces the number of files. CFS allows you to divide files to place different parts in different bundles.

CFS se decompose en deux parties:

CFS has several advantages:

I designed and implemented the CFS because of a limitation of the number of files with Android systems. While working on a project, I realized that the more files there were in a folder on Android, the slower it was to read and write the files (About 10 min to transfer a 50Ko file in a folder with already 3500 images). With the CFS, I managed to group 40000 textures (about 1.5Go) in 8 files of 200Mo each.

Implementations


Unity

CFS has a Unity implementation. This implementation supports both JSON format and binary format. Sources

Packer

Packer is a tool written in python to create the index and the containers from a set of files. It is a naive implementation designed to arbitrarily group files together. Sources