Efficiently keeping an optimal stripification over a CLOD mesh

Porcu M. B. , Sanna N., Scateni R.

In this paper we present an algorithm of simple implementation but very effective that guarantees to keep an optimal stripification (in term of frames per seconds) over a progressive mesh. The algorithm builds on-the-fly the stripification on a mesh at a selected level-of-details (LOD) using the stripifications built, during a pre-processing stage, at the lowest and highest LODs. To reach this goal the algorithm uses two different operations on the dual graph of the mesh: when the user changes the mesh resolution the mesh+strips local configuration is looked up in a table and, after a vertex split operation, the strips are rearranged accordingly, immediately after a sequence of special topological operation called “tunneling” with short tunnel length are started till the number of isolated triangles in the mesh get under 10% of the total number of strips. Moreover, when the user select a relevant LOD it can trigger a tunnelling with higher tunnel length to optimize the stripification. Using these operations we are able to keep the progressive mesh stripified in a time of the same order of magnitude of the time needed to change the resolution and, only if required, to perform a time-demanding optimization. Only the stripifications generated by explicit user requests are stored to serve as optimal starting points for further inspection. In this way we can always feed the graphics board with a triangle strip representation of the mesh at any LOD.
The results we present demonstrate that we can tightly couple each sequence of vertex splits used to increase the resolution of the progressive mesh with: a simple rearrangement of the strips followed by a very cheap stripification search with a predetermined strategy. A strong feature of the method is that the local rearrangement leads to an implementation that keeps almost constant the execution time. The results of the visualization benchmarks are very good: comparing the rendering of the stripified (using this strategy) and the non stripified meshes we can, on average, double the frames per seconds rate.