Computer-Graphik 1 Lighting & Shading

Ähnliche Dokumente
Lokale Beleuchtungsmodelle

Lokale Beleuchtungsmodelle

Teil 7: Beleuchtung Beleuchtungsmodelle, Schattierungsmodelle

Rendering: Lighting and Shading

Rendering. (illumination/shading) Beleuchtungsmodelle. Schattierung von Polygonen. Lokale Beleuchtungsmodelle

Beleuchtungsmodelle und Shading

Computer-Graphik 1. Lighting & Shading. G. Zachmann University of Bremen, Germany cgvr.cs.uni-bremen.de

Computergrafik 2010 Oliver Vornberger. Kapitel 18: Beleuchtung

Beleuchtung. Matthias Nieuwenhuisen

Teil 7: Beleuchtung. Einleitung. Einleitung. Beleuchtungsmodelle, Schattierungsmodelle

Beleuchtung. in Computerspielen

BlendaX Grundlagen der Computergrafik

Wima-Praktikum 2: Bildsynthese-Phong

Beleuchtung Schattierung Rasterung

Rendering: Lighting & Shading

Computergrafik 1 Beleuchtung

4.4 Glättung von Kanten

3. Erklären Sie drei Eigenschaften der bidirektionalen Reflektivität (BRDF).

CGR I Beleuchtung und Schattierung

Graphische Datenverarbeitung Visualisierungstechniken. Prof. Dr. Elke Hergenröther

Graphische Datenverarbeitung und Bildverarbeitung

Computergrafik Universität Osnabrück, Henning Wenke,

4.3 Beleuchtung und Schattierung

Computer-Graphik I Verallgemeinerte Baryzentrische Koordinaten

"rendern" = ein abstraktes geometrisches Modell sichtbar machen

Beleuchtungsmodelle. Realistische Bilder. Ausgedehnte Lichtquellen color bleeding. spiegelnde Reflexion. komplexe Oberflächen.

Christina Nell. 3D-Computergrafik

Beleuchtung Schattierung Rasterung

Computer Graphik I Beleuchtung

Abb. 5-5 Gegenüberstellung von Flat-Shading und Gouraud-Shading. Beleuchtungsberechnung mit nur einer Flächennormale pro Polygon

Licht und Farben. Andreas Spillner. Computergrafik, WS 2018/2019

3.3 Beleuchtung und Schattierung

Computer-Graphik I Baryzentrische Koordinaten

Computergraphik Grundlagen

4.7 Globale Beleuchtungsmodelle

Übungsstunde 8 zu Computergrafik 1

Erweiterung: Flächeninhalt mit Vorzeichen. a b, P, Q, R gegen Uhrzeigersinn a b, P, Q, R im Uhrzeigersinn

Analytical Relief Shading. Topographische und Hochgebirgskartographie, SS2014 Egger Michaela a

Licht und Schatten Visualieren mit dem PC. Andreas Asperl

1. Sichtbarkeitsproblem beim Rendern einer dreidimensionalen Szene auf einer zweidimensionalen

Graphische Datenverarbeitung und Bildverarbeitung

Strahlungsaustausch zwischen Oberflächen BRDF Ideal diffuse Reflektion Ideal spiegelnde Reflektion Totalreflexion Gerichtet diffuse Reflektion

Direkte Schattierungsverfahren (Gouraud)

Programmierpraktikum 3D Computer Grafik

1 Grundlagen. 1.1 Definition des Lichts

Bildverarbeitung: Filterung. D. Schlesinger () Bildverarbeitung: Filterung 1 / 17

Beleuchtungsverfahren. 1. Vorbemerkungen. 2. Klassifizierung. 3. Beleuchtungsmodelle. 4. Beleuchtungsalgorithmen

5. Übungsblatt (Computergrafik-Praktikum) Raytracing einer triangulierten Szene

Algorithmische Geometrie: Delaunay Triangulierung (Teil 1)

