28
Visualieren und Visualieren und Animieren Animieren Andreas Asperl Andreas Asperl

Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Embed Size (px)

Citation preview

Page 1: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Visualieren und Visualieren und AnimierenAnimieren

Andreas AsperlAndreas Asperl

Page 2: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

VisualisierenVisualisieren

Grundlagen der VisualisierungGrundlagen der Visualisierung LichteinflüsseLichteinflüsse MaterialienMaterialien AnwendungenAnwendungen Tipps und TricksTipps und Tricks

Page 3: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Grundlagen der Grundlagen der VisualisierungVisualisierung

Aus der Computergraphik kennen Aus der Computergraphik kennen wir vier Modelle:wir vier Modelle:

Farbmodell (RGB, CMY)Farbmodell (RGB, CMY) Lichtquellenmodell (direktes und Lichtquellenmodell (direktes und

indirektes Licht)indirektes Licht) Beleuchtungs- und Beleuchtungs- und

Schattierungsmodelle Schattierungsmodelle

Page 4: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

LichtquellenLichtquellen

Indirektes Licht:Indirektes Licht: Ambientes LichtAmbientes Licht

(Hintergrundbeleuchtung)(Hintergrundbeleuchtung)

Direktes Licht:Direktes Licht:

PunktlichtPunktlicht(Glühlampe ohne Lichtkegel)(Glühlampe ohne Lichtkegel)

SpotlichtSpotlicht(Scheinwerfer, Taschenlampe, …)(Scheinwerfer, Taschenlampe, …)

Entferntes LichtEntferntes Licht(Sonne, Parallelbeleuchtung, …)(Sonne, Parallelbeleuchtung, …)

FlächenlichtFlächenlicht(Neonröhren, …)(Neonröhren, …)

Page 5: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Beleuchtungs- und Beleuchtungs- und SchattierungsmodelleSchattierungsmodelleLokale Modelle:Lokale Modelle:

Ambiente Reflexion Ambiente Reflexion Diffuse ReflexionDiffuse Reflexion Spiegelnde ReflexionSpiegelnde Reflexion

Globale Modelle:Globale Modelle: RaytracingRaytracing RadiosityRadiosity

Konstante Schattierung Konstante Schattierung Flatshading Flatshading

Kontinuierliche Schattierung Kontinuierliche Schattierung Gouraud-shadingGouraud-shading

PhongschattierungPhongschattierung

Abhängig vom Beobachterstandpunkt, der Materialbeschaffenheit und dem einfallenden Licht wird ein Reflexionswert berechnet. Da meist sehr rechenintensiv, werden vereinfachte Modelle verwendet.

Page 6: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Ambiente Reflexion Ambiente Reflexion

Indirektes Licht kommt Indirektes Licht kommt aus allen Richtungenaus allen Richtungen

In jedem Punkt gleiche In jedem Punkt gleiche IntensitätIntensität

Steuert Steuert Grundhelligkeit der Grundhelligkeit der SzeneSzene

abhängig vom Material abhängig vom Material (Materialkonstante k(Materialkonstante kaa))

I = Ia * ka

Kein physikalisches Modell, nur empirische Kein physikalisches Modell, nur empirische WerteWerte

Page 7: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Diffuse ReflexionDiffuse Reflexion

Setzt direktes Licht voraus!Setzt direktes Licht voraus!Lambert‘s Beleuchtungsmodell:Lambert‘s Beleuchtungsmodell:

Lichtintensität der beleuchteten Lichtintensität der beleuchteten Fläche nimmt um den Faktor cos Fläche nimmt um den Faktor cos ab.ab.

Die zu beleuchtende Fläche wird größer, die Lichtintensität pro Flächeneinheit daher kleiner.

I = Ip * kd * cos

N

AA*cos

L

Page 8: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Diffuse ReflexionDiffuse Reflexion

Die zu beleuchtende Fläche wird größer, die Lichtintensität pro Flächeneinheit daher kleiner.

I = Ip * kd * cos

Ip … Intensität der Lichtquelle

kd … diffuse Reflexionskonstante

Dieser Wert liegt zwischen 0 und 1 und regelt „wie viel Körperfarbe reflektiert wird“.

N

A

L

Bei normierten Vektoren L und N gilt:

cos = L . N

