29.04.2015 Aufrufe

Reflexion

Reflexion

Reflexion

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Reflexion</strong><br />

3. Vorlesung<br />

Photorealistische Computergrafik<br />

Thorsten Grosch


Zusammenfassung<br />

Photometrische<br />

t h Radiometrische<br />

i Vereinfachter<br />

Einheit<br />

Einheit<br />

Bezeichnung<br />

Bezeichnung<br />

Zusammenhang<br />

Q<br />

Lichtmenge<br />

(luminous energy)<br />

Strahlungsmenge<br />

g<br />

(radiant energy)<br />

φ<br />

I<br />

E<br />

Lichtstrom<br />

Strahlungsfluß<br />

lm<br />

(luminous flux)<br />

(radiant flux)<br />

Lichtstärke<br />

(luminous intensity)<br />

Beleuchtungsstärke<br />

(illuminance)<br />

cd<br />

lx<br />

Strahlstärke<br />

(radiant intensity)<br />

Bestrahlungsstärke<br />

(irradiance)<br />

W<br />

W / sr<br />

W / m²<br />

B Radiosity lm /m² Radiosity W/m²<br />

L<br />

Leuchtdichte<br />

(luminance)<br />

cd / m²<br />

Strahldichte<br />

(radiance)<br />

W / m²sr<br />

L =<br />

φ =<br />

ΔQ<br />

Δtt<br />

Δφ<br />

I =<br />

Δω<br />

Δφ<br />

E = Δ<br />

A e<br />

Δ<br />

B = φ<br />

ΔA s<br />

Δφ<br />

ΔA⋅cosθ<br />

⋅ Δω<br />

T. Grosch - 2 -


Zusammenhänge<br />

• Lambert Emitter<br />

• Photometrisches Grundgesetz<br />

I ⋅cosθe<br />

E ≈<br />

2<br />

d<br />

Photometrisches Entfernungsgesetz<br />

• Einfache Lichtübertragung<br />

E<br />

≈<br />

L ⋅Δω ⋅cosθ<br />

e<br />

ΔA s<br />

θ s<br />

d<br />

θ e<br />

ΔA e<br />

T. Grosch - 3 -


Polarkoordinaten in 3D<br />

y<br />

y<br />

P<br />

P<br />

z<br />

θ r<br />

0<br />

0<br />

x ϕ x<br />

P Kart.<br />

⎛ x<br />

⎞<br />

⎜<br />

⎟<br />

= ⎜ y⎟<br />

⎜ ⎟<br />

⎝ z<br />

⎠<br />

z<br />

P polar<br />

⎛θ<br />

⎞<br />

⎜ ⎟<br />

= ⎜ϕ<br />

⎜ ⎟ ⎟⎟ ⎝ r ⎠<br />

ϕ 0, 2π<br />

∈ ( 0 π ) ∈ ( ) r ∈ ( 0,<br />

∞)<br />

θ ,<br />

θ : Winkel zur y-Achse (Breitengrad)<br />

ϕ: Rotation um y-Achse (Längengrad)<br />

(ganze Kugel…)<br />

T. Grosch - 4 -


Beleuchtungsstärke<br />

• Für einen endlich großen<br />

Sender gilt<br />

E<br />

≈<br />

