Database and display algorithms for interactive visualization of architectural models

This thesis describes a system for interactive walkthroughs of large, fully furnished architectural models. Realistic-looking architectural models with furniture may consist of millions of polygons and require gigabytes of data--far more than today's workstations can render at interactive frame rates or fit into memory simultaneously. In order to achieve interactive walkthroughs of such building models, a system must store in memory and render only a small portion of the model in each frame that is, the portion seen by the observer. As the observer "walks" through the model, some parts of the model become visible and others become invisible; some objects appear larger and others appear smaller. The challenge is to identify the relevant portions of the model, swap them into memory and render them at interactive frame rates as the observer's viewpoint is moved under user control. We have developed data structures and algorithms for indentifying a small portion of a large model to render and store in memory during each frame of an interactive walkthrough. Our algorithms rely upon an efficient display database that represents a building model as a set of objects, each of which can be described at multiple levels of detail. The database also contains an index of spatial cells with precomputed cell-to-cell and cell-to-object visibility information. As the observer moves through the model during an interactive walkthrough, visibility information for the cell containing the observer is fetched from the display database and used by the dynamic culling algorithms to identify a small superset of objects potentially visible to the observer. An optimization algorithm is used to select a level of detail and rendering algorithm with which to display each potentially visible object in order to meet a user-specified target frame time. Meanwhile, memory management algorithms are used to predict observer motion and to pre-fetch objects from disk that may become visible during upcoming future frames. We have implemented an interactive building walkthrough system using these data structures and algorithms. During tests, this system is able to maintain over ten frames per second with little noticeable detail elision during interactive walkthroughs of a building model containing over one million polygons.

[1]  A ZoltnersAndris,et al.  The Multiple-Choice Knapsack Problem , 1979 .

[2]  Schachter,et al.  Computer Image Generation for Flight Simulation , 1981, IEEE Computer Graphics and Applications.

[3]  Cliff B. Jones,et al.  A New Approach to the 'Hidden Line' Problem , 1971, Comput. J..

[4]  Carlo H. Séquin,et al.  Introduction to the Berkeley Unigrafix Tools , 1990 .

[5]  Dieter Baum,et al.  Interactive viewing of large geometric databases using multiprocessor graphics workstations , 1990 .

[6]  John G. Eyles,et al.  PixelFlow: high-speed rendering using image composition , 1992, SIGGRAPH.

[7]  Steven M. Rubin The representation and display of scenes with a wide range of detail , 1982, Comput. Graph. Image Process..

[8]  Michael Zyda,et al.  NPSNET: constructing a 3D virtual world , 1992, I3D '92.

[9]  BentleyJon Louis Multidimensional binary search trees used for associative searching , 1975 .

[10]  David J. DeWitt,et al.  Object and File Management in the EXODUS Extensible Database System , 1986, VLDB.

[11]  Delnaz Khorramabadi A Walk Through the Planned CS Building , 1991 .

[12]  T. Ibaraki,et al.  THE MULTIPLE-CHOICE KNAPSACK PROBLEM , 1978 .

[13]  Sartaj Sahni,et al.  Approximate Algorithms for the 0/1 Knapsack Problem , 1975, JACM.

[14]  Promotional literature. , 1970, South African medical journal = Suid-Afrikaanse tydskrif vir geneeskunde.

[15]  Don S. Batory GENESIS: A Project to Develop an Extensible Database Management System , 1986, OODBS.

[16]  Jack A. Orenstein,et al.  The ObjectStore database system , 1991, CACM.

[17]  P. Heckbert Simulating Global Illumination Using Adaptive Meshing , 1991 .

[18]  Jarek Rossignac,et al.  Multi-resolution 3D approximations for rendering complex scenes , 1993, Modeling in Computer Graphics.

[19]  Carlo H. Séquin,et al.  Adaptive display algorithm for interactive frame rates during visualization of complex virtual environments , 1993, SIGGRAPH.

[20]  Oscar H. Ibarra,et al.  Fast Approximation Algorithms for the Knapsack and Sum of Subset Problems , 1975, JACM.

[21]  Frederick P. Brooks,et al.  Walkthrough—a dynamic graphics system for simulating virtual buildings , 1987, I3D '86.

[22]  John A. Briggs,et al.  Getting graphics in gear: graphics and dynamics in driving simulation , 1988, SIGGRAPH.

[23]  Stephen Mann,et al.  Making radiosity usable: automatic preprocessing and meshing techniques for the generation of accurate radiosity solutions , 1991, SIGGRAPH.

[24]  Carlo H. Séquin,et al.  Visibility preprocessing for interactive walkthroughs , 1991, SIGGRAPH.

[25]  Jon Louis Bentley,et al.  Multidimensional binary search trees used for associative searching , 1975, CACM.

[26]  Colin Ware,et al.  Exploration and virtual camera control in virtual three dimensional environments , 1990, I3D '90.

[27]  Frederick P. Brooks,et al.  Towards image realism with interactive update rates in complex virtual building environments , 1990, I3D '90.

[28]  Donald P. Greenberg,et al.  Modeling the interaction of light between diffuse surfaces , 1984, SIGGRAPH.

[29]  Hamid Pirahesh,et al.  Extensions to Starburst: objects, types, functions, and rules , 1991, CACM.

[30]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[31]  Pat Hanrahan,et al.  A rapid hierarchical radiosity algorithm , 1991, SIGGRAPH.

[32]  Randy H. Katz,et al.  A case for redundant arrays of inexpensive disks (RAID) , 1988, SIGMOD '88.

[33]  Michael Stonebraker,et al.  The POSTGRES next generation database management system , 1991, CACM.

[34]  John M. Airey,et al.  Increasing update rates in the building walkthrough system with automatic model-space subdivision and potentially visible set calculations , 1990 .

[35]  Michael Potmesil,et al.  The pixel machine: a parallel image computer , 1989, SIGGRAPH.

[36]  Seth Teller,et al.  Visibility Computations in Densely Occluded Polyhedral Environments , 1992 .

[37]  Carlo H. Séquin,et al.  Management of large amounts of data in interactive building walkthroughs , 1992, I3D '92.

[38]  Bruce J. Schachter Computer Image Generation , 1983 .

[39]  Thurman A. Brown Interactive Object Displacement in Building Walkthrough Models , 1994 .

[40]  O. Deux,et al.  The O2 system , 1991 .

[41]  Srinivasan Seshan,et al.  RAID-II: Design and implementation of a large scale disk array controller , 1992 .

[42]  Kurt Akeley,et al.  Reality Engine graphics , 1993, SIGGRAPH.

[43]  Donald P. Greenberg,et al.  The hemi-cube: a radiosity solution for complex environments , 1985, SIGGRAPH.

[44]  Nina Amenta Finding a line transversal of axial objects in three dimensions , 1992, SODA '92.

[45]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[46]  Edwin Blake,et al.  A Metric for Computing Adaptive Detail in Animated Scenes Using Object-Oriented Programming , 1987, Eurographics.

[47]  James H. Clark,et al.  Hierarchical geometric models for visible surface algorithms , 1976, CACM.