und damitI = Ip * kd * (L.N)

Page 9: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Diffuse ReflexionDiffuse Reflexion

• Diffuse Reflexion ist unabhängig vom Beobachterstandpunkt

• wird meist mit ambienter Beleuchtung (Reflexion) kombiniert

I = Ia * ka + Ip * kd * (L.N)

Bemerkungen:

• Berücksichtigung der Entfernung der Lichtquelle zum Objekt (Tiefeneindruck) mit einer Funktion f(d)

I = Ia * ka + f(d) * Ip * kd * (L.N)

• Meist verwendet man dabei die Funktion f(d) = 1/r², wobei r der Abstand zur Lichtquelle ist Problem: Lichtintensität nimmt zu rasch ab

Page 10: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Spiegelnde ReflexionSpiegelnde Reflexion

Die meisten Materialien sind keine perfekten Lambert-Die meisten Materialien sind keine perfekten Lambert-Reflektoren, d.h. bei gewissen Lichteinfallswinkeln wird das Licht Reflektoren, d.h. bei gewissen Lichteinfallswinkeln wird das Licht nicht mehr in alle Richtungen gestreut; es treten Reflexionen nicht mehr in alle Richtungen gestreut; es treten Reflexionen auf.auf.Im Extremfall (bei idealen Spiegeln) wird das einfallende Licht Im Extremfall (bei idealen Spiegeln) wird das einfallende Licht nur in eine Richtung reflektiert. nur in eine Richtung reflektiert.

Physikalisches Modell (nach Snellius Willebrordus 1621)

Empirisches Modell (nach Phong Bui-Tuong 1975)

sin(1)/sin(2)= n1/n2