L( (<br />

v ω<br />

) ⋅cosθ<br />

⋅Δω<br />

• Für eine unendlich kleine<br />

Senderfläche gilt<br />

dE = L<br />

(<br />

v ω<br />

) ⋅cos<br />

θ ⋅<br />

dω<br />

• Die gesamte<br />

Beleuchtungsstärke erhält<br />

man durch Integration<br />

ti<br />

über den Halbraum<br />

E<br />

= ∫ L<br />

(<br />

v ω<br />

) ⋅cosθ<br />

⋅ dω<br />

2π sr<br />

L 2<br />

Δω<br />

L 1<br />

Δω<br />

L(ω v )<br />

E<br />

T. Grosch - 5 -


Rendering Equation<br />

• Globale Beleuchtung<br />

L<br />

o<br />

v<br />

( x,<br />

ω )<br />

o<br />

Eigenemission<br />

(nur Lichtquelle)<br />

v<br />

v v<br />

v<br />

= L ( x,<br />

ω ) + ∫ f ( x,<br />

ω , ω ) ⋅cosθ<br />

⋅ L ( x,<br />

ω ) ⋅ dω<br />

e<br />

o<br />

2<br />

∫<br />

π<br />

sr<br />

r<br />

v<br />

L (x<br />

v<br />

i<br />

x,<br />

ωi<br />

)<br />

(x<br />

v v ωi<br />

L x<br />

ωo<br />

θ<br />

,<br />

ω<br />

)<br />

o( o<br />

x<br />

i<br />

o<br />

i<br />

dE<br />

i<br />

i<br />

f<br />

r : <strong>Reflexion</strong> an der Oberfläche,<br />

genaueres dazu kommt jetzt<br />

Gute Übersicht:<br />

Global Illumination Compendium<br />

www.cs.kuleuven.be/~phil/GI<br />

T. Grosch - 6 -


Einleitung<br />

• Die Grundgrößen des<br />

Lichts sind jetzt t bekannt<br />

• Nächste Frage:<br />

?<br />

– Was passiert, wenn Licht<br />

auf ein Material auftrifft ?<br />

• Mathematische<br />

Beschreibung wird<br />

benötigt von<br />

– Geometrie<br />

– Lichtquellen<br />

– Materialien<br />

T. Grosch - 7 -


Geometrie<br />

• Für diese Vorlesung besteht die Geometrie aus<br />

– Polygonen (meistens)<br />

• Liste von Eckpunkten (gegen UZS)<br />

• Evtl. Eckpunkt-Normalen (für besseres Shading)<br />

– Manchmal auch<br />

• Kugeln oder<br />

• Punkten<br />

T. Grosch - 8 -


Lichtquellen<br />

Punktlicht<br />

Spotlicht<br />

Flächenlicht<br />

(Lambert Emitter)<br />

I ( θ ) = I<br />

0<br />

I( θ ) = I ⋅ 0<br />

cos<br />

n<br />

θ<br />

I ( θ ) ≈ I ⋅ 0<br />

cosθ<br />

Gerichtetes Licht<br />

(parallel, Lichtquelle im<br />

Unendlichen)<br />

Environment Map<br />

(viele parallele<br />

l<br />

Lichtquellen)<br />

RealIntelligence<br />

T. Grosch - 9 -


Lichtquellen<br />

• Ι ist im allgemeinen<br />

winkelabhängig.<br />

• Die Abstrahlcharakteristik<br />

einer Leuchte wird durch die<br />

Lichtstärkeverteilungskurve<br />

(LVK) angegeben<br />

• Für die Strahlstärke müsste<br />

diese LVK sogar für jede<br />

Wellenlänge angegeben<br />

werden<br />

– In der Praxis werden für<br />

Lichtquellen oft ihr Spektrum<br />

und ihre LVK angegeben<br />

• LVK: Tabelle mit I-Werten in<br />

bestimmten t Winkelschritten,<br />

itt<br />

z.B. alle 10 Grad<br />

– Bei rotationssymmetrischem<br />

Abstrahlverhalten wird die<br />

LVK nur abhängig von einem<br />

Winkel angegeben (θ)<br />

– Ansonsten wird die LVK in<br />

Abhängigkeit von zwei<br />

Austrittswinkeln beschrieben<br />

(θ , ϕ)<br />

T. Grosch - 10 -


Lichtquellen<br />

• Eine LVK eignet sich nur für<br />

das Fernfeld, da die<br />

Lichtquelle als punktförmig<br />

angenommen wird<br />

• Für das Nahfeld muß ein<br />

genaueres Modell eingesetzt<br />

werden, z.B. ein Light Field<br />

– Viele (HDR-) Aufnahmen der<br />

Lichtquelle aus verschiedenen<br />

Richtungen<br />

[RiGO]


Materialien<br />

Spiegel Glänzend Diffus<br />

T. Grosch - 12 -


Materialien: Spiegel<br />

• Beobachtung<br />

– Einfallsrichtung = Ausfallsrichtung<br />

– In alle anderen Richtungen wird<br />

kein Licht reflektiert (!)<br />

0<br />

L<br />

T. Grosch - 13 -


Materialien: Diffuse Fläche<br />

• Beobachtung:<br />

– Die Helligkeit it (Leuchtdichte) einer<br />

L<br />

diffusen Fläche hängt nicht von der<br />

Richtung des Betrachters ab (Lambert)<br />

– Beispiel: Kreide, Papier<br />

• Einfache Erklärung<br />

– Die Oberfläche besteht aus vielen<br />

kleinen Spiegeln, die in einer zufälligen<br />

Richtung orientiert sind<br />

– Die reflektierte Richtung ist Zufall <br />

Gleich viele Lichtstrahlen in alle<br />

Richtungen<br />

L<br />

L<br />

T. Grosch - 14 -


Materialien: Glänzende Fläche<br />

• Beobachtung<br />

– Verschwommenes Spiegelbild<br />

L<br />

L max<br />

• Einfache Erklärung<br />

– Vorzugsrichtung bei der<br />

<strong>Reflexion</strong><br />

– Kleinere Variation der<br />

Orientierung der Spiegel<br />

“<strong>Reflexion</strong>s-Keule“ (Lobe)<br />

L<br />

T. Grosch - 15 -


Einschränkungen<br />

• Mit diesem einfachen Modell können einige<br />

Materialien beschrieben werden<br />

– Mikrofacettenmodell, z.B. versch. Metalle, siehe<br />

später<br />

• Leider funktionieren nicht alle Materialen<br />

– z.B. Stoff, Haut, …<br />

• Statt eines einfachen Modells kann man auch<br />

einfach das Material vermessen…<br />

T. Grosch - 16 -


Wie misst/beschreibt man<br />

<strong>Reflexion</strong>?<br />

• Messung für alle Einfalls- und<br />

Ausfallswinkel<br />

• Für einfallendes Licht misst man<br />

Beleuchtungsstärke<br />

– Andere Größe praktisch kaum<br />

messbar, da man sonst in den<br />

Objektmittelpunkt k einen Sensor<br />

integrieren müsste.<br />

• Ausfallendes Licht: Leuchtdichte<br />

• Resultat: Angenäherte BRDF des<br />

Materials [Nicodemus 1977]<br />

– Bi-direktionale i <strong>Reflexion</strong>s-<br />

Verteilungsfunktion (Bidirectional<br />

Reflectance Distribution Function)<br />

=<br />

f<br />

r<br />

ω v<br />

ω o<br />

v<br />

( ω , ω )<br />

dL<br />

i<br />

i<br />

i: incoming<br />

o: outgoing<br />

ω v i<br />

v<br />

v dL<br />

( ωo<br />

)<br />

o<br />

= v<br />

dE<br />

oi<br />

( ω i<br />

)<br />

v<br />

dLo<br />

( ωo<br />

)<br />

v<br />

ω ⋅cosθ<br />

⋅dω<br />

(<br />

i<br />

)<br />

i i<br />

T. Grosch - 17 -


Beispiele für BRDF Messgeräte<br />

[Murray-Coleman 1990]<br />

T. Grosch - 18 -


BTF Messgerät<br />

• Kameraset um eine<br />

Materialprobe<br />

• Erfasst quasi eine BRDF<br />

Textur für verschiedene Orte<br />

des Materials.<br />

• BTF (bidirectional texture function)<br />

• 151 Kameras<br />

• 1 Kamera blitzt, alle machen<br />

ein Foto<br />

• Das ganze in verschiedenen<br />

Belichtungszeiten (ca. 4)<br />

• Enorme Datenmengen<br />

• Herausforderung: Erfassung,<br />

Komprimierung und Integration<br />

in den Renderingprozeß<br />

• Reinhard Klein, Uni Bonn<br />

T. Grosch - 19 -


BRDF Dimensionen<br />

• … ist eine 4D-Funktion für<br />

einen festen Ort auf der<br />

Oberfläche<br />

f<br />

r<br />

v<br />

v<br />

( ω , ω<br />

) =<br />

f<br />

( θ ,<br />

ϕ ,<br />

θ ,<br />

ϕ<br />

)<br />

i<br />

o<br />

r<br />

i<br />

i<br />

o<br />

o<br />

• … ist eine 6D-Funktion, wenn<br />

auch der Ort auf der • … ist eine 9D-Funktion, wenn<br />

Oberfläche mit eingeht<br />

zwischen Eintritts- und Austrittspunkt<br />

unterschieden wird *)<br />

v v v<br />

f r<br />

( ω<br />

i,ω o,<br />

xe<br />

)<br />

• Analog für Transmission<br />

• … ist eine 7D-Funktion, wenn<br />

– BTDF: Bi-Direktionale<br />

auch die Wellenlänge mit<br />

Transmissions-Verteilungs-<br />

eingeht<br />

funktion (Bidirectional<br />

v v v<br />

Transmission Distribution<br />

f r<br />

( ω<br />

i, ωo,<br />

xe,<br />

λ)<br />

Function)<br />

*) Auch BSSRDF genannt: Bidirectional Scattering Surface<br />

