Global-Illumination: Radiosity Seminar Computergrafik Jörg Osse.

Post on 06-Apr-2016

224 views 3 download

Tags:

transcript

Global-Illumination: Radiosity

Seminar Computergrafik

Jörg Osse

Seminar Computergrafik 2

Übersicht Vergleich Radiositygleichung Hemicube Progressive refinement Ambienter Term

Seminar Computergrafik 3

Vergleich

Bilder: [1]

Seminar Computergrafik 4

Direct Illumination Direct Illumination

Raytracing, z-Buffer (OpenGL, Direct3D) 2 Entitäten: Objekte und Lichtquellen Spekulare Beleuchtung Ambientes Licht nur durch Konstanten Keine diffuse Interaktion zwischen Flächen Nur punktförmige Lichtquellen oder

paralleles Licht Räume wirken unnatürlich (scharfe

Schattenwürfe)

Seminar Computergrafik 5

Radiosity Radiosity

Realistische diffuse Beleuchtung Keine transparenten Flächen Keine Reflexionen Aber realistisch

Seminar Computergrafik 6

Patches Die Szene wird in Patches aufgeteilt Es gibt keine expliziten Lichtquellen Jeder Patch wird von allen anderen

Patches „beleuchtet“ Das Licht wandert zwischen den Patches

mehrfach hin und her. Model nötig

Seminar Computergrafik 7

Radiosity Gleichung Radiosity Gleichung:

j

jjijiiiii dAFBRdAEdAB

B Strahlungintensität die vom Patch ausgeht dA Flächenstück E Eigene Emission des Patches R Reflexionseigenschaften des Patches F Formfaktor

Seminar Computergrafik 8

Formfaktor Formfaktor F

i

jiij Avon energieStrahlungs emittierte gesamte

trifftdirekt AwelcheAvon energieStrahlungsF

Seminar Computergrafik 9

Formfaktor Formfaktor

Фj

Фi

Nj

Ni

Ai

Aj

r

dAj

dAiij

A Aj

ji

iij dAdA

rAF

i

2

coscos1

jjiiij AFAF

Seminar Computergrafik 10

Radiosity Gleichung Radiosity Gleichung:

j

jjijiiiii dAFBRdAEdAB

jjiiij AFAFmit

j

ijjiii FBREB

j

iijjiiiii dAFBRdAEdAB

n

1jijjiii FBREB

Seminar Computergrafik 11

Nusselt analouge Nusselt analouge

A,B,C haben dengleichen Formfaktor

Bild: [2] S.311

Seminar Computergrafik 12

Hemicube Hemicube

ijA Aj

ji

iij dAdA

rAF

i

2

coscos1

jAj

jidAiAj dA

rF 2

coscos

jji

dAiAj Ar

F 2

coscos

[Bild: Mat. S.311]

Seminar Computergrafik 13

Hemicube Hemicube

Bilder: [1]

Seminar Computergrafik 14

Hemicube Hemicube

Bilder: [1]

Seminar Computergrafik 15

Hemicube Hemicube

Bilder: [1]

Seminar Computergrafik 16

Radiositygleichung

n

1jijjiii FBREB

Seminar Computergrafik 17

Radiositygleichung Radiositygleichung

n

2

1

n

2

1

nnn2nn1nn

n22222212

n11121111

E

EE

B..

BB

FR1..FRFR..........FR..FR1FRFR..FRFR1

i 0Fii

Seminar Computergrafik 18

Radiositygleichung Radiositygleichung

n

2

1

n

2

1

2nn1nn

n22212

n11121

E

EE

B..

BB

1..FRFR..........FR..1FRFR..FR1

R<1 und F<<1, also Diagonaldominant Lösung lässt sich mit Gauss Seidel Verfahren in

wenigen Iteration sehr gut annähern

Seminar Computergrafik 19

Gauss Seidel Gauss Seidel

ii

kj

ijij

kj

ijiji

ki a

xaxaEx