Kapitel 4: Schattenberechnung

(7) Normal Mapping. Vorlesung Computergraphik II S. Müller. Dank an Stefan Rilling U N I V E R S I T Ä T KOBLENZ LANDAU

Algorithmische Geometrie: Delaunay Triangulierung (Teil 2)

Computer-Graphik I Transformationen & Viewing

5. Raum-Zeit-Symmetrien: Erhaltungssätze

Graphische Datenverarbeitung und Bildverarbeitung

Distributed Algorithms. Image and Video Processing

Technische Raytracer

Klausurtermin: Nächster Klausurtermin: September :15-11:15

Farbtechnik und Raumgestaltung/EDV

HSV. Problem: RGB & CMY sind sehr unintuitiv Menschliche Farbspezifikation arbeitet eher mit

Ambient Occlusion Precomputed Radiance Transfer

Raytracing. Tobias Pfeiffer. 29. November Freie Universität Berlin Fachbereich Mathematik und Informatik

3. Analyse der Kamerabewegung Video - Inhaltsanalyse

3D-Computergrafik und animation. Shading und globale Beleuchtungsverfahren, Animationstechniken

Workshop: Einführung in die 3D-Computergrafik. Julia Tolksdorf Thies Pfeiffer Christian Fröhlich Nikita Mattar

Lichtquellen und Beleuchtung

Schattierung und Beleuchtung

Bauelemente der Optoelektronik Lichterzeugung und Photovoltaik

Grundlagen der Spieleprogrammierung

1. Licht, Lichtausbreitung, Schatten, Projektion

Physik Klausur JII.1 #2.2

5. Aufgabe Seien s, t beliebige Parameter. Unter welcher Bedingung sind die Vektoren s t

Richtungseigenschaften von Lichtquellen

Morphologische Operationen (12 Punkte)

Länge, Skalarprodukt, Geradengleichungen

Abitur 2011 G8 Musterabitur Mathematik Geometrie V

Schattenwurf mit Perspective Shadow Maps

Raytracing Modell Laufzeitoptimierungen Schnittalgorithmen Szenendatenstrukturen. Verbesserung der Bildqualität

Aufgabe 1: Wellenfunktion und Aufenthaltswahrscheinlichkeit

Transkript:

lausthal omputer-raphik 1. Zachmann lausthal University, ermany cg.in.tu-clausthal.de Beleuchtungsmodelle (lighting models) Definition "Beleuchtungsmodell": Vorschrift zur Berechnung der Farb- und Helligkeitswerte von Punkten auf der Oberfläche von Objekten rundlage sind physikalische esetze Modelliert werden Einflüsse von: 1. Lichtquellen (Position, Intensität, Farbe, etc.) 2. Objektoberfläche (eometrie, Reflexionseigenschaften) Für Echtzeitanwendungen verwendet man sehr einfache Modelle. Zachmann omputer-raphik 1 - WS 09/10 2 1

Lichtquellen Punktlichtquelle (point light): strahlt in alle Richtungen gleichmäßig ab Wird eindeutig charakterisiert durch 1. Position & 2. I(λ) = abgestrahltes Spektrum = Intensität abhänig von der Wellenlänge Richtungslichtquelle (directional light): jeder Punkt im Raum wird aus derselben Richtung bestrahlt harakterisiert durch Richtung & I( λ ) Beispiel: Sonne. Zachmann omputer-raphik 1 - WS 09/10 3 Strahler (spot light): Lichtausbreitung wird auf einen bestimmten Raumwinkel (Lichtkegel) beschränkt. Der Abfall der Lichtstärke von der Kegelachse zum Rand wird durch folgendes esetz bestimmt: 0 falls cos α < cos Θ I(λ) = n I0 (λ) cos α sonst harakterisierung durch: Position, Richtung (Kegelachse), α Exponent (Öffnungswinkel), I( λ ) Θ. Zachmann omputer-raphik 1 - WS 09/10 4 2