Reflectance Distribution Function (ohne Farbe 8D)<br />

T. Grosch - 20 -


Beispiele für komplexe BRDFs<br />

SVBRDF (6D)<br />

[Wang el al. SIGGRAPH 2008]<br />

BSSRDF<br />

[Wann-Jensen SIGGRAPH 2001]<br />

BTF<br />

[Müller el al. Eurographics 2007]<br />

T. Grosch - 21 -


„Beleuchtungsmodelle“<br />

• BRDF: Sehr komplex.<br />

Messung des Halbraums in 5°<br />

Schritten erzeugt ca.<br />

1300x1300 Werte<br />

– für alle Wellenlängen<br />

– für verschiedene<br />

Positionen..<br />

• Versuch, BRDF mit Hilfe von<br />

Funktionen anzunähern, die<br />

man durch (möglichst intuitive)<br />

Parameter steuern kann oder<br />

messen kann<br />

• Ansätze<br />

– Zerlegung in diffusen und<br />

(glänzend) spiegelnden Anteil<br />

– Empirische/phänomenologische<br />

Modelle<br />

– Polynome, Sinus/Cosinus-<br />

Terme<br />

– Gebrochen Rationale<br />

Funktionen<br />

– Spherical Harmonics, etc.<br />

• …<br />

T. Grosch - 22 -


<strong>Reflexion</strong>sgrad (Reflectance)<br />

• Anstatt der Werte der BRDF im<br />