EAx

)1()(

)(

Seminar Computergrafik 20

Gathering Gathering

jij

N

1jiii B*)F*(REB

Bilder: [3]

Seminar Computergrafik 21

Aufwand Aufwand

Berechnung von n² Formfaktoren: O(n²)

Lösung des Gleichungssystems mit Gauss Seidel: O(n)

Gesamtaufwand: O(n²)

Seminar Computergrafik 22

Aufwand Speicherplatz

n² Formfaktoren: O(n²)

Konkretes Beispiel: 60.000 Patches 4 Byte/ Formfaktor 60.000 * 60.000 * 4 Byte Ca. 13,4 GByte Optimiert: 2,7 GByte (Annahme: 80% der

Patches können sich nicht „sehen“)

Seminar Computergrafik 23

Ergebnis Wann können wir das Ergebnis sehen?

Nachdem die komplette Lösung errechnet wurde

Seminar Computergrafik 24

Progressive Refinement Progressive Refinement

Möglichst schnell eine Lösung (Vorschau) Diese Lösung soll die Grundlage einer

bessern Lösung sein (Iterationschritt) Idee: Shooting

Seminar Computergrafik 25

Shooting Gathering vs. Shooting

jij

N

1jiii B*)F*(REB

jijijj B B)F*(RBB i Bilder:[3]

Seminar Computergrafik 26

Progressive Refinement Pseudocode

foreach patch: Bi= Ei

foreach patch: ΔBi= Ei

foreach iteration, foreach patch iFormfaktoren Fij mit Hemicube über patch i berechnenforeach patch jΔrad=Rj ΔBi Fij Ai/Aj ΔBj=ΔBj+ΔradBj=Bj+ΔradΔBi= 0

Optimierung Die meisten Patches sind Anfangs dunkel. –Sortieren nach ΔBiAi!

Seminar Computergrafik 27

Beispiel

Bilder: [4]

Seminar Computergrafik 28

Progressive Refinement Nachteil: zunächst nur direkt

beleuchtete Fläche sichtbar Lösung: Einführung eines ambienten

Terms Abschätzung wie groß die erzeugte

Helligkeit der nicht verschossenen Energie ist

Seminar Computergrafik 29

ambienter Term ambienter Term

n

jjjglobal FBRAmbient

1* )(

n

jijjiii FBREB

1

AmbientRBB iii '

Seminar Computergrafik 30

ambienter Term „Allgemeiner“ Formfaktor:

n

ii

jj

A

AF

1

*

Seminar Computergrafik 31

ambienter Term

n

ii

n

iii

mittel

A

ARR

1

1

mittelmittelmittelmittelglobal RRRRR

11....1 32

Durchschnittliche Reflexion:

Seminar Computergrafik 32

Progressive Refinement Pseudocode

berechne Rglobal

foreach patch: ΔBi= Ei

berechne Ambientforeach patch: Bi= Ei+ Ri AmbientΔAmbient=0until Konvergenz {

select patch i mit größter nicht verschoss. EnergieΔBiAi

Formfaktoren Fij mit Hemicube über patch i berechnenforeach patch j

Δrad=Rj ΔBi Fij Ai/Aj ΔBj=ΔBj+ΔradBj=Bj+Δrad + Ri ΔAmbient

ΔBi= 0berechne ΔAmbientDisplay (Gouraud shaded)

}

Seminar Computergrafik 33

Beispiel

Bilder: [4]

Seminar Computergrafik 34

Beispiel

Bilder: [4]

Seminar Computergrafik 35

Beispiel

55000 PatchesBild: [4]

Seminar Computergrafik 36

Quellen[1] Radiosity http://freespace.virgin.net/hugo.elias/radiosity/radiosity.htm[2] 3D Computer Graphics, Alan H. Watt., Addison wesley[3] RadiosityTeil III, S. Schäfer, D. Fellner,

Institut für ComputerGraphik, TU Braunschweig (ssdf-RadCourse3-ws01.pdf)

[4] A Progressive Refinement Approach to Fast Radiosity Image GernerationMichael F. Cohen, Shenchang Eric Chen, John R. Wallace, Donald P. GreenbergComputer Graphics, Volume 22, SIGGRAPH ´88