oniometrische Lichtquelle: Abstrahlcharakteristik wird per Tabelle beschrieben. Zur Ermittlung von I( λ ) muß evtl. zwischen Tabelleneinträgen interpoliert werden Area light source. Zachmann omputer-raphik 1 - WS 09/10 5 Unterschiedlicher Effekt zwischen point light und directional light Wie erkennt man anhand der Beleuchtung einer Kugel, von welcher Art die Lichtquelle ist? (point oder directional?) point light source ambient light only directional light source. Zachmann omputer-raphik 1 - WS 09/10 6 3

Lokale Beleuchtungsmodelle Vereinfachung: berücksichtige bei der Berechnung der Beleuchtung eines Punktes keine sekundären Effekte (Strahlungsaustausch zwischen Objekten), nur primären Austausch zwischen Lichtquelle und Objekt lokales Beleuchtungsmodell Superpositionsprinzip: betrachte Licht als Teilchen I(λ) = Ij (λ) j Vereinfachung der Notation: wir lassen im Folgenden λ überall weg, und merken uns, daß alle photometrischen rößen eigtl. von λ abhängen!. Zachmann omputer-raphik 1 - WS 09/10 7 Konvention bzgl. negativer Skalarprodukte Falls n l < 0, dann befindet sich das Licht hinter der Fläche n l Falls n e < 0, so befindet sich der Betrachter auf der Rückseite der Fläche n e Wir definieren im Folgenden (der Einfachheit halber) prinzipiell: n l := max(0, n l). Zachmann omputer-raphik 1 - WS 09/10 9 4

Diffuse Reflexion Licht wird von der Objektoberfläche gleichmäßig in alle Richtungen reflektiert Folge: Helligkeit ist unabhängig vom Viewpoint! Beispiele: Stück Papier, Tafel, unbearbeitetes Holz Diffuse/Matte Objekte werden auch Lambert'sche Objekte bezeichnet. Zachmann omputer-raphik 1 - WS 09/10 10 Lambert'sche Oberflächen Das Lambert'schen Kosinus-esetz: Die Intensität I einer Oberfläche ist proportional zum Kosinus des Winkels zwischen der Oberflächennormalen und der Richtung zur Lichtquelle I = I0 A I = I0 A = I0 cos θ x θ Licht (l) A θ x Auch auf diese größere Fläche fällt die gleiche Menge Licht! Normale (n) Fazit: I = I0 cos θ = I0 n l. Zachmann omputer-raphik 1 - WS 09/10 Annahme: n und l seien Einheitsvektoren 11 5

Ambientes Licht Das Lambert'sche Modell erzeugt schwarze Farbe für Oberflächen, die nicht zur Lichtquelle zeigen In der Realität trifft Licht aus allen Richtungen ein (dieses wurde von anderen Objekten, evtl. mehrfach, reflektiert) Füge für alle Objekte einen ambienten Beleuchtungsterm ein: I = Ia + I0 n l Nur ambiente Beleuchtung. Zachmann Diffuse + ambiente Beleuchtung omputer-raphik 1 - WS 09/10 12 Spiegelnde Reflexion n Stellt lanzpunkte auf glänzenden Oberflächen dar Oberflächenreflexion ist abhängig von Richtung der Lichtquelle, l l r α α θ v Oberflächennormale, n Richtung zum Betrachter, v Bei idealer spiegelnder Reflexion sieht man nur dann Licht von der Lichtquelle, wenn r = v Bei glänzenden Oberflächen sieht man auch "nahe" bei r ein Highlight; das erreicht man z.b. mit p I = I0 cos Θ. Zachmann omputer-raphik 1 - WS 09/10 13 6

