Blast - A Binary Large Structured Transmission for the Web

Jan Sutter, Kristian Sons, and Philipp Slusallek

Web3D '14 Proceedings of the Nineteenth International ACM Conference on 3D Web Technologies

[bibtex] [paper] [slides]


Recent advances in Web technology, especially real-time 3D content using WebGL, require an efficient way to transfer binary data. Images, audio and video have respective HTML tags and accom- panying data formats that transparently handle binary transmission and decompression. 3D data, on the other hand, has to be handled explicitly by the client application. In contrast to images, audio and video, 3D data is inhomogeneous and neither common formats nor compression algorithms have been established for the Web.

Despite the many existing formats for binary transmission of 3D data none has been able to provide a general binary format for all kinds of 3D data including meshes, textures, animations, and materials. Existing formats are domain-specific and fixed on a certain set of input data and thus too specific to handle other types of data.

Blast is a general container format for structured binary transmission on the Web that can be used for all types of 3D scene data. Instead of defining a fixed set of encodings and compression algorithms Blast exploits the code on demand paradigm to provide a simple yet powerful encoder-agnostic basis to leverage existing domain-specific solutions and compression techniques. Because streaming is of primary importance for a good user experience Blast is designed on the basis of self-contained chunks to enable JavaScript clients to utilize Web Workers for parallel decoding and to provide early feedback to the user.