A Memory Insensitive Technique for Large Model Simplification

Peter Lindstrom
Lawrence Livermore National Laboratory

Claudio T. Silva
AT&T Labs-Research

Proceedings of IEEE Visualization 2001, October 2001, pp. 121-126, 550.

PDF (1.2 MB)
Slides (14 MB)


Abstract

In this paper we propose three simple, but significant improvements to the OoCS (Out-of-Core Simplification) algorithm of Lindstrom [Lin00] which increase the quality of approximations and extend the applicability of the algorithm to an even larger class of compute systems.

The original OoCS algorithm has memory complexity that depends on the size of the output mesh, but no dependency on the size of the input mesh. That is, it can be used to simplify meshes of arbitrarily large size, but the complexity of the output mesh is limited by the amount of memory available. Our first contribution is a version of OoCS that removes the dependency of having enough memory to hold (even) the simplified mesh. With our new algorithm, the whole process is made essentially independent of the available memory on the host computer. Our new technique uses disk instead of main memory, but it is carefully designed to avoid costly random accesses.

Our two other contributions improve the quality of the approximations generated by OoCS. We propose a scheme for preserving surface boundaries which does not use connectivity information, and a scheme for constraining the position of the ``representative vertex'' of a grid cell to an optimal position inside the cell.


3
Figure 3:  470 million triangle isosurface of entire fluid dynamics dataset.
4a 4b 4c
4a.  original; T = 69,451
4b.  w/o boundary quadrics; T = 14,761
4c.  w/ boundary quadrics; T = 14,761
5a 5b 5c
5a.  original; T = 871,306
5b.  without clamping; T = 20,292
5c.  with clamping; T = 20,292
6a 6b
6a.  original; T = 467,614,855
6b.  without boundary quadrics; T = 26,086,125
6c 6d 6e
6c.  with boundary quadrics; T = 94,054,242
6d.  with boundary quadrics; T = 26,086,125
6e.  with boundary quadrics; T = 6,823,739