Benjamin Eikel's homepageStudy

Master's thesis

In the year 2009 I have written my Master's thesis with the subject “Sichtbarkeitsunterteilungen für riesige 3D-Modelle” (visibility subdivisions for huge 3D models). My thesis was supervised by Dr. Matthias Fischer and Claudius Jähn.

Abstract

To render a 3D model efficiently on the graphics hardware of a computer, the parts of the 3D model visible from the current camera position have to be determined. The information about the visibility of the geometry can be determined during the rendering of the 3D model again and again or gathered and saved in a preprocessing step. This information needs a lot of storage space due to the enormous complexity of the visibility and can exceed the capacity of computers quickly.
The task of this Master's thesis was to investigate how visibility information still can be gained and processed for huge 3D models. An algorithm has been developed, that is able to preprocess huge 3D models, that uses the capabilities of modern graphics hardware to gather the visibility information and that stores that information in a data structure called visibility subdivision. The visibility subdivision consists of cells, that represent a three-dimensional volume and contain a list of geometry visible from there. The algorithm can be executed first on a high-performance computer to create the visibility subdivision and reduce it to a memory budget chosen by the user. With this reduced visibility subdivision the real-time rendering of 3D models on low-performance hardware is possible.

Screenshots

Click the images for an enlarged view. The model shown on the screenshots is the Power Plant Model.

Power Plant Model - k-D tree
Subdivision of the Power Plant Model by a k-D tree into smaller objects. Each object is shown in a different color.
Power Plant Model - Rendering
Rendering of the Power Plant Model by using a visibility subdivision and a limit of 500,000 rendered triangles.
Copyright 2007-2012 Benjamin EikelLast modification: 2009-11-13T22:21:32+01:00Switch language: Deutsch English