<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Radiosity_%28Computergrafik%29</id>
	<title>Radiosity (Computergrafik) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Radiosity_%28Computergrafik%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Radiosity_(Computergrafik)&amp;action=history"/>
	<updated>2026-06-26T05:44:32Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Radiosity_(Computergrafik)&amp;diff=25327&amp;oldid=prev</id>
		<title>imported&gt;Nnamllit11: /* growthexperiments-addlink-summary-summary:1|0|0 */</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Radiosity_(Computergrafik)&amp;diff=25327&amp;oldid=prev"/>
		<updated>2025-10-02T22:07:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;growthexperiments-addlink-summary-summary:1|0|0&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Radiosity&amp;#039;&amp;#039;&amp;#039; bzw. &amp;#039;&amp;#039;&amp;#039;Radiosität&amp;#039;&amp;#039;&amp;#039; ist ein Verfahren zur Berechnung der Verteilung von Wärme- oder Lichtstrahlung innerhalb eines virtuellen Modells. In der [[Bildsynthese]] ist Radiosity neben auf [[Raytracing]] basierenden [[Algorithmus|Algorithmen]] eines der beiden wichtigen Verfahren zur Berechnung des Lichteinfalls innerhalb einer [[Szenengraph|Szene]]. Es beruht auf dem [[Energieerhaltungssatz]]: Alles [[Licht]], das auf eine Fläche fällt und von dieser nicht absorbiert wird, wird von ihr zurückgeworfen. Außerdem kann eine Fläche auch selbstleuchtend sein.&lt;br /&gt;
