Katherine Blizard implemented a mesh simplifier to implement levels of detail for a 476 Project called "Bartholomew the Unhappy Pepper". The Simplifier consists of the combination of Hoppe's progressive mesh algorithm, but using Quadric error metrics in place of the change of energy
The program shows a mesh input (.obj required) from a command line paramater, with original faces drawn in purple. As the user presses P, the mesh will simplify, with adjusted faces drawn in green
When the mesh's vertex count reaches 80%, 60%, 40%, 20% 10% and 5% of the original count, it outputs a new simplified .obj file, resulting in up to six new meshes.
- H. Hoppe - Progressive Meshes: contributed bulk of algorthm
- M Garland, PS Heckbert - Surface Simplification using Quadric Error Metrics: contributed error metrics
- Using C++ and OpenGL
- The application has a plethora of C++ STL data structures. The priority queue isn't getting the optimal order of errors per vertex. It produces satisfactory results for a Level of Detail implementation (few people can really tell while playing Bartholomew), but it isn't the optimal output
Download Mesh Simplifier Linux binary