Coding polygon meshes as compressable ASCII

  • Authors:
  • Martin Isenburg;Jack Snoeyink

  • Affiliations:
  • University of North Carolina at Chapel Hill;University of North Carolina at Chapel Hill

  • Venue:
  • Proceedings of the seventh international conference on 3D Web technology
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

Because of the convenience of a text-based format 3D content is often published in form of a gzipped file that contains an ASCII description of the scene graph. While compressed image, audio, and video data is kept in seperate binary files, polygonal data is usually included uncompressed into the ASCII description, as there is no widely-accepted standard for compressed polygon meshes.In this paper we show how to incorporate compression of polygonal data into a purely text-based scene graph description. Our scheme codes polygon meshes as ASCII strings that compress well with standard compression schemes such as gzip. The coder is lossless when only the position and texture coordinate {\em indices} are coded. If loss is acceptable, positions and texture coordinates can be quantized and delta coded, which reduces the file size further. The gzipped scene graph description files decrease by a factor of two (six) in size when the polygon meshes they contain are coded with the lossless (lossy) ASCII coder.Furthermore we describe in detail a proof-of-concept implementation that uses the Shout3D~\cite{shout3d} pure java API---a plugin-less Web3D player that downloads all required java classes on demand. Our prototype is an extremely light-weight implementation of the decoder that can be distributed at minimal additional cost. The size of the compiled decoder class is less than 6KB by itself and less than 3KB if included into a compressed archive of java class files. It makes no use of specific features of the Shout3D API. Hence, our method will work for any scene graph API that allows (a) to extend the node set and (b) to store the scene graph as ASCII.