&lt;br /&gt;
Das Radiosity-Verfahren basiert auf der Annahme, dass alle Oberflächen [[Lambertsches Gesetz|ideal diffuse]] Reflektoren bzw. alle Lichtquellen ideal diffuse Strahler sind. Ideal diffus bedeutet dabei, dass Licht in alle Richtungen gleichmäßig reflektiert bzw. abgestrahlt wird.&lt;br /&gt;
&lt;br /&gt;
Im Gegensatz zu Raytracing ist Radiosity nicht vom Blickpunkt abhängig; die Beleuchtung der Flächen wird also für die gesamte Szene unabhängig von der Position des Betrachters berechnet. Die blickpunktabhängige [[Sichtbarkeitsproblem|Verdeckungsberechnung]] hat in einem unabhängigen Schritt zu erfolgen.&lt;br /&gt;
&lt;br /&gt;
== Eigenschaften ==&lt;br /&gt;
=== Vorteile ===&lt;br /&gt;
[[Datei:Radiosity-no.jpg|mini|300px|Ein mittels [[Diffuses Raytracing|diffusem Raytracing]] gerendertes Bild ohne Simulation der indirekten Beleuchtung diffuser Oberflächen.]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:Radiosity-yes.jpg|mini|300px|Ein mittels Radiosity gerendertes Bild. Man erkennt deutlich, dass das Licht von den Kugeln auf den Boden reflektiert wird. Außerdem erkennt man auch, dass die weiße Wand die Kugeln von hinten indirekt beleuchtet.]]&lt;br /&gt;
&lt;br /&gt;
; Blickpunktunabhängigkeit&lt;br /&gt;
: Ein Vorteil des Radiosity-Verfahrens ist, dass die Berechnung vom Standort und Blickwinkel des Betrachters unabhängig erfolgt. Die Lichtverteilung muss so für eine Szene nur einmal berechnet werden. Danach kann die Szene in Echtzeit [[Bildsynthese|gerendert]] werden (meist mittels [[Scanline-Algorithmus|Scanline-Algorithmen]] oder [[Z-Buffer]]ing), was für Anwendungen wie virtuelle Architekturmodelle interessant ist. Diesen Vorteil haben jedoch nicht alle Programme.&lt;br /&gt;
; Einfache indirekte, ideal diffuse Lichtreflexion&lt;br /&gt;
: [[Lambertsches Gesetz|Ideal diffuse]] Lichtreflexionen werden vom Radiosity-Verfahren auf natürliche Weise unterstützt. Die Helligkeit und Farbe einer Fläche werden nicht allein aufgrund der direkten Beleuchtung einer Lichtquelle, sondern auch durch diffus reflektiertes Licht anderer Flächen bestimmt. Ein Beispiel dafür ist ein Zimmer, das durch einfallendes Sonnenlicht nicht nur an den direkt beschienenen Stellen, sondern auch insgesamt heller wird.&lt;br /&gt;
&lt;br /&gt;
=== Nachteile ===&lt;br /&gt;
&lt;br /&gt;
; Keine analytischen [[Grafisches Primitiv|Primitiven]]&lt;br /&gt;
: Durch die zwingende Aufteilung der Szene in Polygone können keine analytisch definierten Primitiven, wie die bei [[Raytracing]] üblichen Kugeln, verwendet werden. Durch die zur Vermeidung von sichtbaren Kanten notwendige feine Aufteilung ist bei komplexer Szenengeometrie rasch eine sehr hohe Zahl von Flächen notwendig. Dies führt häufig zu einer hohen Wartezeit bei der Berechnung der Formfaktoren (siehe weiter unten).&lt;br /&gt;
: Es wurde versucht, mittels adaptativer Vereinfachung der Geometrie dieses Problem teilweise zu lösen,&amp;lt;ref&amp;gt;H. E. Rushmeier u. A: &amp;#039;&amp;#039;Geometric simplification for indirect illumination calculations.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;Proceedings of Graphics Interface ’93.&amp;#039;&amp;#039; Canadian Information Processing Society, Toronto 1993, S. 227–236 ({{Webarchiv | url=https://smartech.gatech.edu/bitstream/handle/1853/3656/92-01.pdf | archive-is=20160807161022 | text=smartech.gatech.edu}} PDF).&amp;lt;/ref&amp;gt; was jedoch ein manueller Vorgang ist, der seine Grenzen hat. Daneben sind die aus den Fehlern dieses Verfahrens resultierenden Auswirkungen auf die Lichtberechnung schwer vorhersehbar.&lt;br /&gt;
; Hoher Speicher- und Zeitbedarf&lt;br /&gt;
: Wenn &amp;lt;math&amp;gt;N&amp;lt;/math&amp;gt; die Anzahl der Primitiven einer Szene ist, so weisen die effizientesten Radiosity-Varianten eine asymptotische [[Zeitkomplexität]] von &amp;lt;math&amp;gt;O(N \log N)&amp;lt;/math&amp;gt; auf, wie [[Empirie|empirisch]] festgestellt wurde.&amp;lt;ref&amp;gt;M. F. Cohen u. A.: &amp;#039;&amp;#039;Radiosity and realistic image synthesis.&amp;#039;&amp;#039; Academic Press Professional, San Diego 1993, ISBN 0-12-178270-0.&amp;lt;/ref&amp;gt; Dagegen benötigt Raytracing nur eine Laufzeit von &amp;lt;math&amp;gt;O(\log N)&amp;lt;/math&amp;gt;. Dies begrenzt schnell den praktisch möglichen Verfeinerungsgrad bei Radiosity. Daneben ergeben sich zur Berechnung und Speicherung der Formfaktoren relativ hohe Speicheranforderungen.&lt;br /&gt;
; Globale Beleuchtung schwer realisierbar&lt;br /&gt;
: Für die möglichst realistische Darstellung einer Szene muss die [[globale Beleuchtung]] simuliert werden, was aber nur in Spezialfällen mit Radiosity effizient möglich ist. In seiner Grundform ist Radiosity nur zur Simulation ideal diffuser Reflexion fähig. Die Berücksichtigung beliebiger [[Beleuchtungsmodell]]e sowie [[Transluzenz|transluzenter]] Flächen ist möglich,&amp;lt;ref&amp;gt;H. Rushmeier, K. Torrance: &amp;#039;&amp;#039;Extending the radiosity method to include specularly reflecting and translucent materials.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;ACM Transactions on Graphics.&amp;#039;&amp;#039; Band 9, S. 1–27, ACM Press, New York 1990 ([http://www.graphics.cornell.edu/pubs/1990/RT90.pdf graphics.cornell.edu] PDF)&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;E. Gobbetti u. A.: &amp;#039;&amp;#039;Hierarchical Higher Order Face Cluster Radiosity for Global Illumination Walkthroughs of Complex Non-Diffuse Environments.&amp;#039;&amp;#039; In: [[Eurographics (Vereinigung)|Computer Graphics Forum]], Band 22-3 (9/2003).&amp;lt;/ref&amp;gt; hat jedoch keine breite Verwendung gefunden, da derartige Effekte schneller bzw. präziser mittels auf [[Raytracing]] basierter Lösungen möglich sind.&lt;br /&gt;
&lt;br /&gt;
=== Vergleich mit Raytracing ===&lt;br /&gt;
Historisch gesehen war Radiosity interessant, da es die Simulation indirekter diffuser Beleuchtung auf einfache Weise erlaubte, was mit Raytracing lange Zeit nicht möglich war. Andererseits war Raytracing gut für spiegelnde und transparente Objekte geeignet, wozu wiederum Radiosity nicht fähig war. Es wurden daher anfangs Vorschläge zur Kombination von Radiosity mit Raytracing gemacht, die jedoch aufwendig waren und sich letztendlich nicht im großen Maße durchsetzen konnten.&lt;br /&gt;
&lt;br /&gt;
Mit dem Aufkommen moderner globaler Beleuchtungsverfahren wie [[Path Tracing]] und [[Photon Mapping]] wurden jedoch die Möglichkeiten von Raytracing beträchtlich erweitert. Weil derartige Algorithmen alle von Radiosity unterstützten Effekte mit weniger Fehlern und auf elegantere Weise simulieren können, ist Radiosity im Bereich der hochwertigen realistischen [[Bildsynthese]] weitgehend aus der Mode gekommen. Kommerzielle Verwendung findet Radiosity vor allem beim Rendern von Architekturmodellen, bei denen eine zeitaufwendige Vorausberechnung vertretbar ist. Auch derartige Anwendungen sind jedoch mit Raytracing-basierten Verfahren ([[Particle Tracing]]) möglich.&amp;lt;ref&amp;gt;B. Walter u. A.: &amp;#039;&amp;#039;[http://www.graphics.cornell.edu/~bjw/detog.html Global Illumination Using Local Linear Density Estimation.]&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;ACM Transactions on Graphics&amp;#039;&amp;#039;, Vol. 16-3 (7/1997), S.&amp;amp;nbsp;217–259, ACM Press, New York 1997&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Weitere Anwendung finden Radiosity-Verfahren in den Bereichen der Klima- bzw. Wärmeforschung, da Wärmeverteilung eher diffus als gerichtet geschieht und Radiosity hier praktikabler als strahlenbasierte Ansätze ist.&lt;br /&gt;
&lt;br /&gt;
== Prinzip ==&lt;br /&gt;
Mit der eingangs formulierten Annahme kann die allgemeine [[Rendergleichung]] in die Radiosity-Gleichung überführt werden.&lt;br /&gt;
: &amp;lt;math&amp;gt;B(x) = E(x)+\rho(x)\int_{x&amp;#039; \in S}B(x&amp;#039;) \frac{1}{\pi r^2} \cos\phi_x\cos\phi_{x&amp;#039;} \cdot V(x,x&amp;#039;) \,\mathrm dx&amp;#039;&amp;lt;/math&amp;gt;&lt;br /&gt;
mit&lt;br /&gt;
: B(x) = gesamte vom Punkt x abgestrahlte Energie (Summe aus Eigenstrahlung und Reflexion als [[Leistung (Physik)|Leistung]] pro Flächeneinheit), genannt [[Bestrahlungsstärke|Radiosity]] im Punkt x&lt;br /&gt;
: E(x) = im Punkt x abgegebene Eigenstrahlung&lt;br /&gt;
: ρ(x) = [[Reflexion (Physik)|Reflexionsfaktor]] im Punkt x&lt;br /&gt;
: S = alle Oberflächen der Szene&lt;br /&gt;
: r = Abstand der Punkte x und x&amp;#039;&lt;br /&gt;
: &amp;lt;math&amp;gt;\phi (x)&amp;lt;/math&amp;gt; = Der [[Winkel]] zwischen der [[Normalenvektor|Normale]] im Punkt x und der Verbindungslinie zwischen den Punkten x und x&amp;#039;&lt;br /&gt;
: &amp;lt;math&amp;gt;V(x,x&amp;#039;)= \begin{cases} 1, &amp;amp; \mbox{wenn }x\mbox{ von }x&amp;#039;\mbox{ aus sichtbar} \\ 0, &amp;amp; \mbox{sonst}\end{cases}&amp;lt;/math&amp;gt;.&lt;br /&gt;
Die gesuchte Radiosity im Punkt x ergibt sich aus einem Integral in geschlossener Form, was auf direktem Weg nicht berechnet werden kann. Abhilfe schafft die Diskretisierung der Oberfläche S: anstatt alle infinitesimal kleinen Teilflächen δA&amp;#039; zu betrachten, teilt man die Oberfläche S in zusammenhängende Teilflächen (&amp;#039;&amp;#039;Facetten&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;Patches&amp;#039;&amp;#039; genannt) A&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; auf ([[Finite-Elemente-Methode]]). Für diese Teilflächen gelten weitere Annahmen: jedes A&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; ist planar; die jeweilige Radiosity B&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; und der Reflexionsfaktor ρ&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; sind über A&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; konstant. Dies führt dann zur diskreten Radiosity-Gleichung.&lt;br /&gt;
: &amp;lt;math&amp;gt;B_i = E_i + \rho_i \sum_{j=1}^n B_jF_{ij},\quad 1 \le i \le n&amp;lt;/math&amp;gt;&lt;br /&gt;
mit&lt;br /&gt;
: B&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; = gesamte von Teilfläche i abgestrahlte Energie (Summe aus Eigenstrahlung und Reflexion als Leistung pro Flächeneinheit), genannt [[Bestrahlungsstärke|Radiosity]] der Teilfläche i&lt;br /&gt;
: E&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; = von der Teilfläche i abgegebene Eigenstrahlung&lt;br /&gt;
: ρ&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; = [[Reflexion (Physik)|Reflexionsfaktor]] der Teilfläche i&lt;br /&gt;
: n = Anzahl der Teilflächen&lt;br /&gt;
: F&amp;lt;sub&amp;gt;ij&amp;lt;/sub&amp;gt; = Anteil an der von Fläche j abgegebenen Energie, die auf Fläche i auftrifft, genannt [[Sichtfaktor|&amp;#039;&amp;#039;Formfaktor&amp;#039;&amp;#039;]].&lt;br /&gt;
&lt;br /&gt;
Die Radiosity &amp;lt;math&amp;gt;B_{i}&amp;lt;/math&amp;gt; von Teilfläche &amp;lt;math&amp;gt; i &amp;lt;/math&amp;gt; ist also gleich der Eigenstrahlung &amp;lt;math&amp;gt;E_{i}&amp;lt;/math&amp;gt; der Teilfläche&lt;br /&gt;
&amp;lt;math&amp;gt; i &amp;lt;/math&amp;gt; plus der mit dem diffusen Reflexionsfaktor &amp;lt;math&amp;gt;p_{i}&amp;lt;/math&amp;gt; gewichteten Summe der Radiosity &amp;lt;math&amp;gt;B_{j}&amp;lt;/math&amp;gt; von allen anderen Teilflächen &amp;lt;math&amp;gt; j &amp;lt;/math&amp;gt;. Wobei hierbei der Formfaktor &amp;lt;math&amp;gt;F_{i,j}&amp;lt;/math&amp;gt;, welcher den Anteil an der von Fläche j abgegebenen Energie die auf Fläche i auftrifft festlegt, eingeht. Der Formfaktor berücksichtigt also die Ausrichtung und den Abstand der Teilflächen &amp;lt;math&amp;gt; i,j &amp;lt;/math&amp;gt; zueinander. Da man dies für alle Teilflächen &amp;lt;math&amp;gt; i &amp;lt;/math&amp;gt; berechnen muss, ergibt sich ein lineares Gleichungssystem mit so vielen Gleichungen und Unbekannten wie es Teilflächen gibt.&lt;br /&gt;
&lt;br /&gt;
=== 1. Unterteilung der Oberflächen ===&lt;br /&gt;
Im ersten Schritt erfolgt die Festlegung der Primitiven: Wie und in welche Teilflächen soll eine gegebene kontinuierliche Oberfläche zerlegt werden? Üblich sind Dreieck und Quadrat. Bereits in dieser Phase wird zwischen Qualität und Effizienz entschieden. Je feinmaschiger das Netz, desto genauer sind die Ergebnisse, aber umso aufwendiger die Berechnungen.&lt;br /&gt;
&lt;br /&gt;
In der Praxis benutzt man meist adaptive Verfahren. Ausgehend von einer z.&amp;amp;nbsp;B. triangulierten Oberfläche, werden nach dem hier angegebenen Schema die zugehörigen Radiosity-Werte aller Facetten bestimmt. Mit diesen Daten erfolgen dann weitere ortsabhängige Netzverfeinerungen. Ausschlaggebend dafür können sein: ein hoher Radiosity-Gradient benachbarter Facetten, Diskontinuitäten im Lichtverlauf (z.&amp;amp;nbsp;B. Lichtfleck) oder eine örtlich ungünstige Netzeinteilung (z.&amp;amp;nbsp;B. T-Knoten).&lt;br /&gt;
[[Datei:Radiosity.svg|mini|Bestimmung von Radiosity-Werten bei konstanten, linearen und quadratischen Basisfunktionen]]&lt;br /&gt;
&lt;br /&gt;
=== 2. Festlegung der Basisfunktionen ===&lt;br /&gt;
Die diskrete Radiosity-Gleichung stellt eine Möglichkeit der Diskretisierung dar. Sie beruht auf der Annahme, dass die Radiosity über einer gegebenen Facette konstant ist, und verwendet daher konstante Basisfunktionen. Die Wahl von Basisfunktionen höheren Grads ist ebenfalls insbesondere mit dem [[Galerkin-Methode|Galerkin-Ansatz]] möglich.&lt;br /&gt;
&lt;br /&gt;
=== 3. Berechnung der Formfaktoren ===&lt;br /&gt;
Der aufwendigste Schritt bei Radiosity ist, unabhängig von dem gewählten [[Algorithmus]], die Berechnung der Formfaktoren. Ein Formfaktor gilt immer zwischen zwei Patches und beschreibt die Menge der ausgetauschten Strahlung, liegt also zwischen null (keine Strahlung wird ausgetauscht) und eins (alle Strahlung wird ausgetauscht).&lt;br /&gt;
&lt;br /&gt;
Der Formfaktor ist rein geometrischer Natur und wird durch die Stellung der Patches zueinander bestimmt. Außerdem spielt die Sichtbarkeit der Patches eine Rolle. Die Sichtbarkeitsberechnung braucht bei weitem die meiste Zeit in der Berechnung.&lt;br /&gt;
&lt;br /&gt;
Die Formel für einen Formfaktor lautet:&lt;br /&gt;
: &amp;lt;math&amp;gt;F_{s,e} = \frac{1}{A_s}\int_{v\in A_e}\int_{u\in A_s} \frac{1}{\pi r^2} \cos\phi_u\cos\phi_v V(u,v) \,\mathrm dA_s \mathrm dA_e&amp;lt;/math&amp;gt;&lt;br /&gt;
mit&lt;br /&gt;
: &amp;lt;math&amp;gt;F_{s,e}&amp;lt;/math&amp;gt; = Formfaktor zwischen dem Sender &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; und dem Empfänger &amp;lt;math&amp;gt;E&amp;lt;/math&amp;gt;&lt;br /&gt;
: &amp;lt;math&amp;gt;A_s&amp;lt;/math&amp;gt; = Der Fläche des Senders &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt;&lt;br /&gt;
: &amp;lt;math&amp;gt;A_e&amp;lt;/math&amp;gt; = Der Fläche des Empfängers &amp;lt;math&amp;gt;E&amp;lt;/math&amp;gt;&lt;br /&gt;
: &amp;lt;math&amp;gt;\phi_u&amp;lt;/math&amp;gt; = Der [[Winkel]] zwischen der [[Normalenvektor|Normale]] des Senders &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; und der Verbindungslinie zwischen Sender &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; und Empfänger &amp;lt;math&amp;gt;E&amp;lt;/math&amp;gt;&lt;br /&gt;
: &amp;lt;math&amp;gt;\phi_v&amp;lt;/math&amp;gt; = Der [[Winkel]] zwischen der [[Normalenvektor|Normale]] des Empfängers &amp;lt;math&amp;gt;E&amp;lt;/math&amp;gt; und der Verbindungslinie zwischen Empfänger &amp;lt;math&amp;gt;E&amp;lt;/math&amp;gt; und Sender &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt;&lt;br /&gt;
: &amp;lt;math&amp;gt;r&amp;lt;/math&amp;gt; = Entfernung zwischen Sender &amp;lt;math&amp;gt;S&amp;lt;/math&amp;gt; und Empfänger &amp;lt;math&amp;gt;E&amp;lt;/math&amp;gt;&lt;br /&gt;
: &amp;lt;math&amp;gt;V(u,v)= \begin{cases} 1, &amp;amp; \mbox{wenn }u\mbox{ von }v\mbox{ aus sichtbar} \\ 0, &amp;amp; \mbox{sonst}\end{cases}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Da das direkte Berechnen dieses Doppelintegrals sehr schwierig ist, werden im Allgemeinen Annäherungen verwendet.&lt;br /&gt;
&lt;br /&gt;
Das simpelste Verfahren ist nur für Flächen korrekt, die relativ klein und relativ weit entfernt sind und zwischen denen keine partielle Verdeckung besteht.&lt;br /&gt;
Man berechnet dabei Winkel und Entfernung nur zwischen zwei repräsentativen Punkten, den Mittelpunkten der beiden Flächen.&lt;br /&gt;
: &amp;lt;math&amp;gt;F_{s,e} \approx A_e \frac{\cos\phi_u\cos\phi_v d_{u,v}}{\pi r^2} &amp;lt;/math&amp;gt;&lt;br /&gt;
Wobei &amp;lt;math&amp;gt;u&amp;lt;/math&amp;gt; der Mittelpunkt von &amp;lt;math&amp;gt;A_s&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;v&amp;lt;/math&amp;gt; der Mittelpunkt von &amp;lt;math&amp;gt;A_e&amp;lt;/math&amp;gt; ist.&lt;br /&gt;
&lt;br /&gt;
==== Methode nach Nusselt ====&lt;br /&gt;
[[Datei:FormfaktorenfuerRadiosityBerechnung.PNG|mini|Ermittlung der Formfaktoren nach Nusselt]]&lt;br /&gt;
&amp;#039;&amp;#039;(auch „Nusselts Analogon“)&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Es wird ein repräsentativer Punkt der Empfängerfläche, der Mittelpunkt, ausgewählt. Die sichtbaren Teile der Senderfläche werden auf die Einheitshalbkugel um diesen Punkt projiziert. Dadurch wird &amp;lt;math&amp;gt;\frac{\cos\phi_v }{r^2}&amp;lt;/math&amp;gt; beachtet. Dann wird die Projektion auf der Einheitskugel wiederum in die Fläche, in der &amp;lt;math&amp;gt;A_j&amp;lt;/math&amp;gt; liegt, projiziert. Die entstandene Fläche wird durch &amp;lt;math&amp;gt;\pi&amp;lt;/math&amp;gt; geteilt (Fläche des Einheitskreises). Durch diesen Schritt wird der Formfaktor&lt;br /&gt;
&amp;lt;math&amp;gt;F_{s,e} \approx \int_{v\in A_e} \frac{\cos\phi_u\cos\phi_v d_{u,v}}{\pi r^2} \,\mathrm dA_e &amp;lt;/math&amp;gt;&lt;br /&gt;
ermittelt.&lt;br /&gt;
&lt;br /&gt;
==== Hemi-Cube-Verfahren ====&lt;br /&gt;
[[Datei:Hemicube Radiosity.png|mini|Approximation der Formfaktoren mittels Hemi-Cube]]&lt;br /&gt;
Von Cohen et al. stammt das sogenannte Hemi-Cube-Verfahren.&amp;lt;ref&amp;gt;M. F. Cohen, D. P. Greenberg: &amp;#039;&amp;#039;The hemi-cube: a radiosity solution for complex environments.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;Proceedings of the 12th annual [[SIGGRAPH|conference on Computer graphics and interactive techniques]]&amp;#039;&amp;#039;, S.&amp;amp;nbsp;31–40, ACM Press, New York 1985, ISBN 0-89791-166-0&amp;lt;/ref&amp;gt; Die Einheitshalbkugel nach Nusselt wird durch einen Einheitshalbwürfel approximiert, dessen Seitenflächen in ein diskretes Gitter unterteilt sind. Jeder Gitterfläche wird ein Gewichtungsfaktor, der &amp;#039;&amp;#039;Delta-Formfaktor&amp;#039;&amp;#039;, zugeordnet, welcher von der Position der Gitterfläche abhängig ist. Ein Delta-Formfaktor ist damit der Formfaktor der Gitterfläche nach Nusselt. Die Summe der Delta-Formfaktoren ist 1.&lt;br /&gt;
&lt;br /&gt;
Für jede der fünf Halbwürfelflächen wird mit modifizierten Rasteralgorithmen (üblicherweise [[Z-Buffer]]) ein &amp;#039;&amp;#039;Item-Buffer&amp;#039;&amp;#039; berechnet. Dieser enthält für jede Gitterfläche die Identität der Objektfläche (&amp;#039;&amp;#039;Item&amp;#039;&amp;#039;, rotes Dreieck im Bild), die darauf projiziert wurde. Für jedes &amp;#039;&amp;#039;Item&amp;#039;&amp;#039; wird die Summe der Delta-Formfaktoren der überdeckten Gitterflächen berechnet (rote Gitterflächen im Bild). Diese Summe wird als Formfaktor zwischen &amp;#039;&amp;#039;Item&amp;#039;&amp;#039; und betrachteter Fläche aufgefasst.&lt;br /&gt;
&lt;br /&gt;
==== Sillions Verbesserung ====&lt;br /&gt;
Statt eines Halbwürfels wird nun nur noch eine einzige Fläche verwendet, welche zentriert über dem differentiell kleinen Flächenstück (&amp;#039;&amp;#039;&amp;#039;dA&amp;#039;&amp;#039;&amp;#039;) platziert wird. Diese Fläche wird ebenfalls in kleine, diskrete Bereiche aufgeteilt. Diesen werden dann genau wie beim Hemicube-Verfahren in Abhängigkeit von der Geometrie zu &amp;#039;&amp;#039;&amp;#039;dA&amp;#039;&amp;#039;&amp;#039;, den sogenannten Delta-Formfaktoren zugeordnet. Der Vorteil bei diesem Verfahren ist, dass ein Patch nur auf diese eine Fläche projiziert werden muss und nicht mehr auf fünf Flächen eines Würfels. Außerdem ist dieses Verfahren legitim, da Patches, die orthogonal auf der Fläche von &amp;#039;&amp;#039;&amp;#039;dA&amp;#039;&amp;#039;&amp;#039; stehen, keinen großen Beitrag an der Gesamthelligkeit haben. Diese Beobachtung kann man sich über den Cosinus zwischen den Normalen der beiden Flächenstücke klarmachen.&lt;br /&gt;
&lt;br /&gt;
=== 4. Berechnung der Radiosity-Werte ===&lt;br /&gt;
Die diskrete Radiosity-Gleichung kann als [[lineares Gleichungssystem]] aufgefasst werden und lässt sich demzufolge nach einigen Umformschritten wie folgt in [[Matrix (Mathematik)|Matrixform]] darstellen.&lt;br /&gt;
: &amp;lt;math&amp;gt;&lt;br /&gt;
  \begin{pmatrix}&lt;br /&gt;
    B_1 \\&lt;br /&gt;
    B_2 \\&lt;br /&gt;
    \vdots \\&lt;br /&gt;
    B_n&lt;br /&gt;
  \end{pmatrix}&lt;br /&gt;
  =&lt;br /&gt;
  \begin{pmatrix}&lt;br /&gt;
    E_1 \\&lt;br /&gt;
    E_2 \\&lt;br /&gt;
    \vdots \\&lt;br /&gt;
    E_n&lt;br /&gt;
  \end{pmatrix}&lt;br /&gt;
  +&lt;br /&gt;
  \begin{pmatrix}&lt;br /&gt;
    \rho_1 F_{11} &amp;amp; \rho_1 F_{12} &amp;amp; \ldots &amp;amp; \rho_1 F_{1n} \\&lt;br /&gt;
    \rho_2 F_{21} &amp;amp; \rho_2 F_{22} &amp;amp; \ldots &amp;amp; \rho_2 F_{2n} \\&lt;br /&gt;
    \vdots &amp;amp; \vdots &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
    \rho_n F_{n1} &amp;amp; \rho_n F_{n2} &amp;amp; \ldots &amp;amp; \rho_n F_{nn}&lt;br /&gt;
  \end{pmatrix}&lt;br /&gt;
  \cdot&lt;br /&gt;
  \begin{pmatrix}&lt;br /&gt;
    B_1 \\&lt;br /&gt;
    B_2 \\&lt;br /&gt;
    \vdots \\&lt;br /&gt;
    B_n&lt;br /&gt;
  \end{pmatrix}&lt;br /&gt;
&amp;lt;/math&amp;gt; oder kurz &amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039; = &amp;#039;&amp;#039;&amp;#039;E&amp;#039;&amp;#039;&amp;#039;+&amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039;•&amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Um alle gesuchten Radiosity-Werte zu bestimmen, muss das Gleichungssystem gelöst werden. Naheliegend ist die Invertierung der Matrix (&amp;#039;&amp;#039;&amp;#039;I&amp;#039;&amp;#039;&amp;#039;-&amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039;) ([[Gaußsches Eliminationsverfahren|Matrix-Inversion nach Gauß]]), was aber aufgrund des enormen Aufwands unpraktikabel ist.&lt;br /&gt;
&lt;br /&gt;
Im Allgemeinen existieren zwei unterschiedliche [[Iteration|iterative Lösungsstrategien]], die gegen die exakte Lösung [[Grenzwert (Folge)|konvergieren]]. Damit ist ein frei wählbarer Kompromiss zwischen Darstellungsqualität und Rechenzeit möglich.&lt;br /&gt;
&lt;br /&gt;
* Beim &amp;#039;&amp;#039;&amp;#039;Gathering&amp;#039;&amp;#039;&amp;#039; wird die Radiosity B&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; einer Facette durch &amp;#039;&amp;#039;Einsammeln&amp;#039;&amp;#039; aller einflussnehmenden B&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt; (abhängig vom jeweiligen Formfaktor) gebildet. Ausgangspunkt ist &amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039;&amp;lt;sup&amp;gt;0&amp;lt;/sup&amp;gt;=&amp;#039;&amp;#039;&amp;#039;E&amp;#039;&amp;#039;&amp;#039; und man sieht nur die selbstleuchtenden Flächen. Nach dem ersten Schritt &amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039;&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;=&amp;#039;&amp;#039;&amp;#039;E&amp;#039;&amp;#039;&amp;#039;+&amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039;•&amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039;&amp;lt;sup&amp;gt;0&amp;lt;/sup&amp;gt; sind zusätzlich alle direkt beleuchteten Objekte sichtbar. Im nächsten Iterationsschritt &amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039;&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;=&amp;#039;&amp;#039;&amp;#039;E&amp;#039;&amp;#039;&amp;#039;+&amp;#039;&amp;#039;&amp;#039;T&amp;#039;&amp;#039;&amp;#039;•&amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039;&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; werden die einfachen Reflexionen berücksichtigt usw. Auffällig ist, dass in jedem Schritt alle Formfaktoren benötigt werden. Auf diesem Prinzip beruhende Verfahren sind [[Jacobi-Verfahren|Jacobi-Iteration]] und [[Gauß-Seidel-Verfahren|Gauß-Seidel-Iteration]].&lt;br /&gt;
* Beim &amp;#039;&amp;#039;&amp;#039;Shooting&amp;#039;&amp;#039;&amp;#039; wird die unverteilte Radiosity B&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; auf alle als Empfänger in Frage kommenden Facetten (abhängig vom jeweiligen Formfaktor) &amp;#039;&amp;#039;geschossen&amp;#039;&amp;#039;. Ausgangspunkt sind wiederum die selbstleuchtenden Flächen, somit gilt &amp;#039;&amp;#039;&amp;#039;B&amp;#039;&amp;#039;&amp;#039;=&amp;#039;&amp;#039;&amp;#039;E&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
  für jede Facette i&lt;br /&gt;
    Radiosity B = Eigenleuchten E&lt;br /&gt;
    unverteilte Radiosity ΔB = Eigenleuchten E&lt;br /&gt;
  wiederhole&lt;br /&gt;
    i = Facette mit maximaler Restenergie ΔB&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;•A&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;&lt;br /&gt;
    für jede Facette j&lt;br /&gt;
      rad = ΔB&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt;•ρ&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;•F&amp;lt;sub&amp;gt;ji&amp;lt;/sub&amp;gt;         (wie viel der zu verteilenden Radiosity bekommt Facette j)&lt;br /&gt;
      ΔB&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt; = ΔB&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;+rad            (zu verteilende Radiosity der Facette j wird um diesen Betrag erhöht)&lt;br /&gt;
      B&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt; = B&amp;lt;sub&amp;gt;j&amp;lt;/sub&amp;gt;+rad              (Radiosity der Facette j wird um diesen Betrag erhöht)&lt;br /&gt;
    ΔB&amp;lt;sub&amp;gt;i&amp;lt;/sub&amp;gt; = 0                    (zu verteilende Radiosity der Facette i wurde verteilt und ist nun 0)&lt;br /&gt;
  bis (Abbruchkriterium)&lt;br /&gt;
&lt;br /&gt;
: Als Abbruchkriterien können neben objektiven Werten wie [[Fehler]]metriken auch der subjektive Eindruck benutzt werden. &amp;#039;&amp;#039;Shooting&amp;#039;&amp;#039;-Verfahren sind den &amp;#039;&amp;#039;Gathering&amp;#039;&amp;#039;-Verfahren in zwei Gesichtspunkten überlegen. Zum einen kann aus dem [[Pseudocode]] abgeleitet werden, dass für jeden Iterationsschritt lediglich j Formfaktoren benötigt werden. Zum anderen wird in jedem Durchlauf die Radiosity der Facette mit der größten Restenergie verteilt, wodurch &amp;#039;&amp;#039;Shooting&amp;#039;&amp;#039;-Verfahren wesentlich schneller gegen „schöne“ Bilder konvergieren als &amp;#039;&amp;#039;Gathering&amp;#039;&amp;#039;-Verfahren. Auf diesem Prinzip beruhende Algorithmen sind [[Southwell-Iteration]] und [[Progressive-Refinement]].&lt;br /&gt;
&lt;br /&gt;
=== 5. Rendern ===&lt;br /&gt;
Den letzten Schritt bildet das [[Bildsynthese|Rendern]] des fertigen Bildes. Die an den ausgesuchten Stellen berechneten Radiosity-Werte werden gemäß den gewählten Basisfunktionen kombiniert. Wurden Radiosity-Werte in den Netzknoten bestimmt ist z.&amp;amp;nbsp;B. auch [[Gouraud Shading]] möglich. Genügt das so erstellte Bild dem Anspruch nicht, so können weitere Iterationen aus (4) folgen. Treten ungewollte grafische Artefakte auf, so sollte mit entsprechenden Änderungen in der Netzstruktur der Algorithmus von vorn gestartet werden.&lt;br /&gt;
&lt;br /&gt;
== Geschichtliche Entwicklung ==&lt;br /&gt;
[[Datei:Radiosity - RRV, step 79.png|mini|Mit Radiosity gerendertes Bild]]&lt;br /&gt;
&lt;br /&gt;
1984 wurde das Verfahren erstmals von Goral et al.&amp;lt;ref&amp;gt;C. Goral, K. E. Torrance, D. P. Greenberg und B. Battaile: [http://www.cs.rpi.edu/~cutler/classes/advancedgraphics/S07/lectures/goral.pdf &amp;#039;&amp;#039;Modeling the interaction of light between diffuse surfaces.&amp;#039;&amp;#039;] (PDF; 1,1&amp;amp;nbsp;MB) In: &amp;#039;&amp;#039;Computer Graphics.&amp;#039;&amp;#039; Band 18, Nr. 3.&amp;lt;/ref&amp;gt; vorgestellt. Es stammt aus der [[Thermodynamik]], wo es verwendet wurde, um den Austausch von Wärmestrahlung zu berechnen ([[Strahlungsrechnung]]). Zu dieser Zeit wurde die Full-Form-Factor-Matrix-Methode zum Lösen des Gleichungssystems verwendet. Hier wird das Gleichungssystem für alle Formfaktoren zwischen allen Patches (=Flächen) der Welt aufgestellt und dann mittels eines mathematischen Verfahrens (meist dem Gauß-Seidel-Verfahren) gelöst. Prinzipiell entspricht dieses Vorgehen dem Einsammeln von Radiosity. Für jedes Patch wird berechnet, wie viel Licht es von jedem anderen Patch erhält. Das hat den Nachteil, dass die Berechnung der gesamten Matrix extrem viel Zeit benötigt und viel Speicherplatz belegt, was das Verfahren für komplexe Szenen unbrauchbar macht.&lt;br /&gt;
&lt;br /&gt;
1988 wurde dann das &amp;#039;&amp;#039;&amp;#039;Progressive-Refinement-Verfahren&amp;#039;&amp;#039;&amp;#039; von Cohen et al. vorgestellt.&amp;lt;ref&amp;gt;M. F. Cohen u. A.: &amp;#039;&amp;#039;A progressive refinement approach to fast radiosity image generation.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;Proceedings of the 15th annual conference on Computer graphics and interactive techniques&amp;#039;&amp;#039;, S.&amp;amp;nbsp;75–84, ACM Press, New York 1988&amp;lt;/ref&amp;gt; Hier wird der Prozess umgedreht, und das Licht wird nicht mehr an jedem Patch eingesammelt, sondern von jedem Patch verschossen. So kann man zuerst einmal das Licht von den Patches mit dem größten Radiositywert versenden und sich dann denen mit wenig Radiosity zuwenden. Hier ist es nicht mehr nötig, die gesamte Matrix zu berechnen, sondern es werden in jedem Schritt nur noch die Formfaktoren von einem einzelnen Patch zu allen anderen benötigt. Dadurch sinkt der benötigte Speicherplatz enorm, und man erhält nach jedem Schritt ein brauchbares Bild. Je länger man wartet, desto besser wird das Bild, da immer mehr Indirektionen berechnet werden. Um zu konvergieren, braucht dieses Verfahren allerdings genauso lange wie die Full-Form-Factor-Matrix-Methode.&lt;br /&gt;
&lt;br /&gt;
Im Prinzip entspricht das Verfahren einer Reihenentwicklung der Matrix. Das [[Lineares Gleichungssystem|Lineare Gleichungssystem]], das sich aus der Strahlungsgleichung ergibt ist dann &amp;lt;math&amp;gt;(I-M) B = E&amp;lt;/math&amp;gt;, wobei &amp;lt;math&amp;gt;I&amp;lt;/math&amp;gt; die [[Einheitsmatrix]], &amp;lt;math&amp;gt;M&amp;lt;/math&amp;gt; die Matrix, bestehend aus den Formfaktoren und den Reflexionskoeffizienten und &amp;lt;math&amp;gt;E&amp;lt;/math&amp;gt; die Eigenstrahlung beschreibt. Stellt man die Gleichung nun um zu &amp;lt;math&amp;gt;B = (I-M)^{-1} E&amp;lt;/math&amp;gt;, so lässt sich der rechte Teil &amp;lt;math&amp;gt;(I-M)^{-1}&amp;lt;/math&amp;gt; als Reihe der folgenden Form entwickeln, und man erhält eine inkrementelle Annäherung an die tatsächliche Strahlungsintensität:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt;\sum_{i=1}^\infty x^i = \frac{1}{1-x} = (1-x)^{-1}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
1991 wurde von Hanrahan et al. das &amp;#039;&amp;#039;&amp;#039;Hierarchische Radiosity&amp;#039;&amp;#039;&amp;#039; vorgestellt.&amp;lt;ref&amp;gt;Pat Hanrahan u. A.: &amp;#039;&amp;#039;[http://graphics.stanford.edu/papers/rad/ A Rapid Hierarchical Radiosity Algorithm].&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;Proceedings of the 18th annual conference on Computer graphics and interactive techniques&amp;#039;&amp;#039;, S.&amp;amp;nbsp;197–206, ACM Press, New York 1991&amp;lt;/ref&amp;gt; Bei diesem Verfahren wird eine Patchhierarchie verwendet. Wenige große Patches bestehen aus vielen kleinen. Der Lichtaustausch wird jetzt auf unterschiedlichen Stufen vorgenommen. Wenn der Fehler gering ist, wird das Licht auf einer hohen Hierarchieebene ausgetauscht, wenn ein großer Fehler zu erwarten ist (zum Beispiel wenn viel Licht ausgetauscht wird oder die Flächen sehr nahe beieinander liegen), dann wird das Licht auf einer niedrigeren Ebene ausgetauscht. Dadurch reduziert sich die Anzahl der zu berechnenden Formfaktoren substantiell, und die Berechnung wird deutlich beschleunigt.&lt;br /&gt;
&lt;br /&gt;
Zusätzlich zu diesen Verfahren wurden noch viele Erweiterungen ersonnen. Zum Beispiel gibt es die Methode des &amp;#039;&amp;#039;&amp;#039;Clustering&amp;#039;&amp;#039;&amp;#039;&amp;lt;ref&amp;gt;B. Smits u. A.: &amp;#039;&amp;#039;A Clustering Algorithm for Radiosity in Complex Environments.&amp;#039;&amp;#039; In: &amp;#039;&amp;#039;Proceedings of the 21st annual conference on Computer graphics and interactive techniques.&amp;#039;&amp;#039; ACM Press, New York 1994, S.&amp;amp;nbsp;435–442 ({{Webarchiv | url=http://www.cs.ucl.ac.uk/staff/j.mortensen/papers/radiosity/Smits_B__A%20Clustering_Algorithm_for_Radiosity_in_Complex_Environments.pdf | wayback=20040310110423 | text=cs.ucl.ac.uk}} PDF)&amp;lt;/ref&amp;gt;, welches eine Erweiterung des Hierarchischen Radiosity ist. Hier wird oberhalb der Patchhierarchie eine weitere Hierarchie erzeugt, die Cluster. Licht kann dann auch zwischen ganzen Clustergruppen ausgetauscht werden, abhängig vom zu erwartenden Fehler. Wieder spart man sich die Berechnung vieler Formfaktoren.&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Michael F. Cohen, John R. Wallace: &amp;#039;&amp;#039;Radiosity and Realistic Image Synthesis&amp;#039;&amp;#039;. Morgan Kaufmann, San Francisco 1993, ISBN 0-12-178270-0.&lt;br /&gt;
* François X. Sillion, Claude Puech: &amp;#039;&amp;#039;Radiosity and Global Illumination&amp;#039;&amp;#039;. Morgan Kaufmann, San Francisco 1994, ISBN 1-55860-277-1.&lt;br /&gt;
&lt;br /&gt;
== Quellen ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Lesenswert|3. September 2005|9019771}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Algorithmus (Computergrafik)]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Nnamllit11</name></author>
	</entry>
</feed>