Although the performance of graphics accelerators is increasing rapidly, the demand for even higher performance to handle more complex virtual environments is increasing too. To overcome this demand for rendering performance, a technique called multi-resolution modeling is attracting a lot of attention. It is based on the fact that distant objects occupy smaller screen areas after projection than nearby objects do. Hence, details of distant objects are less visible to the viewer than those of the nearby objects. To take advantage of this situation, multi-resolution modeling optimizes the rendering performance by representing nearby objects with more detailed models, containing more triangles, but distant objects with simplier models, containing fewer triangles.
We have been developing multi-resolution techniques, in particular real-time techniques, since the beginning of 1995. All our methods developed are based on collapsing triangle edges. Each edge collapse causes two adjacent triangles to be eliminated, while each edge split (edge uncollapse) causes two triangles to be inserted. Our earlier method pre-computes a sequence of edge collapses. Real-time modification of model resolution can be achieved by following this pre-computed sequence in the forward (resolution increment) or backward (resolution decrement) order. We refer to this method as Simplification List. This method turned out to be very close to the progressive meshes proposed by Hugues Hoppe.
Click here for images produced by applying the simplification list on a face model and on a landscape model.Later, we refined the simplification list into an adaptive multi-resolution method. Instead of uniformly adjusting the resolution of a model, the refined method allows adjusting the resolution of the model locally so that interested regions may be in higher resolution while the rest in lower resolution. This results in a better optimization of the performance of the graphics acclerators. To do this, we basically divide a model into regions according to some criteria. A simplification list is then created for each region. The resolution change of each region follows the predefined order. However, the resolution of different regions may be changed independently according to some real-time factors such as the user's viewing direction and line of sight.
Click here for an animation produced by applying the adaptive multi-resolution method on a face model.Recently, we have developed a more flexible multi-resolution method to support distributed virtual environments. This method allows visually important parts of an object model to be transmitted to the client at higher priority than the less important parts. (The determination of visually important parts of an object model is based on some real-time factors such as the user's line of sight, object distance and regions of interest.) The transmitted model can be progressively reconstructed at the client for rendering. The main feature of this method is that we store the sequence of edge collapses in the form of a hierarchy, instead of a linear list, with minimal neighboring dependency. We are now developing our next generation of distributed virtual walkthrough system based on this model transmission method.
Click here for images produced by flying through a terrain surface using the new method. (The red rectangle indicates the area of interest.)
Click here for a gzip'ed animation sequence (3.3M in size) of selectively and progressively transmissing a mummy model. (The red rectangle indicates the area of interest.)