I = Is * ks * cosn(

1

2

NL R

V

Page 11: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Spiegelnde ReflexionSpiegelnde Reflexion

Das Phongmodell nähert mit dem Term cosDas Phongmodell nähert mit dem Term cosnn(() ) rein heuristisch die Streuung des Lichts an.rein heuristisch die Streuung des Lichts an.

I = Is * ks * cosn(

NL R

V

Phong ging davon aus, dass Phong ging davon aus, dass maximale Reflexion bei gleichem maximale Reflexion bei gleichem Ein- und Ausfallswinkel auftritt.Ein- und Ausfallswinkel auftritt.Weicht der Ausfallswinkel Weicht der Ausfallswinkel um um den Winkel den Winkel ab, so nimmt die ab, so nimmt die Reflexion ab.Reflexion ab.

n … Materialkonstante, legt die Stärke der Abnahme n … Materialkonstante, legt die Stärke der Abnahme bei wachsendem bei wachsendem fest („Spiegelneigung“) fest („Spiegelneigung“)

kkss … Spiegelreflexionskoeffizient … Spiegelreflexionskoeffizient

Page 12: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Spiegelnde ReflexionSpiegelnde Reflexion

LV

N

spiegelnd diffus

Phongmodell

Page 13: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

ZusammenfassungZusammenfassung

• Diffuse Reflexion ist unabhängig vom Beobachterstandpunkt

• Spiegelnde Reflexion hängt vom Beobachterstandpunkt ab

Bemerkungen:

• Diffusität, Lichtdurchlässigkeit und Spiegelung werden z.B. prozentuell angegeben und sollten (bei realistischen Materialien) den Gesamtwert von 100% (Effizienz) nicht überschreiten

Page 14: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

SchattierungsmodelleSchattierungsmodelle

Um Rechenzeit zu sparen wird nicht in jedem Um Rechenzeit zu sparen wird nicht in jedem Punkt einer Fläche die Normale berechnet. Punkt einer Fläche die Normale berechnet. Man verwendet Polygongitter und interpoliert Man verwendet Polygongitter und interpoliert zwischen den einzelnen Eckpunkten. zwischen den einzelnen Eckpunkten.

Konstante SchattierungFlat shading

Von jedem Polygon wird die Flächennormale einmal berechnet

Jedes Polygon hat nur einen Farbwert

Starke Intensitätssprünge

Page 15: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

SchattierungsmodelleSchattierungsmodelle

Kontinuierliche Schattierung Gouraud shading

Zur Glättung der Intensitätssprünge berechnet man Zur Glättung der Intensitätssprünge berechnet man zuerst in den Polygonecken die „gemittelte zuerst in den Polygonecken die „gemittelte Flächennormale“. Dazu werden die normierten Flächennormale“. Dazu werden die normierten Flächennormalen der angrenzenden Polygone Flächennormalen der angrenzenden Polygone addiert und durch ihre Anzahl geteilt.addiert und durch ihre Anzahl geteilt.

n1

n2

n4

n3

n

n = ¼(n1 + n2 + n3 + n4)

Page 16: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

SchattierungsmodelleSchattierungsmodelle

Kontinuierliche Schattierung Gouraud shading

Anschließend interpoliert man die Anschließend interpoliert man die IntensitätIntensität entlang der Kanten und dann entlang der entlang der Kanten und dann entlang der Rasterzeilen.Rasterzeilen.

S12 = t * S1 + (1 – t)*S2

S3

n1

n2

n3

S12S23

S1

S2

S1

I = u * S12 + (1 – u)*S23

n1

n2

n3

S12S23

I

S2

S3

Page 17: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

SchattierungsmodelleSchattierungsmodelle

Phong Schattierung

Ein genaueres Verfahren zur Glättung der Ein genaueres Verfahren zur Glättung der Intensitätssprünge besteht darin, nicht nur die Intensitätssprünge besteht darin, nicht nur die Intensität zu interpolieren sondern die Intensität zu interpolieren sondern die interpolierte Normaleinterpolierte Normale zu berechnen. zu berechnen.

n1

n2

n4

n3

n

n = ¼(n1 + n2 + n3 + n4)

Page 18: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

SchattierungsmodelleSchattierungsmodelle

Phong Schattierung

Anschließend interpoliert man die Normalen Anschließend interpoliert man die Normalen entlang der Kanten und dann entlang der entlang der Kanten und dann entlang der Rasterzeilen und berechnet zu jeder Rasterzeilen und berechnet zu jeder Flächennormalen das Beleuchtungsmodell extra.Flächennormalen das Beleuchtungsmodell extra.

n12 = t * n1 + (1 – t)*n2

n1

n2

n3

n12n23

n = u * n12 + (1 – u)*n23

n1

n2

n3

n12 n23n

Page 19: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

SchattierungsmodelleSchattierungsmodelle

Vergleiche Gouraud und Phong-SchattierungVergleiche Gouraud und Phong-Schattierung

Bei Gouraudschattierung können Glanzpunkte verloren gehen („Verschmierung“)Bei Gouraudschattierung können Glanzpunkte verloren gehen („Verschmierung“) Bei Phongschattierung liegt eine lineare Interpolation der Normalvektoren vor (anstelle der Farbwerte) Bei Phongschattierung liegt eine lineare Interpolation der Normalvektoren vor (anstelle der Farbwerte) Rechenaufwand Rechenaufwand Spiegelungen innerhalb eines Polygons werden bei Phongschattierung richtig dargestelltSpiegelungen innerhalb eines Polygons werden bei Phongschattierung richtig dargestellt Bei Gouraudschattierung bleibt der Umriss eckig Bei Gouraudschattierung bleibt der Umriss eckig

Keine Spiegelungseffekte, falsche SchlalschattenKeine Spiegelungseffekte, falsche Schlalschatten

Page 20: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

SchattierungsmodelleSchattierungsmodelle

Vergleiche Gouraud und Phong-SchattierungVergleiche Gouraud und Phong-Schattierung

Page 21: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Globale Globale SchattierungsmodelleSchattierungsmodelle

Raytracing (Strahlrückverfolgung)

Globale Schattierungsmodelle berücksichtigen auch Globale Schattierungsmodelle berücksichtigen auch reflektiertes und transmittiertes Licht mit dem reflektiertes und transmittiertes Licht mit dem Nachteil, dass die Rechenzeit selbst für ein einzelnes Nachteil, dass die Rechenzeit selbst für ein einzelnes Bild schon mehrerer Stunden betragen kann.Bild schon mehrerer Stunden betragen kann.

Da nur ein kleiner Teil der Lichtstrahlen durch das Auge (Kamera) verlaufen, werden nur jene Lichtstrahlen zurück verfolgt, die das Auge (Pixel des Bildschirms) erreichen.

Page 22: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Globale Globale SchattierungsmodelleSchattierungsmodelle

Radiosity

Bei diesem Verfahren wird von der Erhaltung der Bei diesem Verfahren wird von der Erhaltung der Lichtenergie in einem geschlossenen Raum Lichtenergie in einem geschlossenen Raum ausgegangen. ausgegangen.

Die Szene wird in viele kleine Flächen zerlegt und für jede dieser Flächen wird die Strahlung Bj berechnet.

Dabei wird die gegenseitige Lage aller Flächen und eventuell vorhandene Blockierungen berücksichtigt.

Dies führt zu einem (riesigen) linearen Gleichungssystem, welches so gelöst werden muss, dass für die gesamte Szene ein Energiegleichgewicht herrscht.

Inst. f. Computergrafik und Algorithmen, TU Wien

Page 23: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Globale Globale SchattierungsmodelleSchattierungsmodelle

Partikel tracer

Dieses Verfahren berechnet eine globale Dieses Verfahren berechnet eine globale Lichtverteilung welche diffuse Lichteffekte (wie Lichtverteilung welche diffuse Lichteffekte (wie z.B. Farbabstrahlungen, Kaustikeffekte, …) z.B. Farbabstrahlungen, Kaustikeffekte, …) berücksichtigt. berücksichtigt.

Szene ohne Partikel trace Lösung

Szene mit Partikel trace Lösung

Page 24: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Globale Globale SchattierungsmodelleSchattierungsmodellePartikel tracerVon den Lichtquellen werden Partikel (Superphotonen) entsandt. Diese treffen auf Oberflächen, wo sie entweder absorbiert oder reflektiert werden. Jeder Auftreffpunkt einer Oberfläche wird in einer Liste gespeichert und trägt so zur Intensitätsbestimmung jedes einzelnen Flächenpunktes bei.

Particle tracing ist unabhängig vom Beobachterstandpunkt; eine einmal errechnete Lösung kann für alle Raytracinglösungen derselben Szene verwendet werden.

Page 25: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

Globale Globale SchattierungsmodelleSchattierungsmodelleVergleich Phong Schattierung - Raytracing

Page 26: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

MaterialienMaterialienNeben den Neben den OberflächeneigenschaftenOberflächeneigenschaften Diffusität, Lichtdurchlässigkeit, Spiegelung, Reflexion, Diffusität, Lichtdurchlässigkeit, Spiegelung, Reflexion, Glanz und Transparenz bestimmt die Glanz und Transparenz bestimmt die FarbeFarbe oder (anstelle bzw. in Kombination mit der Farbe) oder (anstelle bzw. in Kombination mit der Farbe) eine eine TexturTextur (Bild) das Aussehen eines Materials. (Bild) das Aussehen eines Materials.Als Textur eignen sich Fotografien realer Objekte oder auch (mit Bildbearbeitungsprogrammen) Als Textur eignen sich Fotografien realer Objekte oder auch (mit Bildbearbeitungsprogrammen) selbst erstellte Grafiken.selbst erstellte Grafiken.

Page 27: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

MaterialienMaterialien

Erzeuge mit Hilfe des gegebenen Musters geeignete Erzeuge mit Hilfe des gegebenen Musters geeignete Texturen zum Erstellen folgender Szenen:Texturen zum Erstellen folgender Szenen:

Page 28: Visualieren und Animieren Andreas Asperl. Visualisieren Grundlagen der Visualisierung Grundlagen der Visualisierung Lichteinflüsse Lichteinflüsse Materialien

MaterialienMaterialienOberflächenerhebungen und Dellen können zusätzlich mit Hilfe von Bump maps Oberflächenerhebungen und Dellen können zusätzlich mit Hilfe von Bump maps (dabei handelt es sich um SW-Bilder) erzeugt werden. (dabei handelt es sich um SW-Bilder) erzeugt werden. Als Textur eignen sich wiederum SW-Fotografien realer Objekte oder auch (mit Als Textur eignen sich wiederum SW-Fotografien realer Objekte oder auch (mit Bildbearbeitungsprogrammen) selbst erstellte Grafiken.Bildbearbeitungsprogrammen) selbst erstellte Grafiken.

Diese Form der Texturierung eignet sich besonders gut für raue Oberflächen.