Streaming Compression of Triangle Meshes
Martin Isenburg Peter Lindstrom Jack Snoeyink
Current mesh compression schemes encode triangles and vertices in
an order derived from systematically traversing the connectivity
graph. These schemes struggles with gigabyte-sized mesh input
where the construction and the usage of the data structures that
support topological traversal queries becomes IO-inefficient and
requires large amounts of temporary disk space. Furthermore they
expect the entire mesh as input. Meshes cannot be compressed
until their generation is complete so that they have to be stored
at least once in uncompressed form.
We radically depart from the traditional approach to mesh compression
and propose a scheme that incrementally encodes a mesh in the order
it is given to the compressor using only minimal memory resources.
This makes the compression process basically transparent to the user
and practically independent of the mesh size. This is especially
beneficial for compressing large meshes where previous approaches
spend significant amounts of memory, disk space, CPU time, and file
I/O on pre-processing, whereas our scheme can start compressing after
having been given the first few triangles.
main contributions: compression (not just decompression) of meshes in a streaming manner
meshes are compressed in increments of triangles and vertices
writing and reading compressed meshes becomes user-transparent
practical independence of mesh size. scales to arbitrary large input
local instead of global reordering for connectivity compression
compression can preserve either exact or global triangle order
geometry compression that does not nead a-priori bounding box information
[ils-sctm-05.pdf], Martin Isenburg, Peter Lindstrom, Jack Snoeyink, Streaming Compression of Triangle Meshes, Proceedings of 3rd Symposium on Geometry Processing, pages 111-118, July 2005.
[ils-sctm_abs-05.pdf] (abstract), Martin Isenburg, Peter Lindstrom, Jack Snoeyink, Streaming Compression of Triangle Meshes, presented as a sketch at SIGGRAPH'05, Los Angeles, August 2005.
[il-sm-05.pdf slides], Martin Isenburg, Peter Lindstrom, Streaming Meshes, Proceedings of Visualization'05, pages 231-238, October 2005.
[il-sctvm-06.pdf] Martin Isenburg, Peter Lindstrom, Stefan Gumhold, Jonathan Shewchuk, Streaming Compression of Tetrahedral Volume Meshes, Proceedings of Graphics Interface 2006, pages 115-121, June 2006.
[ig-ooccgpm-03.pdf slides] Martin Isenburg, Stefan Gumhold, Out-of-Core Compression for Gigantic Polygon Meshes, Proceedings of SIGGRAPH'03, pages 935-942, July 2003.
download: (updated on October 17th, 2007)
source code and programming API, including MSVC 6.0 project files smc_api.zip (8 MB)
demo software and example models: smc_demo.zip (37 MB)
slides sctm.ppt (+ embedded videos)