| ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|

## Overview
The demand - and supply - of larger and larger meshes present some interesting problems. How do we store and share these meshes? How can we render them quickly in a real-time application? One solution is to
One class of these mesh simplification techniques is to determine an For this project, I implemented a quadric error metrics (QEM) mesh simplification program, and utilized an adaptation of the progressive error metrics structure to make the transformation reversible. ## Design DecisionsI made two crucial design decisions when implementing this project. The first decision I made was to not collapse boundary edges; while this limits the number of possible edge collapses, it also allows the mesh to retain its structure and general geometry longer.
The second decision I made was regarding how to store the edge collapses. The primary difficult inherent is determining which faces belong to which vertices once the vertex split has been done (a vertex split is the opposite of an edge collapse). I originally stored the positions of both vertices, the vertex IDs, and the common neighboring vertices (labeled V A potential edge collapse, with relavant vertices labeled.
I then used the heuristic that all faces from V ## ResultsThe following images show a gargoyle mesh, shunk down from 2,000 faces to 250. This transformation can be done in much less than a second.
## Download
My program may be downloaded and used for educational purposes. The usage is as follows: : The name of the *.m (or *.pm) file to load.*meshFile*: Optional; if presented, it will attempt to shrink the input mesh to*shrinkToFaces**shrinkToFaces*faces.
- 1 - Toggle displaying faces
- 2 - Toggle displaying edges
- r - Removes one edge
- t - Adds one edge (if one or more have been removed).
- s - Saves the file as mesh.pm in the current directory, including all edge collapse data. Sorry about the hard-coded filename. :)
- x - Collapses the mesh to its most minimalist form (least faces).
- q - Quits
| ||||||||||||