NLM Home Page VHP Home Page


Next: Browsing 3D Models Up: Title Page Previous: Color Retention Index: Full Text Index Contents: Conference Page 

Progressive Mesh

     The entire algorithm is designed to create what Hoppe coined as a progressive mesh data structure [8] [9]. Since we have been recording edge collapses during the decimation phase we can use this history to reduce the mesh from its original state to a reduced state. Another property of this edge collapse operation is that it has an inverse. The inverse of an edge collapse is a vertex split. With the history of vertex splits, derived from the list of the edge collapses, we can arbitrarily increase the number of vertices and faces in the mesh. This control of the relative complexity of the mesh allows us to add detail when needed, and the detract detail when it is not needed, in real-time. Another property of a progressive mesh is that its storage is less than that of standard meshes. Progressive meshes also lead to the use of progressive refinement over networks, such as a progressive jpeg does. The simplified base mesh is first transmitted, and successive vertex splits are then transmitted, therefore increasing the complexity of the mesh over time.

     A useful representation of a progressive mesh data structure would be that of a vertex hierarchy. Each vertex of the base mesh (simplified mesh) would be the root of a binary tree of its ancestors. A vertex v1 can be split into two vertices v2 and v3, each of which can be split themselves. The original mesh would be the corresponding leaf nodes of the collective forest. A current representation of a full mesh in this forest data structure would be a collection of nodes, where no two nodes share a parent child relationship. Different levels of detail can be achieved by quickly extracting nodes from this forest.

     A problem with a progressive mesh strategy in our case is that for each addition or deletion of a vertex in our mesh, a new mutually exclusive texture map would have to be generated. Since creating a different texture per addition or deletion would be highly impractical, set levels of detail would have to be constructed for the mesh to be textured. Hoppe introduced a method of seamlessly morphing (geomorph) from on level of detail to another with the use of the progressive mesh structure. If we wanted to use such a system, the mesh could not be textured as the change was being made. An obvious visible discontinuity would be apparent.

     Research is currently being done on using a construction in topology known as a harmonic map [6]. If we were to take a typical polygonal mesh, constructing a 2D harmonic map of the 3D mesh would be feasible. The construction is the optimal flattening on the 3D mesh onto a 2D plane. If we were to take the original mesh and flatten it, this could be used to create a texture map of the original color data with unique properties. The triangles in the texture map would be properly connected in the plane, so that if we were to take a subset of the vertices (a reduced mesh), a triangle subset of that mesh would contain the correct color allocation of that triangle in the reduced mesh. This texture map would be extremely useful for texturing a progressive mesh data structure, in that the texture of an arbitrary level of detail in the mesh would be contain in this one super texture.
 


Next: Browsing 3D Models Up: Title Page Previous: Color Retention Index: Full Text Index Contents: Conference Page