Development of a framework for resource-management in interactive VR-environments
Highly detailed graphic objects as needed for industrial visualizations and virtual reality applications use up vast amounts of memory resources. To allow interactive real-time rendering the data and with it the quality and completeness has to be reduced. In the context of the scene graph system OpenSG the Memory Management Framework developed here will be used to secure constant quality, completeness and interactivity. The Framework takes advantage of Levels of Detail and allows the selective loading of only those detail levels needed to create the optimal quality for the display's limited resolution. The neglecting of redundant data saves large amount of memory, which is needed to display highly detailed features. The Framework uses a flexible customisable Memory Pipeline build around a central priority queue. The transfer of data between two types of memory, for example hard disc and system memory, is done by Transitions, which allows easy extension through the introduction of a new memory type and its transition. The concept is designed for asynchronous processing as memory instances request allocation of data from their predecessor in the pipeline. The managed objects such as models and textures hold their individual levels of detail as the atomic objects of management. These are managed independent of their type, as their special features are expressed in the interface and attributes of managed object subclasses. This makes the introduction of new types through subclasses of the general managed object possible. Texture Management is already included as part of this thesis. Priorities are handled through application specific modular quality managers to be registered with the framework. This leaves room for optimisation by the user of the framework. The quality manager built for priority handling of textures does so by calculating the visible resolution through bounding information given by the application. The result of this thesis is a customisable framework for memory management that allows interactive visualization of scenes that otherwise could not be rendered in their full extend. As long as multiple levels of detail exist, there are no limits set for the size of the scene to be rendered.
Darmstadt, FH, Dipl.-Arb., 2003