erichtet diffuse Reflexion Ideal diffuse und ideal spiegelnde Reflexion sind in der Realität selten; meist eine Mischung erichtet diffuse Reflexion: die abgestrahlte Intensität hat (oft) ein Maximum in Richtung der idealen Reflexion ideal spiegelnd gerichtet diffus ideal diffus. Zachmann omputer-raphik 1 - WS 09/10 Das Phong-Beleuchtungsmodell Zusammensetzung: 15 [1975] n l r v I = Iamb + Idiff + Ispec Aufgrund des Superpositionsprinzips erhält man für n Lichtquellen: I = rd Ia + n (rd cos Φj + rs cosp Θj ) Ij j=1 rd = rd (λ) = diffuser Reflexionskoeffizient (spiegelnde Materialfarbe) rs = rs (λ) = spekularer Reflexionskoeffizient (diffuse Materialfarbe) p. Zachmann = "lanzzahl" (shininess), hat keine Einheit (hat keine physikalische Bedeutung) omputer-raphik 1 - WS 09/10 16 7

ambient. Zachmann + diffus + spekular = omputer-raphik 1 - WS 09/10 Phong 17 Demo (Quelle: http://www.avl.iu.edu/%7eewernert/gviz/phong/ ). Zachmann omputer-raphik 1 - WS 09/10 18 8

Effekt der Parameter im Phong-Modell Der Exponent p steuert die "Schärfe" des Highlights: in Polarkoord. p=1 p=2 p=4 p=8 p = 16 p = 32 p = 64 p = 128 p = 256 p Ispec = rs I0 cosp Θ = rs I0 (r e). Zachmann omputer-raphik 1 - WS 09/10 19 ra rd rs p "Oberflächenkörnung" (p). Zachmann omputer-raphik 1 - WS 09/10 20 9

Zusätzliche Freiheit: diffuse und spekulare (= spiegelnde) Materialfarbe können verschieden sein. Problem: Werte > 1 können entstehen! Abhilfe: lamping Besser wäre: Erhalten von Farbton und Sättigung. Zachmann omputer-raphik 1 - WS 09/10 Das Blinn-Phong Modell 21 [1978] Problem des Phong-Modells: man muß für jeden Punkt den Reflexionsvektor bestimmen Idee: verwende Winkelhalbierende h ("half-vector") und n, statt r und e: Setze: l+e h= l + e Ispec = rs I0 cosq θ 2 n l h r θ 2 θ e = rs I0 (h n)q Es gilt: I' ist max I ist max Frage: ist es dasselbe Modell? fast Vorteil dieser Methode: wenn Auge und Lichtquelle unendlich weit entfernt sind, dann ist h (für eine bestimmte Lichtquelle) konstant! (Kann man also am Beginn eines Frames vorberechnen). Zachmann omputer-raphik 1 - WS 09/10 22 10

Spectral Lighting vs RB-Lighting Erinnerung: alle photometrischen rößen sind eigtl. Funktionen in λ! beschreiben also ein Spektrum In der Praxis (z.b. OpenL): führe alle Berechnungen jeweils für die 3 Primärvalenzen durch Aber: dadurch erhält man nicht 100% korrekte Bilder! Denn: RB(r (λ) I(λ)) = RB(r (λ)) RB(I(λ)) http://www.cs.brown.edu/exploratories/. Zachmann omputer-raphik 1 - WS 09/10 23 Shading-Algorithmen Achtung: unterscheide zwischen Beleuchtungsmodell (lighting model) und Beleuchtungsalgorithmus (shading algorithm)! Beleuchtungsmodell beschreibt Zusammenhang zwischen Lichtquellen und Oberflächen zur Berechnung der Intensität in jedem Punkt. Beleuchtungsalgorithmus berechnet aus der Intensität/Farbe einiger Punkte die Farbe aller Bildpunkte. Leider: große Begriffsverwirrung! ;-( - "lighting algorithm", "shading model", 3 Möglichkeiten, das Beleuchtungsmodell auszuwerten: 1x pro Polygon 1x pro Vertex 1x pro Pixel. Zachmann omputer-raphik 1 - WS 09/10 24 11

Pixar "Shutterbug" Die Szene ganz ohne Shading. Zachmann omputer-raphik 1 - WS 09/10 25 Flat Shading (Konstante Beleuchtung) Simpelster Shading-Algo: jedes Polygon erhält einen einheitlichen Farbwert Pixar "Shutterbug" Werte dazu (im Prinzip irgend ein) Beleuchtungsmodell an irgend einer Ecke des Polygons aus. Zachmann omputer-raphik 1 - WS 09/10 26 12

ouraud-shading [1971] Werte das Beleuchtungsmodell an allen 3 Ecken des Dreiecks aus, interpoliere linear dazwischen während der ScanlineKonvertierung n0 c0 n2 c2 n1 c1. Zachmann omputer-raphik 1 - WS 09/10 27 Vergleiche ouraud-shading mit rein diffusem Beleuchtungsmodell. Zachmann omputer-raphik 1 - WS 09/10 ouraud-shading mit Phong-Lighting 28 13

Flat-Shading ouraud-shading mit Phong-Lighting. Zachmann omputer-raphik 1 - WS 09/10 29 Einfluß der Triangulierung Orientierung: Auflösung: Vergrößerung 1 x 1 Flächen 2 x 2 Flächen 3 x 3 Flächen 5 x 5 Flächen 10 x 10 Flächen 40 x 40 Flächen Frage: Woher kommen die Streifen?. Zachmann omputer-raphik 1 - WS 09/10 30 14

Mach-Bänder Problem: die lineare Interpolation der "Lichtwerte" Diese Interpolation ist 0-stetig, aber nicht 1-stetig! Das menschliche Auge hat einen eingebauten "Kantendetektor" (genau diese Knicke) Es gibt Neuronen, die die Ableitung bilden (jew. für ein Retina-"Pixel") Wahrgenommene Intensität = physik. Intensität + Ableitung Resultat: Mach-Bänder bei linearer Interpolation Abhilfe: Hardware müsste höherwertig interpolieren. Zachmann omputer-raphik 1 - WS 09/10 31 Extremes Beispiel Die Intensität innerhalb eines Quadrates ist konstant! Ein Farbverlauf von innen nach außen ist eine Illusion. Die hellen Linien bei 45 (und 135 ) sind eine Illusion!. Zachmann omputer-raphik 1 - WS 09/10 32 15

Weiteres Problem beim ouraud-shading Evtl. "verpasst" man Highlights im Inneren eines Polygons:. Zachmann omputer-raphik 1 - WS 09/10 33 Berechnen der Normalen der Eckpunkte Die Dreiecke bilden nur eine Annäherung an die wirkliche Oberfläche eines Objektes An den Vertices hätte man gerne die Normale der Fläche, nicht der Dreiecke! Algorithmus: Zu Beginn berechne eine Normale für jedes Polygon Bestimme für jeden Vertex, welche Polygone diesen enthalten Bestimme den "Mittelwert" der Normalen n3 n2 nv vp0 n4 n1 dieser angrenzenden Polygone - Einfach aufsummieren, dann normieren. Zachmann omputer-raphik 1 - WS 09/10 34 16

Phong-Shading Idee: interpoliere die Normale n0 während der Scanline-Konvertierung (und weitere Parameter) und werte das Beleuchtungsmodell in jedem Pixel aus n c n1 Wie interpoliert man Normalen? Typischerweise: linear mit anschließender Normierung Achtung: ohne Normierung bekäme man nur (sehr umständliches) ouraudshading! n2 n1 n(t )o n(t ) = t n1 + (1 t )n2 n2 War früher sehr teuer, daher wurden viele Alternativen vorgeschlagen - Inkrementell, Taylor-Reihe + LUT,. Zachmann omputer-raphik 1 - WS 09/10 35. Zachmann omputer-raphik 1 - WS 09/10 36 17

. Zachmann omputer-raphik 1 - WS 09/10 37 18