Table Of ContentInformatik-Fachberichte 163
Herausgegeben von W. Brauer
im Auftrag der Gesellschaft fOr Informatik (GI)
Heinrich MOiler
Realistische
Computergraphik
Algorithmen, Datenstrukturen
und Maschinen
Springer-Verlag
Berlin Heidelberg New York
London Paris Tokyo
Autor
Heinrich MOiler
Institut tar 8etriebs- und Dialogsysteme
Universitat Karlsruhe
Postfach 6380, 7500 Karlsruhe
CR Subject Classification (1987): 1.3.7, F.2.2
ISBN-13: 978-3-540-18924-4 e-ISBN-13: 978-3-642-73416-8
DOl: 10.1007/978-3-642-73416-8
CIP-Titelaufnahme der Deutschen Bibliothek
Miller, Heinrich:
Realistische Computergraphik : Algorithmen, Datenstrukturen u. Maschinen /
Heinrich Maller. - Berlin; Heidelberg; New York; London; Paris; Tokyo: Springer, 1988
(Informatik-Fachberichte; 163)
Zugl.: Karlsruhe, Univ., Habil. -Schr.
NE:GT
Dieses Werk 1st urheberrechtlich geschOtzl Die dadurch begrOndeten Rechte, insbesondere
die der OberselZung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabel
len, der Funksendung, der Mikroverfilmung oder der Vervielfaltigung auf anderen Wegen und der
Spelcherung In Datenverarbeitungsanlagen, bleiben, auch bei nur auszugswelser Verwertung,
vorbehalten. Eine Vervielfaltigung dleses Werkes oder von Teilen dieses Werkes 1st auch im
Einzelfali nur in den Grenzen der gesetzlichen Bes!lmmungen des Urheberrechtsgesetzes der
Bundesrepublik Deutschland vom 9.September1965 in der Fassung Yom 24.Juni1985 zulassig.
Sle 1st grundsl!.tzlich vergOtungspflichtig. Zuwiderhandlungen unterliegen den Strafbestim
mungen des Urheberrechtsgesetzes.
© by Springer-Verlag Berlin Heidelberg 1988
Druck-und Bindearbeiten: Weihert-Druck GmbH, Darmstadt
2145/3140-543210
Vorwort
Die Manipulation und Darstellung raumlicher Szenen ist eines der schwierigsten, damit aber
auch herausforderndsten Teilgebiete der graphischen Datenverarbeitung. Dieser Text gibt zum
einen einen kompakten Uberblick iiber den heutigen Stand, der durch das Einbeziehen von
optischen Effekten in die Szenenmodellierung und die bildliche Darstellung gepragt ist. Zum
anderen wird anhand der detaillierten Un tersuchung der Erzeugung fotorealistischer Bilder
durch das Strahlverfolgungsverfahren die Machtigkeit der von der algorithmischen Geometrie
heute gebotenen Werkzeuge zur Entwicklung effizienter Algorithmen demonstriert. Es wird so
eine Verbindung zwischen der anwendungsbezogenen Computergraphik und den Grundlagen
untersuchungen der Algorithmen- und Datenstrukturtheorie hergestellt, die fiir beide Gebiete
gleich fruchtbar und generell wiinschenswert ist.
Das Strahlverfolgungsverfahren (Ray Tracing) ist ein als aufwendig geltendes, aber beziiglich
Darstellungsqualitat sehr leistungsfahiges Verfahren zur Erzeugung realistisch wirkender
ftasterbilder aUB raumliChen Daten. Sein zentrales geometrisches Problem ist es, fiir eine Menge
von Strahlen in einer Menge geometrischer Szenenobjekte im Raum ein erstes getroffenes Ob
jekt zu bestimmen. In dieser Arbeit werden die Komplexitat dieses Problems, etwas verall
gemeinert, untersucht und effiziente Datenstrukturen zu seiner Losung angegeben. Folgende
Strategien werden vorgeschlagen und analysiert:
(1) Die Szenenobjekte werden in eine Datenstruktur vorverarbeitet, die dann mit beliebigen
Strahlen abgefragt wird. Das ist die klassische Vorgehensweise bei der Bilderzeugung
durch Strahlverfolgung.
(2) Die Strahlen werden in eine Datenstruktur vorverarbeitet, die dann mit den Szenenobjek
ten abgefragt wird. Das ist eine Verallgemeinerung des Tiefenpufferverfahrens zur Sicht
barkeitsberechnung, bei dem die Vorverarbeitung allerdings trivial ist.
(3) Sortiertes Abarbeiten der Objekte bei Mitfiihren der bisherigen Treffersituation. Das ist
eine Verallgemeinening des Prioritatsverfahrens zur Sichtbarkeitsberechnung.
Fiir die beiden ersten Vorgehensweisen werden untere und obere Schranken des Anfragezeit
Speicher(Vorverarbeitungszeit )-Tradeoffs fiir iso-orientierte Rechtecke als Szenenob jekte
hergeleitet. Die unteren 5chranken basieren auf einem aus dem Modell von Fredman fiir dy
namische Abzahlprobleme abgeleiteten Berechnungsmodell. Die Kernaussage ist, dafi in diesem
Modell ein Anfragezeitaufwand von O(polylogn) bei einem Speicheraufwand von O( n polylogn)
unmoglich, d.h. die Strahlanfrage relativ aufwendig ist. Die oberen Schranken werden durch
Familien von Datenstrukturen erreicht, wobei diejenigen fiir (2) der unteren Schranke recht
nahe kommen. Diese Datenstrukturen ergeben sich durch eine in allgemeiner Form vorgestellte
Kompositionstechnik aus Punktlokalisationsstrukturen, Segmentbaumen, Konjugationsbaumen
und Bereichsbaumen.
Die Strategie (3) fiihrt auf einen Spacesweep-Algorithmus, der den durch Minimierung der
Summe aus Vorverarbeitungs- und Gesamtanfragezeit errechneten Gesamtzeitaufwand der
Losungen nach (1) und (2) erreicht, allerdings bei geringerem Speicherverbrauch. Dieser Algo
rithmus erreicht seine Leistungsfahigkeit durch gutes Ausnutzen von raumlicher Koharenz. Fiir
VI
bewegte Szenen und die Erzeugung einer Bildfolge wird ein analoger Algorithmus (Timesweep)
zur Ausnutzung der zeitlichen Kohiirenz angegeben.
Der relativ hohe prinzipielle Aufwand legt die Untersuchung von Parallelisierungsmoglichkeiten
nahe. Dieses fiihrt zu verschiedenen Algorithmen, die am systolischen Berechnungsmodell orien
tiert sind. Ferner werden relativ einfache Datenstrukturen fiir sequentiell und vektoriell ar
beitende Rechner vorgestellt, deren Worst-Case-Verhalten zwar schlecht ist, die sich aber im
praktischen Einsatz gut bewiihrt haben.
Der vorliegende Text stellt meine von der Fakultii,t fUr Informatik der Universitii,t Karlsruhe
angenommene Habilitationsschrift dar. Damit laJ3t sich vielleicht der manchmal etwas kompakte
Stil entschuldigen, der wissenschaftlichen Arbeiten oft zu eigen ist. Besonders zu erwii.hnen
ist die grofie Zahl von Studenten, die im Rahmen von Arbeitsgemeinschaften, Studienarbei
ten, Diplomarbeiten und als Hilfsassistenten mit grol3em Engagement an den mehrjii.hriger
Forschungs- und Entwicklungsarbeiten mitgewirkt haben, in deren Rahmen diese Arbeit ent
standen ist. Ferner danke ich den Professoren A. Schmitt, T. Ottmann und K. Mehlhorn fiir
die Zeit, die sie der Begutachtung dieser Arbeit gewidmet haben.
Karlsruhe, Januar 1988 Heinrich Miiller
VII
Inhalt
1. Einleitung 1
2. Realistisch wirkende Computergraphik 9
2.1 Modellieren 9
2.1.1 Riiumliches geometrisches Modellieren 9
2.1.2 Optisches Modellieren 13
2.1.3 Ein Beispiel fiir eine Szenenbeschreibung 16
2.2 Bilderzeugung 21
2.2.1 Darstellung realistischer Computergraphik 21
2.2.2 Bilderzeugung 22
2.2.3 Diskretisierungsprobleme 28
2.3 Bildmanipulation 30
3. Geraden- und Strahlanfragen 31
3.1 Problemdefinition 31
3.2 Gitter- und Hiillenverfahren 37
3.3 Rechteckszenen 42
3.3.1 Polylogarithmischer Speicherverbrauch 42
3.3.2 Polylogarithmische Anfragezeit 53
3.3.3 Zeit-Speicher-Tradeoff 62
3.3.4 Dynamische Datenstrukturen 71
3.3.5 Makroszenen 78
3.3.6 Zusammenfassung 81
3.4 Allgemeine Szenen 82
4. Bilderzeugung 84
4.1 Bilderzeugungsstrategien 84
4.2 Spacesweep 89
4.3 Timesweep 94
5. Parallele Algorithmen und Maschinen 101
5.1 Vektorrechner 108
5.2 Systolische Algorithmen 115
5.2.1 Mengen aus Einzelobjekten 115
5.2.2 Das Aufziihlproblem und CSG-Szenen 123
5.2.3 Makroszenen 128
5.2.4 Implementierungsbetrachtungen 131
Literatur 132
1. Einleitung
Die graphische Datenverarbeitung beschiiftigt sich mit der Manipulation und Darstellung geo
metrischer Daten. Besondere Anforderungen stellen raumliche Daten, da zu deren bildlicher
Wiedergabe eine Reduktion in eine zweidimensionale Darstellung erforderlich ist. Die darstel
lende Geometrie bietet zur Losung dieses Problems eine Vielzahl von Projektionsverfahren zur
zweidimensionalen Darstellung raumlicher Daten an. Die graphische Darstellung setzt sich
zusammen aus den signifikanten Kurven des Objekts, etwa Objektkanten und die Objektsil
houette.
Diese Darstellungen konnen sehr uniibersichtlich werden, insbesondere da auch eigentlich
verdeckte Linien gezeigt werden. Eine Verbesserung erhalt man durch Entfernen der hint en
liegenden, verdeckten Teile der Linien. Die Elimination dieser versteckten Linien (engl.: hid
den lines) ist eines der klassischen Probleme der graphischen Datenverarbeitung.
Bedingt durch die dramatische Steigerung der Kapazitat von Halbleiterspeicherchips bei
gleichzeitigem Preisverfall findet in der graphischen Datenverarbeitung neben der oben
geschilderten Liniendarstellung die Rasterdarstellung immer stiirkere Verbreitung. Bei dieser
Methode, die urspriinglich vor allem bei der rechnergestiitzten Analyse von Photographien
angewendet wurde, wird das Bild durch eine Matrix aus zahlreichen Bildpunkten unter
schiedlicher Farbe und Intensitat dargestellt. Diese Rasterdarstellung eroffnet der generieren
den Computergraphik eine neue Dimension, indem sie es ermoglicht, Lichteffekte darzustellen.
Lichteffekte bieten eine weitere Moglichkeit, aus einer zweidimensionalen Darstellung auf die
raumliche Struktur zuriickzuschlieBen. Die Lage von Glanzlichtern auf Objekten oder der
Schattenwurf verstiirken den raumlichen Eindruck. Solche optischen Effekte in Darstellungen
einzubringen ist Gegenstand der realistischen Computergraphik. Abb. 1.1 zeigt ein Beispiel
fiir ein aus raumlichen Daten generiertes Bild. Die Schachfiguren wurden weitgehend als Ro
tationskorper durch Angabe ihrer Silhouettenkurve spezifiziert. Fiir Abb. 1.1 wurden 512x512
Bildpunkte berechnet, wobei pro Bildpunkt einer von etwa 256 Grauwerten dargestellt wird
(bei farbiger Darstellung werden die Farben aus ungefahr 16 Millionen moglichen ermittelt).
Anwendungen fiir Techniken zur Synthese realistischer Bilder gibt es in der rechnergestiitzten
Konstruktion (CAD) des Maschinenbaus und der Architektur. Abb. 1.2 zeigt die Darstel
lung eines aus Bezierflachen konstruierten Liifterrades. Realistische Bilder ermoglichen die
Beurteilung eines Entwurfs ohne den Bau eines Modells. Entwiirfe von Bauprojekten konnen
dreidimensional in die digital erfaBte Landschaft einmontiert und dann von verschiedenen
Ansichten in ihrer Wirkung beurteilt werden. In Abb. 1.3 ist ein digit ales Geliindemodell
dargestellt. Eines der ersten Entwurfssysteme, das die Generierung von einfachen beleuchteten
Bildern erlaubte, war Movie.BYU [CS81], ein Programmsystem zur Visualisierung der Ergeb
nisse von Finite-Element-Berechnungen. Inzwischen verfiigen aIle bedeutenden 3D-CAD
Systeme iiber eine einfache Shading-Komponente. Movie.BYU, das aufgrund seiner Portabilitat
einige Verbreitung gefunden hat, wird auch in der Medizin zur dreidimenisonalen Rekonstruk
tion von Objekten eingesetzt, welche mit einem Computertomographen abgetastet wurden. In
Abb. 1.4 ist der Torso eines Menschen dargestellt. Eine weitere Anwendung ist die Darstel
lung von Molekiilstrukturen in der Chemie. Abb. 1.5 zeigt ein rechnergeneriertes Modell eines
anorganischen Molekiils.
2
Neben solchen wissenschaftlichen Anwendungen gibt es das weite Feld der Massenmedien. Hier
reicht das Spektrum von Bildern oder kurzen Filmsequenzen zu Werbezwecken bis zu ganzen
Kinofilmen, etwa Science-Fiction-Filmen, bei denen der Modellbau iiberfliissig wird und auch
physikalisch utopische Erscheinungen realisiert werden konnen. SchlieBlich wird realistische
Computergraphik auch kiinstlerisch betrieben [FU85].
Die Entwicklung in der realistischen Computergraphik ist stark durch experimentelles Arbeiten
gepriigt. Das ist durch den Zwang begriindet, natiirliche Erscheinungen aufgrund der auch heute
noch beschriinkten Rechnerkapazitiit sparsam zu modellieren. Dabei kann oft nur experimen
tell gekliirt werden, welche Auswirkungen Abstriche am Modell haben. Inzwischen scheint eine
gewisse Stabilitiit erreicht zu sein: der KompromiB zwischen Qualitiit (Grad an Realismus) und
Aufwand (Rechenzeit, Speicherplatz) ist das Strahlverfolgungsverfahren (Ray Tracing). Dieses
sich an die Strahlenoptik der Physik anlehnende Verfahren wurde in der heute angewendeten
Form von T. Whitted 1980 in CACM publiziert. Die aktuellen Forschungs- und Entwick
lungsaktivitiiten gehen nun einerseits in die verbesserte Modellierung der dreidimensionalen
Szenen, andererseits in die Entwicklung leistungsfiihiger Algorithmen, Datenstrukturen und
Maschinen im Rahmen eines gegebenen Bilderzeugungsverfahrens, z.B. der Strahlverfolgung.
Der Schwerpunkt dieser Arbeit liegt im zweiten Bereich. Da es hierzulande nur wenig Fach
leute in diesem speziellen Gebiet der graphischen Datenverarbeitung gibt, wird in Kap. 2
eine (sehr) kompakte einfiihrende Darstellung gegeben. Diese versucht jedoch durchaus, den
Stand der Entwicklung mit einzuschlieBen. Sie kann hilfreich sein, wenn es darum geht, eine
integrierte Produktionsumgebung fiir realistische Computergraphik, Bilder wie Filme, bereit
zustellen. Ferner zeigt sie, daB der aufgrund der stiirmischen Entwicklung sehr heterogene
Zustand einer grundlagenorientierten Aufarbeitung aus der Sicht der Informatik benotigt.
Abb. 1.1: Schachbrett. Entwurf: G.W. Bieberich
3
Abb. 1.2: Liifterrad. Entwurf: Doneit, Bieberich, Schreiner
Abb. 1.3: Digitales Geliindemodell. Entwurf: W. Winz
4
Abb. 1.4: Menschlicher Torso. Entwurf: Ernestus, Verhagen
Abb. 1.5: Molekiil. Entwurf: Bieberich, Gdanitz