ContextCapture User Guide

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.

The intended usage of 3MX is:
  • Online distribution, by using our new WebGL viewer.
  • Interoperability with other Bentley Systems products, such as MicroStation.
  • Interoperability with 3rd party applications (3D GIS).

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.

All this said, the main characteristics of 3MX are:
  • Web friendly: easy to load in browsers
  • Compactness
  • Optimized for streaming: fast display possible.
  • Extensible
  • Multi-resolution representation: for handling very heavy data.

The multi-resolution approach used in 3MX relies on a set of principles, described in the next section.