3D multiresolution Mesh eXchange format (3MX) Introduction
This document specifies the 3D multiresolution Mesh eXchange format (3MX). In designing 3MX, the goal was to create a lightweight open format that facilitates the distribution of our ContextCapture data, both online and toward 3rd party applications.
3MX relies on a multi-resolution approach to achieve fast retrieval of very large 3D mesh data. Together with the mesh compression used by the format, this makes data streaming possible for 3D rendering. Presently, both ContextCapture native viewer and our new WebGL viewer are able to read 3MX, locally or from a server.
The 3MX format was conceived with extensibility in mind. ContextCapture currently produces 3MX data using a single mesh compression type (OpenCTM), and a unique type of texture (JPG). However, the 3MX specification puts no limits on the representation types for either meshes or images.
The multi-resolution approach used in 3MX relies on a set of principles, described in the next section.