Progressive Meshes

Apr 2008

A surface simplification software which produces high-quality approximations of triangle progressive mesh models. It generates progressive meshes models with desired number of mesh faces or compression ratio, and every contraction is recorded in the generated file. Currently only core operators of .smf input file format are supported.

This is a C++ implementation of Michael Garland's Surface simplification using quadric error metrics and Hugues Hoppe's Progressive meshes. This software runs slower than Garland's Qslim, but the results are somehow better in details. Since every contraction is recorded, further usage of the generated .pm file could be extended, for example, building level-of-detail models or 3D streaming.

Credit goes to Su Tao for GUI.


Source code is released under GNU General Public License (GPL)

Source Code Repository

Github Google Code Archive


1. Download and extract the mesh models.
2. Download the release and extract the command line tool pm.exe, see README.txt for instruction
or download GUI, then run PMGUI.exe.
3. Download smf viewer and load the compressed mesh models. (If using GUI, simply click on "View Output Model")

The latest version is 1.1. Now source code includes Visual Studio 2008 project file and Linux makefile.

Sample Usage

pm cow.smf -c 0.5 -o


source v1.1     release v1.1     viewer     model     GUI