Effekte 1 Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung.

Slides:



Advertisements
Ähnliche Präsentationen
Computer Graphics Shader
Advertisements

Kriterien der mikroskopischen Erzmineralbestimmung
Graphische Datenverarbeitung IV Dr. Markus Heitz.
Lic.Sc.Inf. Dr. Monique Jucquois-Delpierre
FH-Hof Texturen Richard Göbel. FH-Hof Anwendungen von Texturen Darstellung von 2D-Bildern Gestaltung von Oberflächen Simulation komplexer Geometrien...
Licht und Schatten Richard Göbel.
FH-Hof Texturen Richard Göbel. FH-Hof Anwendungen von Texturen Darstellung von 2D-Bildern Gestaltung von Oberflächen Simulation komplexer Geometrien...
5. Beleuchtung und Schattierung
Phong Shading (Normaleninterpolation)
Bewegung elektrischer Ladungen im elektrischen Feld
Simulation und 3D-Programmierung Praxis: Dreiecke, Texturen, Vertex-Buffer Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Kapitel 12: „Variablen und Konstanten verwenden und Spiele.
Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung Prof.
Java3d „Licht und Material“
Computergrafik Vom Dreieck zum Ego-Shooter Olaf Müller
Displacement Mapping Dynamische Generierung detaillierter Geometrien
Special Effects Realistischeres Rendern einer Scene.
Optik (Lehre vom Sichtbaren)
Schulphysik 2 1. Geometrische Optik.
FH-Hof Licht Richard Göbel. FH-Hof Licht in Java3D - Basisideen Bereitstellung unterschiedlicher Lichtquellen Definition der Wirkung einer Beleuchtung.
BSP Binary Space Partitioning
Grafikformate Nicolas Ruh.
Depth of Field Ein Fachvortrag von: Max Goltzsche und Igor Marijanovic Real-Time RenderingBeuth Hochschule für TechnikSoSe 2012.
Einsteigerkurs Andy Reimann - Mai Intro Trailer.
Projekteilnehmer: Ertas Mutlu Önal Kenan
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 3 Übung: Softwaretechnologie.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Universität zu Köln Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung Wintersemester 2011/2012 Dozent: Prof. Dr. phil. Manfred Thaller.
Wasser in 3D Die Modellierung und realitätsnahe Echtzeitberechnung von Wasser unter Zuhilfenahme der Grafik Engine OGRE 3D Präsentation von Paul van Hemmen.
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
4.3 Beleuchtung und Schattierung
Polarisation und optische Aktivität
Theorie Praktische Beispiele
Scanner und Kopierer Seminarvortrag von Nils Schütte
Bildbearbeitung Nicolas Ruh.
Durch Brechung Warum ist ein Bleistift, der ins Wasser eingetaucht ist, geknickt? Warum erscheint ein Körper im Wasser verkürzt? Warum ist ein Gegenstand.
Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung WS 12/13 Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung.
Helwig Hauser Teil 12: Zusammenfassung All CGR4 revisited.
Helwig Hauser Teil 4: Texturing Farbe, Struktur, Umgebung.
Beleuchtungsmodelle, Schattierungsmodelle
Beleuchtung, inkl. Schatten, Reflexionen
Visualieren und Animieren
Michael Schmidt computer graphics & visualization Texture Mapping Lapped Textures.
Elektronen decken feinste Strukturen auf (Elektronenmikroskope)‏
Theorie Praktische Beispiele
ANIMATION II Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung SS 2013 Softwaretechnologie II (Teil II): Simulation und 3D.
Erfahrungen mit Microsoft DirectX 8 W. Krug, April 2002.
Softwaretechnologie für Fortgeschrittene Teil Thaller Stunde IV: Bildverarbeitung IV Köln 15. Januar 2015.
Universität zu Köln WS 2014/15 HKI – Softwaretechnologie 2 (Teil 1) Von Tilo Kochs.
Die Welt der Shader Universität zu Köln WS 14/15 Softwaretechnologie II (Teil 1) Prof. Dr. Manfred Thaller Referent: Lukas Kley Fortgeschrittene Techniken.
Terrain Generierung und Navigation Terrain Generierung und Navigation Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung Visuelle.
Ein Liter Licht.
Stefan Röttger Universität Stuttgart (VIS). Überblick 1. Motivation 2. Shadow Volumes [Crow77] 3. Verfahren ohne Stencil Buffer 4. Demonstrationsfilm.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Der Begriff Grafik Computergrafik ist die Erstellung und Verarbeitung von Grafiken mit Hilfe eines Computers. Hierzu benötigt man: Eingabegeräte wie zum.
Random & Probability Universität zu Köln Institut für Medienkultur und Theater AM3: Visuelle Programmierung II WS 2013/2014 Dozent: Prof. Manfred Thaller.
Die Renderpipeline.
PhysX auf der GPU in Batman: Arkham Asylum & bei Fluid Simulations Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie.
Global-Illumination: Radiosity
Minecraft Universität zu Köln Historisch-kulturwissenschaftliche Informationsverarbeitung Re-usable Content in 3D und Simulationssystemen SS 2015 Prof.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
ROBERT NYSTROM GAME PROGRAMMING PATTERNS III.8 Thema: Sequencing Patterns Seminar: Softwaretechnologie II (Teil 2) Dozent: Prof. Dr. Manfred Thaller Referent:
...ist eine Maßeinheit für die Datenmenge und den Informationsgehalt. Dabei ist 1 Bit die kleinste darstellbare Datenmenge, die beispielsweise durch eine.
Bit (Binary Digit): die kleinste EDV-technische Speichereinheit kann entweder den Wert eins (wahr) oder den Wert null (falsch) einnehmen Physikalisch.
Spatial Partition Game Programming Patterns / Optimization Patterns AM3: Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung Dozent: Prof.
Wie kommt es zu den Mondphasen?
Lichtexprimente ls stadttechnik ws 02/03 marco bartsch marco laske lichtsimulation mit software.
Ich brauche eine Web-Seite vom Server im Internet
Essen - Namibia.
 Präsentation transkript:

Effekte 1 Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung Dozent: Prof. Dr. Manfred Thaller Referent: Artur Wilke

Inhalt Nebel Beleuchtung Alpha-Blending Multi-Texturing

Warum Nebel? Problem in bei größeren Landschaften (Out- Door): Anzahl der zu zeichnenden Objekte nimmt zu Bei großer Sichtweite springen Objekte ins Bild Unrealistisch

Nebel Lösung: Nachahmung der Wirklichkeit Landschaft schein nahtlos in den Horizont überzugehen Zuschauer kann nicht sehen was dahinter ist

Nebel Vorteile: Realismus wird suggeriert Verhindern von Grafikfehlern Atmosphäre wird erzeugt

Linearer Nebel Festgelegter Start- und Endwert (Distanz) Einfluss des Nebel steigt zwischen diesen Werten mit gleicher Höhe (linear) f(d) = Ende – d d steht für die Tiefe des Pixels Ende-Start

Exponentieller Nebel Nebelstärke nicht exponentiell zu. Kein Anfangs- und Endwert Beginnt direkt vor der Kamera und geht theoretisch bis in Unendliche

Direct3D Berechnung Einfacher exponentiellen Nebel: f(d) = 1 e^(d*dichte) o Rückgabewert: 1=Kein Nebel; 0=vollständiger Nebel

Vertexnebel vs Pixelnebel Pixelnebel ist genauer, da Nebeleinfluss für jedes einzelne Pixel berechnet wird Dadurch jedoch aufwändiger zu berechnen und leistungsintensiver (Performance!) Daher wird für die meisten Fälle der Vertexnebel bevorzugt

Tiefennebel vs Entfernungsnebel Tiefennebel arbeitet mit Angabe der Z- Koordinate (Tiefe) Entfernungsnebel wird die tatsächliche Entfernung zur Kamera angegeben Tiefennebel ist schneller zu berechenen Entfernungsnebel funktioniert nur im Zusammenspiel mit Vertexnebel

Beleuchtung Die Eigenschaften von Licht komplett nachzuahmen ist rechnerisch zu aufwändig Besonders rechnungsintensiv ist die Reflexion Daher vereinfachte, lokale Beleuchtungsmodelle

Grundprinzipien der Beleuchtung Verschiedene Lichttypen: Punktlichter: Geben Licht in alle Richtungen ab (Glühbirne) Spotlichter: Geben Licht gebündelt in einem Lichtkegel ab (Scheinwerfer) Richtungslichter: Geben Licht in eine Richtung ab (Sonne)

Grundprinzipien der Beleuchtung Oberflächen die senkrecht zum Licht stehen werden am stärksten beleuchtet, bei 90 Grad Winkel -> keine Beleuchtung Licht außerhalb seiner effektiven Reichweite wird nicht mehr berechnet Objekte werden einem Material zugeordnet welches gewisse Eigenschaften zum Licht hat

Farbe Licht ist eine Mischung aus Farben (RGB zum Beispiel) Wir sehen ein Objekt in jener Farbe, die am stärksten reflektiert wird. Gleiches Prinzip in der Lichtberechnung: Material hat eine Materialstreufarbe, Licht eine Lichtstreufarbe Streufarbe: engl. Diffuse Color

Farbe Farbe= f * Lichtstreufarbe * Materialstreufarbe f = Lichtbeeinflussfaktor (Werte zwischen [0;1]), 1 wäre volles Licht, 0 gar kein Licht

Weitere Beleuchtungen Hintergrundbeleuchtung (ambient color) Glanzfarbe (specular color) Eigenfarbe / Strahlungsfarbe (emissive color) Wird bei Berechnung einfach hinzuaddiert

Beleuchtung auf Vertexbasis Erlaubt glattere Übergänge Reicht in einigen Fällen nicht aus Lösung Light –Mapping Lichtfleck wird in Form ein Textur aufgelegt Multi-Texturing

Alpha-Blending Durch transparente Pixel bleiben opake Pixel sichtbar Z-Buffer kann dabei nicht genutzt werden Transparente Pixel werden immer nach den opaken gezeichnet

Alphawert Jede Farbe bekommt einen Alphawert Je höher dieser, desto undurchsichtiger (opak)

Multi-Texturing Multi-Texturing erlaubt mehrere Texturen mit unterschiedlicher Auflösung übereinander zu legen Speicher wird eingespart Beispiel: Light-Maps zu Abbildung von statischen Licht und Schatten

Multi-Texturing Erlaubt Effekte wie Partikel in einem Schutzschild Erlaubt Rotieren einer der Texturen in Echtzeit Maximale Anzahl der Texturen wird von der Grafikkarte bestimmt (2005 max. 16 Texturen) Ersetzt Alpha-Blending Einsatz als Beleuchtung (Light-Map)

Umsetzung Jede Texturschicht hat einen Operator und zwei oder drei Argumente Das Ergebnis wird ein Zielregister geschrieben, welches wiederum ein Argument der nächsten Textur sein kann Argument kann ein Register, Texturfarbe oder Streufarbe sein Zielregister kann das Standardregister oder ein temporäres sein Beispiel: Pixelfarbe = (Streufarbe * Textur1) + Textur2

Quellen: David Scherfgen: 3D-Spiele-Programmierung, S Screenshot_340.jpg Screenshot_340.jpg blending-mit-verschiedenen-transparenzstufen.png blending-mit-verschiedenen-transparenzstufen.png