Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung

Slides:



Advertisements
Ähnliche Präsentationen
Inhalt Bildparameter Bildquellen Bildgröße/Bildformat Bildauflösung Farbtiefe Farbmodus Scannen Monitor Dateiformat Bildausschnitt Tonwertkorrektur.
Advertisements

Algorithmentheorie 08 – Dynamische Programmierung (1)
Sortieren I - Bubblesort -
Grundlagen der Geometrie
Wie sieht deine Freundin aus?
TFT - Flachbildschirme
Bilder und Rasterdaten
Der Monitor Einführung CRT- Monitore (Röhrenmonitor)
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 Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung Prof.
Positionierung und Ausrichtung der Kamera. void balance::kamera_bewegen( float seit, float hoch, float vor) { D3DXVECTOR3 v, s, h, t; v = da_gucke_ich_hin.
Fernseher LCD- Bildschirme.
Verkettete Liste Visualisierung. New-Operator Mit dem New-Operator kann zur Laufzeit (dynamisch) Speicherplatz reserviert und angelegt werden Vorteil:
Listen Prof. Dr. Christian Böhm in Zusammenarbeit mit Gefei Zhang
Der C-Präprozessor EDV1 - 04Präprozessor.
Einführung in Visual C++
1DVG3 - Paint Paint ein Zeichenprogramm. DVG3 - Paint 2 Paint – ein Zeichenprogramm.
Der C-Präprozessor 08-CPräprozessor.
Inhalt danach. inhalt danach inhalt danach inhalt danach inhalt danach inhalt danach.
Blick aus dem Autofenster
FHP - Fachbereich Bauingenieurwesen
Von Andrea Reuther Jan Pandikow Matthias Traut Nico Donaera
Was ist Winkelfehlsichtigkeit?
Plakate.
Depth of Field Ein Fachvortrag von: Max Goltzsche und Igor Marijanovic Real-Time RenderingBeuth Hochschule für TechnikSoSe 2012.
Peripheriegeräte Erkennen und Funktionsweise
Die Funktionsweise eines Beamers
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 3 Übung: Softwaretechnologie.
3D- Spieleprogrammierung
Raimond Reichert Einführung in die Verwendung von Processing innerhalb von Eclipse.
Wie funktioniert eine Digitalkamera?
Computergraphische Visualisierungs- verfahren für 3D-Stadtmodelle
Effekte 1 Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung.
Linsen und ihre Anwendung
Anti-Aliasing Kantenglättung.
Einführung in die Programmierung
Einführung in die Programmiersprache C 4
Stereoskopie © © ©
OPTISCHE TÄUSCHUNGEN & ILLUSIONEN
Abschlussquiz ©
Lycopin Der Farbstoff im Tomatensaft.
Herzlich willkommen zu unserem Sehtest von Volker Kemmerling Bitte klicken.
FINEPIX REAL 3D W3 3D in High Definition. Full HD 3D Fotos und HD 3D Videos · HDMI Mini Port2x 3fach opt. FUJINON Zoom-Objektiv35–105 mm (entspricht KB)
Beleuchtungsmodelle, Schattierungsmodelle
Kompressionsprinzipien bei digitalen Bildern
PART V CONTACT PHYSICS Chapter Aufbaumodul 3: Visuelle Programmierung II Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung Prof.
Licht und Farbe Prof. Dr. Bernd Jödicke - was ist Licht
Endrunde Landeswettbewerb Mathematik 2011
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung WS 2013/14.
Breakanoid – Bälle & Blöcke Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung WS 12/13 Übung: Visuelle Programmierung I –
Farben Vanessa Kogelbauer.
Der Monitor Von ... und ....
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.
Stefan Röttger Universität Stuttgart (VIS). Überblick 1. Motivation 2. Shadow Volumes [Crow77] 3. Verfahren ohne Stencil Buffer 4. Demonstrationsfilm.
Organisation von Wahrnehmung
1 AINF Bildschirme Kurt Pater AINF-Lehrgang in Wien, HTL Rennweg Titel : Hardware - Bildschirme Name : Kurt Pater.
Multimedia und Virtual Reality Vorlesung mit Übungen Sommersemester 1999 Martin Kurze
Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Softwaretechnologie II / Visuelle Programmierung Dozent: Prof. Dr. Manfred Thaller WS.
Multimedia und Virtual Reality Vorlesung am Martin Kurze Multimedia in 3D.
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.
BEAMER Aufbau + Funktionsweise Anzeigeverfahren (DLP/LCD)
Stereoskopische Ansichten von der Welt oder „Himmlische Körper in 3D“
Farbenlehre für eine gute Farbgestaltung
Wie funktioniert ein moderner Fotoapparat? Harald Höller, Birgit Schörkhuber Vortrag im Rahmen der StauneLaune - ForschungsWochen für 7-10 Jährige Mittwoch,
Monitore Thema: Monitore.
Objektorientierung Gliederung von Daten und Funktionen zu Objekten
Bildschirm MANUEL kARNER.
LCD-Schirme Ein Vortrag von: Martin Pinzger E881.
 Präsentation transkript:

Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung Manfred Thaller WS 2011/2012   Stereo-3D-Grafik Linda Scholz

Räumliches Sehen Beide Augen suggerieren räumliche Tiefe Gehirn verarbeitet zwei Bilder aus verschiedenen Blickwinkeln Durch Verschiebung beider Bilder wird die Tiefe berechnet

Tiefenschärfe Vermittelt Realismus Schärfe und Unschärfe setzen den Blickpunkt Größe von Objekten lässt Entfernung von Objekten anmuten

Stereo-3D-Grafik Darstellung von Bildern aus zwei Perspektiven Überlagerung der beiden Anisichten Größere Verschiebung = Entfernung zum Betrachter

Stereo-3D-Grafik Soll das menschliche Auge täuschen Dreidimensionalität von Objekten wird vorgetäuscht

Stereo-3D-Grafik 2 Bilder müssen gerendert werden Jedes Auge darf nur das jeweilige Bild sehen VR-Helme 3D-Shutter-Brillen 3D-Kino-Lösung Rot-Blau/Rot-Grün Stereografie

VR-Helme Virtual Reality Anstelle der Gläser zwei Displays, die separat angesteuert werden Vorteil: sehr gute Qualität Nachteil: Grafikkarte muss Helm unterstützen und jeden Frame doppelt rendern Hohe Kosten

3D-Shutter-Brillen Augen werden abwechselnd verdunkelt Monitor zeigt abwechselnd die Sicht von links und rechts Vorteil: günstige Lösung und gute Bildtrennung Nachteil: Grafikkarte muss Brille unterstützen 50% Helligkeit geht verloren Bildwiederholungsfrequenz muss verdoppelt werden

3D-Kino-Lösung Zwei Projektoren strahlen den Film einmal aus linker Sicht und einmal aus rechter an die Wand Licht der Projektoren unterscheidet sich durch Polarisation Filter in den 3D-Brillen lassen jeweils nur einen Licht-typ durch Technik lässt sich für Computerspiele kaum verwenden Zwei LCD-Projektoren vor die man je einen Polarisationsfilter stellt

Rolt-Blau/Rot-Grün Ein Bild arbeitet mit rotem Licht eines mit blauem oder grünem Bilder werden abwechselnd von links und rechts gezeigt Flackern entsteht Im Bild werden Rot und Blau/Grün kombiniert

3D-Kino-Lösung Vorteil Nachteil Kostengünstig Funktioniert auf fast allen Grafikkarten Einfach zu implementieren Nachteil Eine Farbe geht komplett verloren

Stereografie Auf den ersten Blick undeutliches Bild Durch Verstellung der Augen wird 3D Objekt erkennbar Tiefe der Pixel sind von Bedeutung um ein stereografisches Bild zu berechnen Stereografische Bilder in Echtzeit durch Zugriff auf den Bildpuffer Farbe des Pixels von seiner Tiefe abhängig machen (Pixel-Shader)

Implementierung Renderstate D3DRS_COLORWRITEENABLE Farbkanäle beim Rendern kontrollieren, dass nur roter und grüner Farbkanal geschrieben wird D3DCOLORWRITEENABLE_RED D3DCOLORWRITEENABLE_GREEN

Implementierung Szene beginnen & Puffer leeren D3DRS_COLORWRITEENABLE auf D3DCOLORWRITEENABLE_RED setzen Szene von links rendern (Kamera entlang der X-Achse verschieben) Z- und Stencil-Buffer leeren – nicht Bildpuffer D3DRS_COLORWRITEENABLE auf D3DCOLORWRITEENABLE_BLUE setzen Szene von rechts rendern Szene beenden & Bildpuffer sichtbar machen

Blickpunkt der Kamera Bei Stereo-3D-Grafik sollte sich der Blickpunkt der Kamera bei dem Objekt befinden, das in der Bildmitte zu sehen ist.

Galactica Game.cpp #include "Galactica.h" // Folgendes #define schaltet den 3D-Brillen- Modus ein: // #define _3D_GLASSES_

CGAME::Render #ifdef _3D_GLASSES_ D3D->Clear(0, NULL, D3DCLEAR_TARGET, tbColor(0.0f), 1.0f, 0); for(int i = 0; i < 2; i++) { D3D->Clear(0, NULL, D3DCLEAR_ZBUFFER, tbColor(0.0f), 1.0f, 0); D3D->BeginScene(); if(i == 0) D3D.SetRS(D3DRS_COLORWRITEENABLE, D3DCOLORWRITEENABLE_BLUE); else D3D.SetRS(D3DRS_COLORWRITEENABLE, D3DCOLORWRITEENABLE_RED); // Kamera setzen SetupCamera();

CGAME::SetupCamera #ifdef _3D_GLASSES_ static DWORD dwFrame; if(dwFrame % 2) m_vCameraPos -= tbVector3Cross(tbVector3Normalize(m_vCameraLookAt - m_vCameraPos), m_vCameraUp) * 0.01f; else m_vCameraPos += tbVector3Cross(tbVector3Normalize(m_vCameraLookAt - m_vCameraPos), m_vCameraUp) * 0.01f; #endif

Vielen Dank Schöne Ferien