Radiosity bzw. Radiosität 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 Algorithmen eines der beiden wichtigen Verfahren zur Berechnung des Lichteinfalls innerhalb einer 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.

Das Radiosity-Verfahren basiert auf der Annahme, dass alle Oberflächen 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.

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 Verdeckungsberechnung hat in einem unabhängigen Schritt zu erfolgen.

Eigenschaften Vorteile mini|300px|Ein mittels diffusem Raytracing gerendertes Bild ohne Simulation der indirekten Beleuchtung diffuser Oberflächen.

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.

Blickpunktunabhängigkeit 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 gerendert werden (meist mittels Scanline-Algorithmen oder Z-Buffering), was für Anwendungen wie virtuelle Architekturmodelle interessant ist. Diesen Vorteil haben jedoch nicht alle Programme. Einfache indirekte, ideal diffuse Lichtreflexion 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.

Nachteile

Keine analytischen Primitiven 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). Es wurde versucht, mittels adaptativer Vereinfachung der Geometrie dieses Problem teilweise zu lösen,H. E. Rushmeier u. A: Geometric simplification for indirect illumination calculations. In: Proceedings of Graphics Interface ’93. Canadian Information Processing Society, Toronto 1993, S. 227–236 ( PDF). 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. Hoher Speicher- und Zeitbedarf Wenn die Anzahl der Primitiven einer Szene ist, so weisen die effizientesten Radiosity-Varianten eine asymptotische Zeitkomplexität von auf, wie empirisch festgestellt wurde.M. F. Cohen u. A.: Radiosity and realistic image synthesis. Academic Press Professional, San Diego 1993, ISBN 0-12-178270-0. Dagegen benötigt Raytracing nur eine Laufzeit von . Dies begrenzt schnell den praktisch möglichen Verfeinerungsgrad bei Radiosity. Daneben ergeben sich zur Berechnung und Speicherung der Formfaktoren relativ hohe Speicheranforderungen. Globale Beleuchtung schwer realisierbar 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 Beleuchtungsmodelle sowie transluzenter Flächen ist möglich,H. Rushmeier, K. Torrance: Extending the radiosity method to include specularly reflecting and translucent materials. In: ACM Transactions on Graphics. Band 9, S. 1–27, ACM Press, New York 1990 (graphics.cornell.edu PDF)E. Gobbetti u. A.: Hierarchical Higher Order Face Cluster Radiosity for Global Illumination Walkthroughs of Complex Non-Diffuse Environments. In: Computer Graphics Forum, Band 22-3 (9/2003). hat jedoch keine breite Verwendung gefunden, da derartige Effekte schneller bzw. präziser mittels auf Raytracing basierter Lösungen möglich sind.

Vergleich mit Raytracing 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.

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.B. Walter u. A.: Global Illumination Using Local Linear Density Estimation. In: ACM Transactions on Graphics, Vol. 16-3 (7/1997), S. 217–259, ACM Press, New York 1997

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.

Prinzip Mit der eingangs formulierten Annahme kann die allgemeine Rendergleichung in die Radiosity-Gleichung überführt werden.

mit B(x) = gesamte vom Punkt x abgestrahlte Energie (Summe aus Eigenstrahlung und Reflexion als Leistung pro Flächeneinheit), genannt Radiosity im Punkt x E(x) = im Punkt x abgegebene Eigenstrahlung ρ(x) = Reflexionsfaktor im Punkt x S = alle Oberflächen der Szene r = Abstand der Punkte x und x' = Der Winkel zwischen der Normale im Punkt x und der Verbindungslinie zwischen den Punkten x und x' . 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' zu betrachten, teilt man die Oberfläche S in zusammenhängende Teilflächen (Facetten oder Patches genannt) Ai auf (Finite-Elemente-Methode). Für diese Teilflächen gelten weitere Annahmen: jedes Ai ist planar; die jeweilige Radiosity Bi und der Reflexionsfaktor ρi sind über Ai konstant. Dies führt dann zur diskreten Radiosity-Gleichung.

mit Bi = gesamte von Teilfläche i abgestrahlte Energie (Summe aus Eigenstrahlung und Reflexion als Leistung pro Flächeneinheit), genannt Radiosity der Teilfläche i Ei = von der Teilfläche i abgegebene Eigenstrahlung ρi = Reflexionsfaktor der Teilfläche i n = Anzahl der Teilflächen Fij = Anteil an der von Fläche j abgegebenen Energie, die auf Fläche i auftrifft, genannt Formfaktor.

Die Radiosity von Teilfläche ist also gleich der Eigenstrahlung der Teilfläche plus der mit dem diffusen Reflexionsfaktor gewichteten Summe der Radiosity von allen anderen Teilflächen . Wobei hierbei der Formfaktor , 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 zueinander. Da man dies für alle Teilflächen berechnen muss, ergibt sich ein lineares Gleichungssystem mit so vielen Gleichungen und Unbekannten wie es Teilflächen gibt.

1. Unterteilung der Oberflächen 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.

In der Praxis benutzt man meist adaptive Verfahren. Ausgehend von einer z. 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. B. Lichtfleck) oder eine örtlich ungünstige Netzeinteilung (z. B. T-Knoten). mini|Bestimmung von Radiosity-Werten bei konstanten, linearen und quadratischen Basisfunktionen

2. Festlegung der Basisfunktionen 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-Ansatz möglich.

3. Berechnung der Formfaktoren 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).

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.

Die Formel für einen Formfaktor lautet:

mit = Formfaktor zwischen dem Sender und dem Empfänger = Der Fläche des Senders = Der Fläche des Empfängers = Der Winkel zwischen der Normale des Senders und der Verbindungslinie zwischen Sender und Empfänger = Der Winkel zwischen der Normale des Empfängers und der Verbindungslinie zwischen Empfänger und Sender = Entfernung zwischen Sender und Empfänger

Da das direkte Berechnen dieses Doppelintegrals sehr schwierig ist, werden im Allgemeinen Annäherungen verwendet.

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. Man berechnet dabei Winkel und Entfernung nur zwischen zwei repräsentativen Punkten, den Mittelpunkten der beiden Flächen.

Wobei der Mittelpunkt von und der Mittelpunkt von ist.

Methode nach Nusselt mini|Ermittlung der Formfaktoren nach Nusselt (auch „Nusselts Analogon“)

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 beachtet. Dann wird die Projektion auf der Einheitskugel wiederum in die Fläche, in der liegt, projiziert. Die entstandene Fläche wird durch geteilt (Fläche des Einheitskreises). Durch diesen Schritt wird der Formfaktor

ermittelt.

Hemi-Cube-Verfahren mini|Approximation der Formfaktoren mittels Hemi-Cube