IV3D File

3D File format, developed by Pelikan Software for the efficient transmission and fast loading of 3D scenes and models by WebGL applications. This format is compact, fast to decompress and very easy to parse.

One of goals is fast loading, so file should be small and easy to decompress. Smaller file should be faster loaded, however usage of compilcated algorithms may cause slow decompression in browser, in result first image may appear later in comparision to slightly bigger file and simper compression technology.

In rersult we have compact 3d files, small, simple and fast decoding code.

Contents

File contains:

  • Compressed scene tree in JSON format.
  • Compressed meshes
  • Optionally embedded textures in PNG or JPEG format

Compression

Compression is based on ZLib libray, same as in zip files. It has quite good compression and fast decompression speed. LZMA is not used because of slower decompression. There is no zip header and zip records. Files inside are identified by numbers, instead of names - for faster and simpler loading code.

Geometry

Meshes are in Binary Lossy - format.

  • Points are quantinized to 16 bits.
  • Normals are converted to polar coordinates and quantinized to single 32 bit. Normals equal to auto calculated normals are not stored.
  • UV are quantinized as well.
  • Face indicies are compressed.

In this article