Computergraphik Grundlagen
VIII. Beleuchtung und Shading
Prof. Stefan Schlechtweg Hochschule Anhalt Fachbereich Informatik
2
Inhalt – Lernziele
1. Beleuchtungsmodelle 2. Lichtquellen
Punktförmige und flächenhafte Lichtquellen
Weitere Aspekte
3. Interaktion Licht – Oberflächen
Gerichtete Reflexion
Diffuse Reflexion
Lichtbrechung
Weitere Effekte
4. Beleuchtungsmodell nach Phong
Ambiente Beleuchtung
Diffuse Reflexion
Spekulare Reflexion
5. Shading polygonaler 3D-Modelle
Flat-Shading
Gouraud-Shading
Phong-Shading
6. Spezifikation von Lichtquellen und Beleuchtungsmodellen in OpenGL 7. Globale Beleuchtungsmodelle
Raytracing
Radiosity
Die Rendering-Gleichung
8. Zusammenfassung
Zusammenhänge bei der Interaktion von Licht mit
Objektoberflächen kennenlernen
Modellierung dieser Interaktion in der Computergraphik
verstehen
Phong-Modell als am weitesten verbreitetes
Beleuchtungsmodell kennen
Shading-Verfahren und ihre Unterschiede kennen
Beleuchtung in OpenGL unsetzen können
Globale Beleuchtungsmodelle einordnen können
lokal → Welt Lokale Koordinaten
Modellierung der Geometrie einzelner Objekte
Weltkoordinaten Plazierung der
Objekte
Plazierung der Lichtquellen Plazierung der
Kamera Beleuchtungs-
berechnung
Kamerakoordinaten Entfernen verdeckter Rückseiten
Normalisierte Projektionskoordinaten
Clipping gegen Sichtkörper
(Normalisierte) Bildschirm- koordinaten
Rasterkoordinaten
Entfernen verdeckter Modellteile
Shading Entfernen verdeckter Modellteile
Transformation in Kamerakoordinaten
Viewing-Transformation
Projektion
Rastertransformation Rasterung
4
1. Beleuchtungsmodelle
Physikalische Effekte
– Oberflächen senden Licht aus oder reflektieren es (oder beides).
Teile des Lichtes werden absorbiert; andere Teile (ungerichtet) gestreut.
– Lichtintensität und Farbe an einem Punkt der Szene hängt von seiner Lage zu den Lichtquellen ab.
– Licht wird oft mehrfach reflektiert/gebrochen und an einem Punkt
„addiert“ sich die Lichtintensität, die auf verschiedenen (langen) Wegen an diesem Punkt angekommen ist.
Mathematische Beschreibung
– führt zu einer Integralgleichung – der Renderinggleichung.
– Diese ist i.a. nicht lösbar. CG: Annäherungen, die nur bestimmte Arten von Lichtquellen und Oberflächentypen berücksichtigt.
Beleuchtungsmodelle beschreiben die Faktoren, die die Farbe eines Objektes an einem bestimmten Punkt bestimmen
Globale Beleuchtungsberechnung
– Einbeziehung aller Objekte einer Szene, um die Farbe an einem Punkt zu bestimmen,
– Interaktion Lichtquelle-Objekt und auch Interaktion Objekt-Objekt, – oft physikalisch basiert (Erhaltungssätze)
– Methoden: Raytracing, Radiosity
Lokale Beleuchtungsberechnung
– Einschränkung: nur Interaktion Lichtquelle mit einem Objekt, – integriert in das Pipeline-Konzept der Graphikhardware,
– oft heuristisch, approximierend
– einfacher als globale Beleuchtungsberechnung
– Methoden: Beleuchtungsmodell nach Phong und polygonales Shading
1. Beleuchtungsmodelle
6
Ziel: Wechselwirkungen zwischen Licht und Oberflächen
beschreiben, um
Beleuchtungseffekte in das Rendering zu integrieren.
Auftretende Effekte (Bild rechts):
– Lichtstrahlen werden (gerichtet) reflektiert.
– Lichtstrahlen werden gebrochen.
– In Teilen der Szene ist der Weg zur Lichtquelle blockiert. Sie liegen im Schatten.
Quelle: Angel (2000)
1. Beleuchtungsmodelle
unterschiedliche Charakteristika durch verschiedene Modelle
Berechnung der einfallenden Lichtintensität/-farbe in Abhängigkeit von Entfernung und Einfallswinkel
2. Lichtquellen
8
Punktlichtquelle: keine Ausdehnung, sendet Licht in alle
Richtungen, spezifiziert durch 3D-Koordinaten (Position)
Gerichtetes Licht: parallele Lichtstrahlen (~ einer unendlich weit entfernten Lichtquelle). Effekt wie z.B.
Sonnenstrahlen auf der Erde, spezifiziert durch 3D-Vektor (Richtung)
Spotlicht: Punktlichtquelle, die nur in einem bestimmten Öffnungswinkel Licht sendet. Lichtintensität
sinkt zu den Rändern des Sichtkegels,
spezifiziert durch 3D-Koordinate (Position), 3D-Vektor (Richtung) Öffnungswinkel, Maß für das Abfallen der Intensität.
2. Lichtquellen
Punktförmige Lichtquellen erzeugen harte Kontraste. Objekte sind entweder im Schatten oder im Licht; keine weichen Übergänge.
Flächenhafte Lichtquellen führen zu weicheren Übergängen.
Objekte können in einem Halbschatten sein. In der CG werden sie durch mehrere punktförmige Lichtquellen angenähert.
2. Lichtquellen
2.1. Punktförmige und flächenhafte Lichtquellen
10
Abschwächung (attenuation)
– Intensität des Lichtes wird mit wachsender Entfernung zur Lichtquelle kleiner (physikalisch: I ~ 1/d²)
– In der CG hat sich eine geringere Abschwächung
(I ~ 1/(a+bd+cd²)) als günstig erwiesen. a, b und c müssen geeignet gewählt werden. Oft: a=0, b =1, c=0)
– OpenGL: GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION
Farbe
– Lichtquellen haben eine Farbe. Diese wird als RGB-Tripel angegeben.
– Verhalten der Lichtstrahlen hängt von der Wellenlänge ab.
– Annäherung: betrachten nur R-, G- und B-Anteile.
2. Lichtquellen
2.2. Weiter Aspekte
3. Interaktion Licht – Oberflächen
Einfallswinkel θ:
Winkel zwischen L und N
(bestimmt die diffuse Reflexion)
Reflexionswinkel r:
Winkel zwischen R und N.
Winkel Φ zwischen V und R bestimmt Intensität des
reflektierten Lichtes.
Wenn V = R (bzw. Φ =0) wird das Licht maximal zum Betrachter
reflektiert.
L
N
V R
L-Vektor zur Lichtquelle N-Oberflächennormale R-Reflektierter Lichtstrahl V-Vektor zum Betrachter
θ
12
Gerichtete Reflexion:
– Licht wird nur für kleine Winkel Φ reflektiert. Stärkste Reflexion für Φ=0
– Bei einem perfekten Spiegel tritt nur gerichtete Reflexion auf und nur für Φ = 0.
Diffuse Reflexion:
– Licht wird in alle Richtungen reflektiert (Intensität hängt nur von θ und nicht von der Position des Betrachters ab).
– Tritt bei sehr rauhen bzw. matten Materialien auf. Beispiel: Kreide.
– Perfekt diffuse Reflexion: Licht wird gleich stark in alle Richtungen reflektiert.
Brechung:
– Licht wird an transparenten Oberflächen gebrochen. Richtung des gebrochenen Strahls ergibt sich aus Brechzahl und dem Brechungsgesetz.
3. Interaktion Licht – Oberflächen
Gerichtete Reflexion (physikalisch):
– Ausmaß des reflektierten Lichtes hängt auch
• von der Einfallsrichtung ab und
• von der Wellenlänge ab.
– Lichtintensität in der Realität nicht symmetrisch um ein Glanzlicht verteilt.
– Vor allem Metalle haben anisotropes Verhalten: Nicht nur der Einfallswinkel sondern auch die
Einfallsrichtung bestimmt das Reflexionsverhalten.
– deutlich komplexeres Verhalten als in der computergraphischen Annäherung
3. Interaktion Licht – Oberflächen 3.1.
Gerichtete Reflexion
14
Abschwächung der Reflexion in Abhängigkeit vom Winkel zwischen V(iewer) und R als Glanzparameter: shininess.
Ähnlich wie bei dem Abfall der Lichtintensität in einem Spotlicht, wird eine Cosinusfunktion verwendet, um Intensitätsabschwä-chung zu beschreiben.
Der Glanzparameter ist Exponent in der Cosinusfunktion I ~ cos (Φ)e. Auch Spiegelexponent genannt. Für Metalle: ≈100
Quelle: Angel (2000)
Lichtintensität in
Abhängigkeit von Φ für verschiedene Werte von e
e=1 e=2 e=5
3. Interaktion Licht – Oberflächen
3.1. Gerichtete Reflexion
Intensität ist abhängig vom Winkel θ zwischen einfallendem Licht (L) und Oberflächennormale (N)
Abhängigkeit wird nach Lambert‘s Gesetz durch cosinus-Funktion beschrieben.
Bei normalisierten Vektoren L und N gilt: cos θ = L * N
Eigenschaften:
θ = 0 → Intensität maximal (entspricht Sonne im Zenit) θ = 90°→ Intensität 0 (entspricht Sonnenaufgang)
n
θ
Licht gleicher Intensität verteilt sichauf eine breitere Fläche (rechts) wegen des kleineren Einfallswinkels.
Quelle: Angel (2000)
3. Interaktion Licht – Oberflächen
3.2. Diffuse Reflexion
16
Auch Lichtbrechung erfolgt nicht komplett in eine Richtung sondern in einem bestimmten Bereich um den Winkel der perfekten
Brechung.
Grenzwinkel der Totalreflexion beim Übergang von dichterem in dünneres Medium beachten. Wenn Winkel zwischen l und n diesen Grenzwinkel überschreitet, wird das Licht komplett reflektiert.
Quelle: Angel (2003)
3. Interaktion Licht – Oberflächen
3.3. Lichtbrechung
Lichtbrechung nach dem Brechungsgesetz
Quelle: Bender/Brill (2003) Quelle: Angel (2000)
Lichtbrechung beim Durchgang durch ein Medium (zweifache Brechung und
Parallelverschiebung)
3. Interaktion Licht – Oberflächen
3.3. Lichtbrechung
18
Diffuse Reflexion durch unterschiedliche
Oberflächennormalen im mikroskopischen Bereich
Quelle: Angel (2000)
Typische Reflexionsverteilung als Kombination aus diffuser und gerichteter Reflexion
Quelle: Bender/Brill (2003)
3. Interaktion Licht – Oberflächen
3.4. Weitere Effekte
4. Beleuchtungsmodell nach Phong
In der CG am häufigsten verwendetes Modell
Modelliert Beleuchtung aus drei Anteilen: Iphong = Ia + Id + Is
Ambienter Anteil
– Grundhelligkeit in der Szene
– Simuliert Streuung des Lichtes durch Oberflächen (indirekte Beleuchtung) – Unabhängig von Betrachterstandpunkt und vom einfallendem Licht
Diffuser Anteil
– Reflexion an matten Oberflächen – Gleichmäßig in alle Richtungen
– Unabhängig vom Betrachterstandpunkt
Spekularer Anteil
– Gerichtete Reflexion an spiegelnden Oberflächen – Abhängig vom Betrachterstandpunkt
– Erzeugt Glanzpunkte
20
In der Realität kommt durch vielfältige Licht-Oberflächen-
Interaktionen in einem beleuchteten Raum praktisch überall ein gewisses Maß an Licht an.
Oft ist eine gleichmäßige Beleuchtung auch das Ziel bei der Gestaltung von Räumen (z.B. Klassen- und Seminarräume).
In der CG würde es durch die stark vereinfachte Nachbildung der Beleuchtungsvorgänge dazu kommen, dass Teile der Szene
komplett dunkel werden.
Daher: Annahme einer Grundhelligkeit (etwa 10-15% der maximalen Helligkeit). Bewirkt mit geringem Aufwand das, was sonst nur durch Einfügen vieler Lichtquellen erreichbar wäre.
Problem: Farbe des ambienten Lichtes (müsste prinzipiell von allen Objekten in der Szene abhängen)
4. Beleuchtungsmodell nach Phong
4.1. Ambiente Beleuchtung
4. Beleuchtungsmodell nach Phong
4.1. Ambiente Beleuchtung
einfachstes Beleuchtungsmodell
jedes Objekt strahlt selber eine gewisse „Lichtmenge“ aus
keine zusätzlichen Lichtquellen benötigt
keine Relation zu physikalischen Vorgängen
aber:
– benötigt als Teil in komplexeren Modellen
– Simulation des durch fortgesetzte Reflexion auf ein Objekt einfallenden Lichtes
22
4. Beleuchtungsmodell nach Phong
4.2. Diffuse Reflexion
Reflexion des Lichtes an matten Oberflächen
Licht wird in alle Richtungen gleichmäßig reflektiert
Gesetz von Lambert: Stärke der Reflexion hängt von Einfallswinkel ab, aber nicht vom Betrachterstandort
4. Beleuchtungsmodell nach Phong
4.3. Spekulare Reflexion
Licht wird nicht mehr gleichmäßig reflektiert, sondern in eine Vorzugsrichtung (Reflexionsgesetz)
„highlights“ in der Lichtfarbe
abhängig vom Betrachterstandpunkt
Streuung der Reflexion um die Vorzugsrichtung
modelliert
24
I
Phong= L
ak
aAmbienter Term modelliert Licht, dass von anderen Oberflächen gestreut wird
Diffuser Term modelliert Reflexion an matten Oberflächen
( L
ik
d(L·N)
Spekularer Term modelliert Reflexion an
spiegelnden Oberflächen.
+ L
ik
s(R·V)
e) +1/(a+bd+cd²)
Entfernungsabhängige Abschwächung für gerichtete und diffuse Reflexion
L
N
V R
Beleuchtungsgleichung muss für jede Lichtquelle (ggf. modifiziert bei Spotlichtern) und jede
der 3 Grundfarben ausgewertet werden.
θ k
a+k
d+ k
s= 1
4. Beleuchtungsmodell nach Phong
Übergänge zwischen spiegelnder und diffuser Reflexion:
3D-Darstellung der Reflexion als Beleuchtungskörper
Quelle: Angel (2000)
Quelle: Bender/Brill (2003)
Links: unvollkommen spiegelnde Reflexion Rechts: perfekt diffuse Reflexion
4. Beleuchtungsmodell nach Phong
26
Beleuchtungskörper für das Phongmodell bei verschiedenen Einfallswinkeln (θ=10 , 45 , 70 )
Quelle: Bender/Brill [2003]
Von links nach rechts
reduziert sich der Einfluss der gerichteten Reflexion.
Der Anteil der spiegelnden Reflexion bleibt gleich.
4. Beleuchtungsmodell nach Phong
Beleuchtungskörper für das Phongmodell bei verschiedenen Glanzparametern (2, 20, 100) bei Einfallswinkel θ=45
Quelle: Bender/Brill [2003]
4. Beleuchtungsmodell nach Phong
28
5. Shading polygonaler 3D-Modelle
Ziel: Zuordnung von Farben zu den Pixeln
Betrachten polygonale 3D-Modelle.
Verfahren unterscheiden sich darin, an welchen Stellen das Beleuchtungsmodell ausgewertet wird.
Einfache Techniken: interpolative Shading-Verfahren
– Über das Beleuchtungsmodell werden Farbwerte an den Eckpunkten berechnet.
– Farbwerte aller Punkte eines Polygons ergeben sich durch lineare Interpolation der Farbwerte an den Eckpunkten.
– Drei Verfahren
• Flat-Shading
• Gouraud-Shading
• Phong-Shading (Unterschied zu Phong-Modell!!)
Keine Interpolation
Bestimme einen Farbwert pro Polygon
– Variante 1: Mittelwert aus den Farbwerten an den Eckpunkten – Variante 2: durch Auswahl eines Punktes und Berechnen der
Farbe dort
Setze alle Pixel des Polygons auf diese Farbe
Einzelne Polygone deutlich sichtbar
Einfache Implementierung, sehr schnell, aber geringe Qualität
5. Shading polygonaler 3D-Modelle
5.1. Flat-Shading
30
Warum sind die Diskontinuitäten (math. Unstetigkeiten) an den Kanten so auffällig und störend?
– Visuelle Wahrnehmung: Kontraste werden verstärkt
wahrgenommen. Wahrgenommene Helligkeitsunterschiede sind stärker als die (physikalischen) Intensitätsunterschiede. –
Machbandeffekt
Quelle: Angel (2000)
5. Shading polygonaler 3D-Modelle
5.1. Flat-Shading
Berechne Helligkeitswerte an den Eckpunkten des Polygons und interpoliere diese Helligkeitswerte über die Fläche des Polygons
Aufwändiger als Flat-Shading, aber qualitativ besser.
Kanten zwischen Polygonen nicht mehr sichtbar.
Problem: Glanzpunkt in der Mitte eines Polygons.
Implementierung:
In Hardware.
5. Shading polygonaler 3D-Modelle
5.2. Gouraud-Shading
32
Schwierigkeit: „glatte“ Übergänge an den Rändern von Polygonen. An
einem Eckpunkt treffen oft 4 oder 6 Polygone mit unterschiedlichen
Normalen aufeinander. Als Normale des Eckpunktes wird der gewichtete Durchschnitt angesehen:
Voraussetzung: Datenstruktur, die die Zugehörigkeit von Eckpunkten
repräsentiert. Bsp: Liste von
Eckpunkten, bei der jeder Eckpunkt einen Pointer auf die dort
zusammentreffenden Polygone enthält.
5. Shading polygonaler 3D-Modelle
5.2. Gouraud-Shading
Interpoliere die Normalenvektoren der Eckpunkte des Polygons über die Fläche des Polygons und berechne an jedem Punkt (Pixel) im Inneren des Polygons einen Farbwert aus der interpolierten
Normalen
Wesentlich aufwändiger als Gouraud-Shading, liefert aber die besten Ergebnisse
Glanzpunkte im Inneren eines Polygons werden korrekt
dargestellt
Aber: auch einige Fälle, die nicht dargestellt werden können
5. Shading polygonaler 3D-Modelle
5.3. Phong-Shading
34
Flat-Shading Gouraud-Shading Phong-Shading
5. Shading polygonaler 3D-Modelle
5.4. Vergleich
Flat-Shading Gouraud-Shading Phong-Shading
Ein Helligkeitswert für das gesamte Polygon. Anwendung: Entwurfs- ansichten in CAD- und
Modellierungsprogrammen.
Bestimme Helligkeit an den
Eckpunkten. Interpoliere im Inneren. Bestimme Normalen an den
Eckpunkten und interpoliere sie im Inneren. Bestimme Helligkeit mit Hilfe der interpolierten Normalen.
N
I N1
I1
N3 N2
I3 I2
N1
I1
N3 N2
I3 I2
5. Shading polygonaler 3D-Modelle
5.4. Vergleich
36
6. Realisierung in OpenGL
Was ist zu tun?
1. Spezifikation von Lichtquellen
glLightf
2. Spezifikation von Materialeigenschaften
glMaterial
3. Bestimmung von Oberflächennormalen
glNormal
4. Festlegen eines Shading-Modelles
glShadeModel
glShadeModel( GL_CONSTANT); // Flatshading
glShadeModel( GL_SMOOTH); // Gouraud-Shading
Spezifikation von Lichtquellen:
glEnable (GL_LIGHTING);
glEnable (GL_LIGHT0);
GLfloat light0_pos [] = {1.0, 2.0, 1.0, 1.0};
GLfloat ambient0 [] = … GLfloat diff0 … GLfloat spec0 …;
glLightfv (GL_LIGHT0, GL_POSITION, light0_pos);
glLightfv (GL_LIGHT0, GL_AMBIENT, ambient0);
glLightfv (GL_LIGHT0, GL_DIFFUSE, diff0);
glLightfv (GL_LIGHT0, GL_SPECULAR, spec0);
glLightModelfv (GL_LIGHT_MODEL_AMBIENT, global_ambient);
6. Realisierung in OpenGL
38
Spezifikation von Materialeigenschaften:
GLfloat ambient[] = {0.2, 0.2, 0.2, 1.0};
GLfloat diffuse[] = {1.0, 0.8, 0.0, 1.0};
GLfloat specular[]= {1.0, 1.0, 1.0, 1.0};
// Für Lichtquellen
GLfloat emission[]= {0.0, 0.6, 0.6, 1.0};
glMaterialfv (GL_FRONT_AND_BACK, GL_AMBIENT, ambient);
glMaterialfv (GL_FRONT_AND_BACK, GL_DIFUSSE, diffuse);
glMaterialfv (GL_FRONT_AND_BACK, GL_SPECULAR, specular);
glMaterialfv (GL_FRONT_AND_BACK, GL_EMISSION, emission);
glMaterialf (GL_FRONT_AND_BACK, GL_SHININESS, 100);
Spezifikationen gelten für alle folgenden Oberflächen – bis sie
„überschrieben“ werden.
6. Realisierung in OpenGL
Phong-Parameter einiger Materialien (nach Bender/Brill [2003])
Material rar, rag, rab rdr, rdg, rdb rsr, rsg, rsb n Plastik 0.00, 0.00, 0.00 0.01, 0.01, 0.01 0.50, 0.50, 0.50 32 Messing 0.33, 0.22, 0.03 0.78, 0.57, 0.11 0.99, 0.94, 0.81 28 Bronze 0.21, 0.13, 0.05 0.71, 0.43, 0.18 0.39, 0.27, 0.17 26 Kupfer 0.19, 0.07, 0.02 0.70, 0.27, 0.08 0.26, 0.14, 0.09 13 Gold 0.25, 0.20, 0.07 0.75, 0.61, 0.23 0.63, 0.56, 0.37 51 Silber 0.19, 0.19, 0.19 0.51, 0.51, 0.51 0.51, 0.51, 0.51 51
6. Realisierung in OpenGL
40
Aussehen der Materialien nach Darstellung mit OpenGL
Quelle: Bender/Brill (2003)
6. Realisierung in OpenGL
Courtesy of Maic Masuch
42 Courtesy of Oliver Deussen.
Courtesy of Oliver Deussen.
44
7. Globale Beleuchtungsmodelle
bisher:
– Helligkeit an einer Stelle eines Objektes war abhängig von dem direkt einfallenden Licht an dieser Stelle und den
Materialeigenschaften – lokale Beleuchtungsmodelle
– in der Realität aber wesentlich komplexere Interaktion zwischen Objektoberflächen und Licht
• indirekte Beleuchtung
• mehrfache Reflexion
• Brechung, Transmission
– Simulation durch Globale Beleuchtungsmodelle
• Raytracing
• Radiosity
7. Globale Beleuchtungsmodelle
7.1. Raytracing
Ablauf:
– schicke einen Strahl vom Betrachterstandpunkt durch jedes Pixel der Bildebene – bestimme den Schnittpunkt des Strahls mit einem Objekt der Szene
– bestimme an diesem Schnitt- punkt den Beitrag des lokalen Beleuchtungsmodells (Phong) – berechne Strahl in Reflexions-
richtung und evtl. in Brechungsrichtung
– Berechne den Beitrag von
Reflexion und Brechung rekursiv durch Verfolgen dieser beiden Strahlen
– Beleuchtung am Schnittpunkt (und damit Farbe des Pixels) ergibt sich aus gewichteter Summe dieser drei Beiträge
46
Prinzip:
– ein Strahl pro Pixel
– Reflexionsrichtung verfolgen, Strahlen zu den Lichtquellen – Rekursion
7. Globale Beleuchtungsmodelle
7.1. Raytracing
Vorteile
– Hidden Surface Removal bereits „eingebaut“
– Schattenberechnung bereits „eingebaut“
– exakte Simulation spekularer Reflexion
• Spiegelung
• Brechung
Nachteile
– zeitaufwendig, insbesondere Schnittests (Welches Objekt wurde getroffen?)
– keine Modellierung diffuser oder gemischt diffuser/spekularer Reflexion
7. Globale Beleuchtungsmodelle
7.1. Raytracing
48
http://freespace.virgin.net/hugo.elias/
Alan Watt: 3D-Computergrafik
7. Globale Beleuchtungsmodelle
7.2. Radiosity
Grundlage: Energieerhaltungssatz
Finite Elemente Verfahren, daher Unterteilen der Szene in
„Elemente“
im Prinzip: Berechnung des Anteils an Licht, das ausgehend von einem Element ein anderes trifft
– nur diffuse Reflexion betrachtet
– Anteil des Lichts dann nur abhängig von Geometrie – aufwendig zu berechnen
Algorithmus
– starte mit den Elementen, die Licht aussenden (Lichtquellen)
– sende von diesen Licht in die Szene – berechne für alle anderen Elemente
ankommende Lichtmenge
– iteriere bis Energiegleichgewicht
50
Vorteile
– exakte physikalische Simulation der Energieverteilung – diffuse Reflexion
– weiche Schatten
– Berechnungen unabhängig vom Betrachterstandpunkt
Nachteile
– nur diffuse Reflexion, Spekulare Effekte sehr aufwendig – Präprozessing notwendig (Unterteilung der Szene)
– zeitaufwendig, insbesondere Sichtbarkeitsberechnung (Formfaktoren)
7. Globale Beleuchtungsmodelle
7.2. Radiosity
M. Cohen, S. Chen, J. Wallace, D. Greenberg (1988):
Progressive Refinement Approach to Fast Radiosity Image Generation.
In Proceedings of SIGGRAPH ‚88, pp. 75-84 Alan Watt: 3D-Computergrafik
7. Globale Beleuchtungsmodelle
7.3. Die Rendering-Gleichung
Zusammenfassung aller Beleuchtungsverfahren
– Die an einer Stelle x‘ in eine Richtung ω‘ ausgesandte Energie L (x‘, ω‘) entspricht der Summe des Eigenleuchtens der
Oberfläche an der Stelle x‘ in die Richtung ω‘ und der an dieser Stell reflektierten Energie. Die reflektierte Energie wird aus allen von anderen Stellen x aus allen Richtungen ω einfallenden
Energien L(x, ω) berechnet, wobei diese jeweils mit der
Sichtbarkeit der Stellen x und x‘ zueinander (G(x,x‘)V(x,x‘)) und der Reflexionseigenschaft der Oberfläche fr(x) gewichtet
werden.
52
8. Zusammenfassung
Vorgestellte Shading-Verfahren sind nicht (korrekt) physikalisch basiert, aber erreichen akzeptable Ergebnisse in zumutbarer Zeit
Qualität abhängig vom verwendeten Beleuchtungs-modell und vom Shading-Verfahren.
Beleuchtungsberechnung muss in Weltkoordinaten erfolgen (ein Bezugssystem für alle Koordinaten)
Vergleich globale/lokale Beleuchtungsmodelle
Beleuchtungsmodelle und Shading müssen ergänzt werden, um realistische Materialien zu erhalten, denn
– Modellierung aufwändig – Berechnung aufwändig
– Nachbildung der Physik oft nicht möglich