![]() ![]() ![]() |
To demonstrate my results I've implemented a plugin for Maya that lets you create a Progressive
Mesh from a Maya polymesh.
Once a polymesh has been turned into a Progressive Mesh you can change the model's "resolution"
(number of vertices or faces) in realtime. Furthermore you can control the reduction of the model by marking areas of the model as more important or less important. The reduction algorithm will take this information into account and reduce the less important regions most agressivly, while the important regions will be reduced less. To try the plugin out, please download the latest version and it's source. Tradtional: automatic creation of Progressive MeshesThere are several other names for Progressive Meshes: multiresolution meshes, continuous meshes, smooth levels of detail and so on. There has been quite some research on progressive meshes and the whole topic has been covered very well. (look at my Progressive Mesh links)Most approaches follow the same general pattern: Basically, you feed a source model into a reducer, and it computes the Progressive Mesh sequence. To compute the reduction sequence some sort of error metric is used. The goal is to reduce the model step by step without introducing a big "visual error". This error or difference is measured by the error metric. So basically the error metric is used to decide what to reduce next. One of the main points of distinction between different approaches is the error metric. (Another point of distinction is the way the mesh is reduced: vertex clustering, face collapse, edge collapse, etc.) What these algorithms also have in common, is that the Progressive Mesh sequence is generated completely automatically. On the left you can see some steps of such an automatic reduction. (Or click here to see more steps of this reduction sequence) In general, it is a good thing to have the computer automatically create the Progressive Mesh. This option is very useful for streaming geometry: you quickly get a preview model which progressivley refines until you view the object in it's full resolution. |
![]() |
![]() |
![]() |
![]() |