Bereich [0,∞[ ist der<br />

<strong>Reflexion</strong>sgrad im Bereich (0,1)<br />

oft hilfreich (speziell in diffusen<br />

Umgebungen)<br />

• Er ist definiert als der gesamte<br />

ausfallende Lichtstrom im<br />

Verhältnis zum gesamten<br />

eingestrahlten Lichtstrom<br />

∫<br />

Lo<br />

φo<br />

B<br />

2π<br />

ρ<br />

=<br />

=<br />

=<br />

φ E L<br />

i<br />

∫<br />

2π<br />

v<br />

( ω )<br />

i<br />

v<br />

o<br />

( ω )<br />

i<br />

⋅cosθ<br />

⋅dω<br />

o<br />

⋅cosθ<br />

⋅dω<br />

i<br />

i<br />

o<br />

φ<br />

φ i<br />

φ o<br />

T. Grosch - 23 -


Eigenschaften der BRDF<br />

• Sie ist nicht dimensionslos 1. Sie ist nicht negativ<br />

v<br />

v v dL<br />

2. Sie erfüllt den Energie-<br />

o<br />

( )<br />

( ωo<br />

)<br />

fr ωi<br />

, ωo<br />

= v<br />

erhaltungssatz ( 0 ≤ ρ


Helmholtz Reziprozität<br />

• 3. Sie erfüllt die Helmholtz<br />

Reziprozität<br />

– Lichtstrom ist vorwärts wie<br />

rückwärts identisch<br />

– Werden Licht und Betrachter<br />

vertauscht, so bleibt die BRDF<br />

unverändert<br />

– Ergibt sich aus den<br />

Maxwell´schen Gleichungen<br />

– Olano: „…one of the … mysteries<br />

of physics is the existence in<br />

Maxwell‘s equations of solutions<br />

for electromagnetic radiation that<br />

flows from the future to the past“.<br />

f<br />

n v<br />

v ω v v<br />

o ω ωi<br />

i<br />

f<br />

r<br />

v<br />

=<br />

( ω , ω ) = f ( ω , ω )<br />

i<br />

v<br />

• Oft auch notiert als<br />

r<br />

v<br />

v<br />

o<br />

( ω →ω<br />

) =<br />

f<br />

( ω ←ω<br />

)<br />

i<br />

o<br />

r<br />

v<br />

i<br />

r<br />

v<br />

o<br />

v<br />

o<br />

n v<br />

v<br />

i<br />

v ωo<br />

T. Grosch - 25 -


BRDF und diffuser <strong>Reflexion</strong>sgrad<br />

• Diffuse Lambert-<strong>Reflexion</strong> heißt praktisch, daß das angeleuchtete<br />

Material zum Lambert-Strahler wird<br />

• Der reflektierte Lichtstrom einer diffusen Lambert-Fläche ergibt<br />

sich als<br />

φ = ∫ I ⋅ θ ⋅dω<br />

= I ⋅ ∫<br />

o o<br />

cos<br />

o o o<br />

2ππ<br />

2ππ<br />

cosθ<br />

⋅dω<br />

= I<br />

o<br />

Übung<br />

o<br />

o<br />

⋅π<br />

=<br />

• Die reflektierte (konstante) Leuchtdichte ist somit<br />

L<br />

o<br />

φo<br />

= A⋅ π<br />

• Also gilt für die diffuse (konstante) BRDF<br />

f<br />

r<br />

L<br />

E<br />

φo<br />

φ ρ<br />

= = =<br />

E⋅<br />

A⋅π φ ⋅<br />

π<br />

π<br />

o<br />

o<br />

=<br />

i<br />

L⋅<br />

A⋅π<br />

(Einheit von π wieder sr)<br />

T. Grosch - 26 -


BRDF für perfekten Spiegel<br />

• Die BRDF für einen perfekten Spiegel ist überall 0, bis auf die<br />

Richtung des reflektierten Strahls<br />

• Formal wird das mit der Dirac-Delta-Funktion beschrieben<br />

v v<br />

f r<br />

f<br />

, M<br />

( ω ω<br />

) =<br />

( θ , ϕ , θ , ϕ<br />

)<br />

i, o r,<br />

M<br />

i<br />

i<br />

o<br />

o<br />

δ<br />

(<br />

θi<br />

−<br />

θo<br />

) ⋅<br />

δ<br />

(<br />

ϕi<br />

+<br />

π −<br />

ϕo<br />

)<br />

=<br />

sinθ<br />

cosθ<br />

⎧<br />

∞,<br />

x<br />

=<br />

0<br />

δ(<br />

x)<br />

= ⎨<br />

∫δ( x)<br />

dx = 1<br />

⎩0,<br />

x ≠ 0<br />

−∞<br />

• Die BRDF erfüllt somit die Energieerhaltung<br />

∫<br />

f<br />

2π<br />

sr<br />

v ω v<br />

∞<br />

( , ω ) cosθ<br />

dω<br />

1<br />

r, M i o i i<br />

=<br />

i<br />

i<br />

T. Grosch - 27 -


Fresnel <strong>Reflexion</strong>sgrad F<br />

• Für einige Materialien (Glas,<br />

Wasser, einige Metalle) kann<br />

die <strong>Reflexion</strong> für glatte<br />

Oberflächen aus den<br />

Maxwell´ schen Gleichungen<br />

berechnet werden<br />

• Beim Wechsel von einer<br />

Materie in eine andere wird<br />

immer Licht reflektiert.<br />

• Der <strong>Reflexion</strong>sgrad hängt vom<br />

Brechungsindex der beiden<br />

Materialien und vom<br />

Einfallswinkel ab.<br />

n 1<br />

n 2<br />

n =<br />

θ 1<br />

1<br />

sin<br />

θ<br />

1<br />

n<br />

2<br />

sin<br />

θ<br />

θ 2<br />

2<br />

F( θ 1<br />

)<br />

1<br />

1<br />

− F<br />

( θ 1 )<br />

: Polarisationsebene der Welle<br />

Aufteilung in senkrechten und parallelen<br />

Anteil zur <strong>Reflexion</strong>sebene<br />

T. Grosch - 28 -


Fresnel <strong>Reflexion</strong>sgrad F<br />

Für die beiden Polarisationsebenen:<br />

ρ =<br />

||<br />

n2<br />

cosθ1<br />

− n1<br />

cosθ2<br />

n<br />

2 cos<br />

θ1<br />

+<br />

n1<br />

cos<br />

θ2<br />

ρ<br />

⊥<br />

n1 cosθ1<br />

− n2<br />

cosθ2<br />

=<br />

n<br />

2<br />

cosθ1<br />

+ n1<br />

cosθ2<br />

Für unpolarisiertes Licht gilt:<br />

F<br />

1<br />

2<br />

(<br />

2 2<br />

ρ + )<br />

( θ ) = ⋅<br />

||<br />

ρ⊥<br />

Gute Näherung nach Schlick:<br />

F( θ ) ≈ F<br />

θ<br />

5<br />

0<br />

+ (1 − F0<br />

)(1 − cos )<br />

F0: <strong>Reflexion</strong>sgrad für senkrechten Lichteinfall<br />

T. Grosch - 29 -


Fresnelsche Formeln: Konduktoren<br />

• Brechungsindex η und<br />

komplexer<br />

Absorptionskoeffizienten k<br />

• Für polarisiertes i Licht:<br />

• Für unpolarisiertes Licht:<br />

T. Grosch - 30 -


Winkelabhängiger <strong>Reflexion</strong>sgrad nach<br />

Fresnel<br />

Konduktor (Aluminum)<br />

Dilktik Dielektrikum (Glas, N=1.5) N1 T. Grosch - 31 -


Mikrofacetten Modelle<br />

• [Torrance and Sparrow 1967], [Blinn 1977], [Cook and Torrance 1983]<br />

• Die Oberfläche besteht aus Mikrofacetten<br />

– Jede Facette hat Fresnel Eigenschaft F<br />

– Beschreibung der Verteilung der Mikrofacetten D<br />

– Selbstverschattung der Mikrofacetten G<br />

• Die BRDF ist somit eine Kombination aus drei<br />

Termen<br />

1<br />

4cosθi cosθ o<br />

Herleitung, siehe [Torrance & Sparrow 1967] und [Pharr & Humphreys, PBRT]


Verteilung der Facetten: D<br />

• Für eine perfekte spekulare<br />

<strong>Reflexion</strong> muß die Normale der<br />

Mikrofacette dem Halfway-<br />

Vektor entsprechen<br />

• Die Funktion D gibt an, wie<br />

wahrscheinlich diese<br />

Orientierung der Mikrofacette ist<br />

(Wahrscheinlichkeitsdichte)<br />

• Typischer Verlauf [Blinn 1978] ) D(α<br />

D<br />

=<br />

k ⋅e<br />

⎞<br />

− ⎛ ⎜<br />

α ⎟<br />

⎝ m<br />

⎠<br />

2<br />

– k: Normierungsfaktor (Fläche 1)<br />

ω v V<br />

v ωh<br />

– m: Standardabweichung von α<br />

Glatte Fläche, m klein<br />

v<br />

n<br />

α<br />

v<br />

ω =<br />

h<br />

Raue Fläche, m groß<br />

ω v<br />

ω L<br />

v v<br />

ωV<br />

+<br />

ωL<br />

v v<br />

ω + ω<br />

V<br />

L<br />

α<br />

T. Grosch - 33 -


Selbstverschattung G<br />

• Fall 1<br />

– Komplette <strong>Reflexion</strong> auf<br />

der Mikrofacette: G = 1<br />

• Fall 2<br />

– Maskierung, reflektiertes<br />

Licht kommt nur teilweise<br />

in Betrachterrichtung<br />

• Fall 3<br />

– Verschattung,<br />

Mikrofacette wird nur<br />

teilweise beleuchtet<br />

T. Grosch - 34 -


Selbstverschattung G<br />

• Ansatz zur Lösung für<br />

Fall 2 & 3:<br />

• Annahme:<br />

• Symmetrische, V-förmige<br />

Kerben<br />

• Interreflexion zwischen<br />

Facetten wird hier<br />

ignoriert<br />

• Bestimme das Verhältnis<br />

G = 1 – m/l<br />

• Herleitung siehe [Blinn 1978]<br />

l<br />

m<br />

1 2 3<br />

T. Grosch - 35 -


Cook-Torrance Beispiel<br />

[Cook and Torrance 1983]<br />

T. Grosch - 36 -


Phong BRDF<br />

• Sehr einfaches BRDF Modell<br />

[Phong 1975]<br />

• Überlagerung diffuse +<br />

spekulare <strong>Reflexion</strong><br />

• Spekulare <strong>Reflexion</strong><br />

– durch cos-Lobe<br />

– Exponent n kontrolliert die<br />

Rauheit der Oberfläche<br />

• Keine physikalische Grundlage<br />

Lo<br />

fr<br />

v ωr<br />

v ω<br />

o<br />

ψ<br />

n v<br />

θi<br />

v ωi<br />

v v v v v<br />

ωr<br />

= 2(<br />

ωi<br />

o<br />

n)⋅<br />

n −<br />

ωi<br />

v v<br />

cosψ<br />

= ω o<br />

oω r<br />

v v ρd<br />

n<br />

( ωi<br />

, ωo<br />

) = + ρs<br />

⋅cos<br />

ψ<br />

π<br />

T. Grosch - 37 -


Physikalisch plausible Phong BRDF<br />

• [Lewis 1994]<br />

• Das Phong Modell ist nicht<br />

Energie-erhaltend<br />

• Für den hemisphärischen<br />

<strong>Reflexion</strong>sgrad bei senkrechter<br />

Blickrichtung gilt:<br />

∫<br />

f<br />

r<br />

2π<br />

v v<br />

( ω , ω )cosθdω<br />

i<br />

o<br />

n<br />

= ρs<br />

∫<br />

cos<br />

θ<br />

cos<br />

θ<br />

d<br />

ω<br />

2π<br />

2π<br />

= ρs<br />

⋅<br />

n+2+<br />

2<br />

Lo<br />

Standard<br />

Phong Lobes<br />

v ωr<br />

v ω<br />

o<br />

ψ<br />

n v<br />

θi<br />

Normalisierung<br />

• Mit Vorfaktor (n+2)/2π gilt<br />

v v ρd<br />

n+<br />

2 n<br />

die Energieerhaltung<br />

g f<br />

( ω , ω<br />

) = +<br />

ρ ⋅ ⋅cos<br />

ψ<br />

f r<br />

i<br />

o<br />

π<br />

s<br />

2π<br />

v ωi<br />

T. Grosch - 38 -


(Physikalisch plausibles) Blinn-Phong Modell<br />

• [Blinn 1978]<br />

• In OpenGL integriert i t auf<br />

Grund der besseren<br />

Performance:<br />

– Bei gerichteten<br />

Lichtquellen ist die<br />

Einfallsrichtung konstant<br />

– <strong>Reflexion</strong>srichtung muss<br />

nicht berechnet werden<br />

– Ähnliche (aber nicht<br />

gleiche) Ergebnisse wie<br />

bei einfachem Phong<br />

Modell<br />

f<br />

v<br />

ω<br />

r<br />

Lo<br />

h<br />

ω v<br />

o<br />

v ω<br />

v<br />

i<br />

+<br />

ωo<br />

v v<br />

ω + ω<br />

i<br />

o<br />

ω v h<br />

ψ<br />

n v<br />

θi<br />

v ωi<br />

v v<br />

= cosψ =ωh<br />

on<br />

v v ρd<br />

n+<br />

8<br />

( ωi<br />

, ωo<br />

) = + ρs<br />

⋅ ⋅cos<br />

π 8π<br />

n<br />

ψ<br />

T. Grosch - 39 -


Blinn-Phong Beleuchtung<br />

Großer Exponent<br />

Kleiner Exponent<br />

Nur diffus<br />

T. Grosch - 40 -


Lafortune BRDF<br />

• Phong-Modell mit N Keulen<br />

in beliebige Richtungen<br />

[Lafortune et al. 1997]<br />

– 5 Parameter pro Keule<br />

v<br />

v<br />

ρ<br />

N<br />

d<br />

T<br />

f ω<br />

, ω<br />

= + ∑<br />

r(<br />

i o)<br />

∑ρ s ,<br />

i<br />

( ω<br />

o<br />

⋅C⋅ω<br />

i<br />

)<br />

π i=<br />

1<br />

v<br />

v<br />

n i<br />

• Angabe der Vektoren in<br />

lokalen Koordinaten (!)<br />

v ωo<br />

C⋅<br />

v ωi<br />

ψ<br />

• Standard d Phong<br />

<strong>Reflexion</strong>, N = 1<br />

• C = <strong>Reflexion</strong>soperator<br />

z v • C⋅<br />

v ωi<br />

ist der reflektierte<br />

v Lichtvektor<br />

ω i<br />

• Dann gilt<br />

v T<br />

ωo ⋅( C⋅<br />

v ω ) = cosψ<br />

y v<br />

• Also die normale Phong<br />

BRDF (ohne<br />

Normalisierung)<br />

x v T. Grosch - 41 -<br />

i


Lafortune BRDF Beispiel<br />

T. Grosch - 42 -


Lafortune BRDF<br />

• Verallgemeinerung des<br />

<strong>Reflexion</strong>soperators zu<br />

einer Diagonalmatrix C<br />

• Die Einträge in C<br />

steuern die Richtung<br />

der <strong>Reflexion</strong>skeule<br />

• Angabe der Vektoren hier<br />

in lokalen Koordinaten (!)<br />

• Für Weltkoordinaten<br />

kann man auch eine<br />

Matrix<br />

R T CR<br />

einsetzen, wobei R die<br />

Rotationsmatrix<br />

„Welt Lokal“ ist<br />

v<br />

v<br />

ρ<br />

N<br />

d<br />

T<br />

f<br />

r(<br />

ωi<br />

, ωo<br />

) = + ∑ρs, i(<br />

ωo<br />

⋅C⋅ωi<br />

)<br />

π i=<br />

1<br />

C<br />

x<br />

v<br />

⎛Cx<br />

0 0<br />

⎜<br />

C<br />

=<br />

⎜ ⎜ 0 Cy<br />

0<br />

⎝ 0 0 C<br />

= Cy<br />

z<br />

= −1 C =1<br />

z<br />

⎞<br />

⎟<br />

⎟<br />

⎟<br />

⎠<br />

(Maximum bei reflektiertem Vektor)<br />

:<br />

v<br />

n i<br />

<strong>Reflexion</strong><br />

Cx<br />

= C<br />

y<br />

= Cz<br />

= 1 : Retro - <strong>Reflexion</strong><br />

v v<br />

(Maximum,<br />

wenn ω = ω<br />

)<br />

C < C =<br />

z<br />

x<br />

C<br />

y<br />

:<br />

o<br />

i<br />

Off -Specular - <strong>Reflexion</strong><br />

(Maximum unterhalb des <strong>Reflexion</strong>svektors)<br />

Betrag der C Werte gibt Größe der Keule an


Lafortune BRDF Fit<br />

• Über ein Optimierungsverfahren werden die bestmöglichen<br />

Parameter für eine gemessene BRDF bestimmt<br />

Durchgezogene Line:<br />

Messwerte<br />

Off Specular,<br />

Fresnel<br />

Aluminium<br />

Retro <strong>Reflexion</strong><br />

Off Specular,<br />

Fresnel<br />

Blaue Farbe<br />

[Lafortune et al. 1997]<br />

BRDF Daten z.B. hier: http://people.csail.mit.edu/addy/research/brdf<br />

http://sbrdf.cs.unc.edu/index.html T. Grosch - 44 -


Lafortune Beispiele<br />

[McAllister, GPU Gems 1]<br />

3 Lobes, preconvolved Environment Map<br />

T. Grosch - 45 -


(An)Isotrope BRDF<br />

• Einfache BRDFs (z.B. Phong)<br />

sind isotrop (3D)<br />

– Rotationssymmetrie um<br />

Oberflächennormale<br />

– Orientierung x,y Achse beliebig<br />

f r<br />

( θ , θ , Δϕ)<br />

i<br />

v ωo<br />

o<br />

n v<br />

θ o<br />

θ i<br />

Δϕ<br />

ω v i<br />

y v<br />

• Es gibt auch anisotrope<br />

Materialen (4D)<br />

x<br />

v<br />

– z.B. gebürstetes Metall, Rillen<br />

f ( , , )<br />

in Oberfläche r<br />

θi<br />

ϕi, θo<br />

ϕo<br />

– Orientierung der Achsen an<br />

den Rillen<br />

• z.B. x in Richtung der Rillen<br />

und y senkrecht zu Rillen<br />

• Glatte Oberfläche in x-<br />

Richtung, raue Oberfläche in<br />

y-Richtung<br />

ω v o<br />

x<br />

v<br />

θ o<br />

θ i<br />

ϕo<br />

n v<br />

ϕ i<br />

v ωi<br />

y v<br />

T. Grosch - 46 -


Anisotropie<br />

• Angabe von zwei Phong Exponenten<br />

nu, nv für beide Richtungen [Ashikhmin<br />

& Shirley 2000]<br />

• Der „anisotrope“ Phong-Exponent für y<br />

v<br />

eine Richtung ϕ ergibt sich aus<br />

ϕ<br />

einem elliptischen Modell als<br />

n u<br />

2<br />

n cos<br />

ϕ<br />

+<br />

n<br />

u<br />

sin<br />

2<br />

ϕ<br />

• ϕ: Rotationswinkel des Halfway-<br />

Vektors<br />

v<br />

x v<br />

n v<br />

• Mit Normierung ergibt das<br />

(zunächst) folgende BRDF<br />

f<br />

v<br />

v<br />

( n<br />

+ 1)( n<br />

u v<br />

n cos ϕ v sin<br />

( ω , ω )<br />

(cosψ<br />

) u + n<br />

i o<br />

=<br />

⋅<br />

2ππ<br />

+ 1)<br />

2<br />

2<br />

ϕ<br />

T. Grosch - 47 -


Beispiel für Anisotrope BRDF<br />

Ashikhmin-Shirley<br />

BRDF<br />

PBRT<br />

Gebürstetes Metall<br />

T. Grosch - 48 -


Ashikhmin-Shirley BRDF<br />

• Anisotrope Erweiterung des Phong Modells<br />

• Empirisch, aber physikalisch plausibel<br />

• Gewichtete Summe eines spiegelnden und<br />

eines diffusen Anteils zur Wahrung der<br />

Energieerhaltung<br />

– Spekulare Schicht über diffuser Schicht<br />

– Idee: Gewichtung des diffusen Anteils nimmt<br />

in Richtung der „<strong>Reflexion</strong>skeule“<br />

proportional ab<br />

– „je steiler der Betrachtungswinkel, desto<br />

besser wird die unterliegende, diffuse Schicht<br />

sichtbar“<br />

• Anwendung:<br />

– Poliertes Holz, glänzende Tapete, Autolack<br />

R s<br />

R d<br />

T. Grosch - 49 -


Ashikhmin-Shirley: spiegelnder Anteil<br />

f<br />

r<br />

2<br />

2<br />

n<br />

u cos<br />

ϕ + n<br />

v sin<br />

ϕ<br />

v v<br />

(<br />

nu<br />

+<br />

1)(<br />

nv<br />

+<br />

1)<br />

(cos<br />

ψ<br />

)<br />

, s<br />

( ωi,<br />

ωo)<br />

=<br />

⋅<br />

F(cosα)<br />

8π<br />

cosα<br />

⋅ max(cosθ<br />

,cosθ<br />

)<br />

i<br />

o<br />

• F: Schlick Approximation<br />

für Fresnel <strong>Reflexion</strong>sgrad<br />

1<br />

max(cosθ i<br />

,cosθ o<br />

)<br />

v ωo<br />

ω v h<br />

ψ<br />

θ o<br />

θ i<br />

n v<br />

α<br />

v ω<br />

i<br />

• Vermeidung von „dunklen“<br />

Spiegelbildern bei flachem<br />

Blickwinkel, siehe [Neumann<br />

et al. 1999]<br />

x<br />

v<br />

ϕ<br />

y v<br />

T. Grosch - 50 -


Ashikhmin-Shirley: spiegelnder Anteil<br />

T. Grosch - 51 -


Ashikhmin-Shirley: diffuser Anteil<br />

f<br />

r,<br />

d<br />

v v<br />

( ω , ω )<br />

i<br />

o<br />

=<br />

28Rd<br />

(1 −<br />

23ππ<br />

R<br />

s<br />

)(1 − (1 −<br />

cosθi<br />

)<br />

2<br />

5<br />

)(1 − (1 −<br />

cosθo<br />

)<br />

2<br />

5<br />

)<br />

• Hier hat die diffuse Schicht nicht<br />

die Lambert Eigenschaft<br />

– Winkelabhängige diffuse <strong>Reflexion</strong><br />

– Diffuse Farbe verschwindet bei flachem<br />

Winkel<br />

– Entspricht der Beobachtung realer<br />

Materialien<br />

28Rd<br />

θi<br />

= θo<br />

= 0 : fr, d<br />

= (1 − Rs<br />

)<br />

23ππ<br />

π<br />

θi<br />

= θo<br />

= : fr, d<br />

= 0<br />

2<br />

• R d : Diffuse Farbe unter glänzender<br />

Schicht (bei Metallen 0)<br />

• R R<br />

s : Vollkommen spiegelnder Anteil<br />

(innerhalb der Keule)<br />

• Vorfaktor stellt Energieerhalt sicher<br />

R s<br />

R d<br />

θ o<br />

θ i<br />

T. Grosch - 52 -


Ashikhmin-Shirley: diffuser Anteil<br />

Lambert BRDF AS-BRDF, nur diffus<br />

T. Grosch - 53 -


Ashikhmin-Shirley: spiegelnd & diffus<br />

[Bild aus: Pharr, Humphreys, PBRT]<br />

T. Grosch - 54 -


Weitere BDRF Modelle<br />

– [Poulin and Fournier 1990] A model for anisotropic reflection<br />

– [Ward 1992] Measuring and modeling anisotropic reflectance<br />

– [Westin et al. 1992] Predicting reflectance functions from complex surfaces<br />

– [Schlick 1993] A customizable Reflectance model for everyday rendering<br />

– [Gondek et al. 1994] Wavelength dependent reflectance functions<br />

– [Oren and Nayar 1994] Generalization of Lambert´s reflectance model<br />

– [Ashikhmin et al. 2000] A microfacet based BRDF generator<br />

T. Grosch - 55 -


Komplizierte Materialien<br />

• Haut<br />

– [Debevec et al. 2000]<br />

– [Zickler et al. EGSR 2005]<br />

– [Donner et al. EGSR 2006]<br />

– [d‘Eon et al. EGSR 2007]<br />

– [Jimenez et al. Sig Asia 2010]<br />

[Donner et al. 2006]<br />

• Haare<br />

– [Marschner et al. SIGGRAPH 2003]<br />

– [Moon et al. SIGGRAPH 2006, 2008]<br />

– [Zinke et al. SIGGRAPH 2008]<br />

– [d‘Eon et al. EGSR 2011] [Moon et al. 2008]<br />

T. Grosch - 56 -


Editierbare Materialien<br />

• Data-driven Reflectance Model [Matusik et al.<br />

SIGGRAPH 2003]<br />

• BRDF Shop [Colbert et al. 2005]<br />

[Colbert et al. 2005]<br />

• [Ngan et al. EGSR 2006]<br />

• Shade Trees [Lawrence et al. SIGGRAPH 2006]<br />

• [Ben Artzi et al. SIGGRAPH 2006]<br />

• Image-based Material Editing [Khan et al.<br />

SIGGRAPH 2006]<br />

• BTFShop [Kautz et al. SIGGRAPH 2007]<br />

• BTF Editing [Müller et al. EGSR 2007]<br />

• [Pellacini and Lawrence SIGGRAPH 2007]<br />

• [Kerr and Pellacini SIGGRAPH 2010] [Kautz et al. 2007]<br />

T. Grosch - 57 -


Zeitliche Veränderung<br />

• [Chen et al. SIGGRAPH 2005]<br />

• [Gu et al. SIGGRAPH 2006]<br />

• Dirty Glass [Gu et al. EGSR 2007]<br />

• [Wang et al. SIGGRAPH 2006]<br />

T. Grosch - 58 -


BRDF Fabrication<br />

• Umgekehrter Weg:<br />

– Simulierte BRDF vorhanden Produktion von echtem Material mit BRDF<br />

• [Weyrich et al. SIGGRAPH 2009]<br />

• Print BRDF [Matusik et al. Sig Asia 2009]<br />

T. Grosch - 59 -


• Mittwoch: Übung<br />

• Nächster Montag: Ray Tracing<br />

T. Grosch - 60 -

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!