Computergraphik mit OpenGL Einführung. Bilder Objekt existiert im Raum unabhängig vom Betrachter Objekte sind beschrieben durch die Position verschiedener.

Slides:



Advertisements
Ähnliche Präsentationen
Computer Graphics Shader
Advertisements

Konzeptioneller Vergleich von VRML, Java3D und OpenGL hinsichtlich ihrer Eignung zur Erstellung von Animationen von Christian Stein.
Einführung in die Bildverarbeitung
3. 3D-Betrachtungstransformationen
Transformation (Umformung rechtwinkliger Koordinaten)
Lineare Interpolation - Beispiel
13. Transformationen mit Matrizen
DIE HÜLLKURVE Beispiel aus dem Alltag:
12. Iteration und Rekursion
Kollisionen erkennen Kollisions- und Schnittpunkttests auf Dreieckbasis Kollisions- und Schnittpunkttests auf Viereckbasis Einsatz von achsenausgerichteten.
Grundlagen der Geometrie
Klicke Dich mit der linken Maustaste durch das Übungsprogramm!
Klicke Dich mit der linken Maustaste durch das Übungsprogramm! Ein Übungsprogramm der IGS - Hamm/Sieg © IGS-Hamm/Sieg 2007 Dietmar Schumacher Zeichnerische.
Numerik partieller Differentialgleichungen
FH-Hof Extensible Markup Language Richard Göbel. FH-Hof Extensible Markup Language XML XML ist universeller Ansatz für die Strukturierung von Zeichenketten.
FH-Hof Geometrie Richard Göbel. FH-Hof Aufbau des virtuellen Universums.
FH-Hof Indirekte Adressierung Richard Göbel. FH-Hof Einfache Speicherung von Daten Eine "einfache" Deklaration definiert direkt eine Speicherplatz für.
Processing: Arrays & Laden von Dateien Aufbauend auf dem Beispiel: File I/O LoadFile1.
Die Geometrie der Ebene
Viewing: Sichtbarkeitsbestimmung
Koordinatensysteme und Transformationen
2D-Visualisierung von Daten
Diskrete Mathematik I Vorlesung Arrays-
OpenGL mit Delphi Allgemeines OpenGL-Funktionsbezeichnungen
DVG Felder1 Felder. DVG Felder 2 Was sind Felder? Felder sind Reihungen aus endlich vielen Elementen gleichen Typs. Z.B.: Vektoren : (x.
DVG Klassen und Objekte
Quaternionen Eugenia Schwamberger.
Special Effects Realistischeres Rendern einer Scene.
Redundanz und Anomalien (1)
Entwurf von CamCarpets mit Projektionsmatrizen
Modellierung von Baumstrukturen mit einem einzigen Polygonnetz
ITAP Teeseminar, , Seite 1U. Koschella: Konzepte von DecaDeco (MC-Code von M. Mihalkovič) Konzepte von DecaDeco Monte-Carlo Code für dekagonale.
Einführung in die Physik für LAK
FHP - Fachbereich Bauingenieurwesen
Integration virtueller und realer Objekte Proseminar: Anwendungen für Augmented Reality.
§24 Affine Koordinatensysteme
Computergrafik - Inhalt
GWDG – Kurs Parallelrechner-Programmierung mit MPI MPI Punkt-zu-Punkt-Kommunikation Oswald Haan
Computergrafik - Inhalt
Import und Verknüpfung von Daten
Computergraphische Visualisierungs- verfahren für 3D-Stadtmodelle
Zeichnen linearer Funktionen
§3 Allgemeine lineare Gleichungssysteme
Skalare, Vektoren.
Verhalten von Objekten in der Szene
Objekte und ihre Beschreibung
Von Patrick Schmid und Christian Piwecki
Lösen von quadratischen Ungleichungen
Steigung und lineare Funktionen
Programmieren in C Grundlagen C 2
Steigung und lineare Funktionen
Benutzerdefinierte Datentypen (1)
Interaktives Editieren am Bildschirm ( in Arc Map)
SINUS-Transfer NRW Projekt 2 Klaus Gerber
Geometric Representation
3D Graphics APIs: OpenGL & Fixed Function Pipeline
Die Renderpipeline.
Multimedia und Virtual Reality Vorlesung am Martin Kurze Multimedia in 3D.
Einführung in die Programmierung mit Java
Visualisierung von Geodaten
Grundlagen der Geometrie
Datenaustausch und Interoperabilität
Datenaustausch und Interoperabilität
Lukas Kerecz - Edits1 Edits Lukas Kerecz. Lukas Kerecz - Edits2 Gliederung  Einführung  Edits – warum und wofür?  Edits – Definiton  einleitende Beispiele.
Tutorium Software-Engineering SS14 Florian Manghofer.
Einführung in OpenGL Seminarvortrag im Rahmen des Bachelorstudiengangs „Scientific Programming“ Tural Bilalov.
Pointer. * und &  Bei der Definition int var1; ○ // „normale“ Variable int *var2; ○ // Zeiger auf einen Integer int *var2 = NULL; ○ // … incl. Initialisierung.
Aufbau und Funktion von 3D- Grafikkarten von Christian Reis.
Raster Operationen.
Punkte im Raum
 Präsentation transkript:

Computergraphik mit OpenGL Einführung

Bilder Objekt existiert im Raum unabhängig vom Betrachter Objekte sind beschrieben durch die Position verschiedener geometrischer Primitive im Raum (Vektoren) Betrachter schafft das Bild dieser Objekte

Gruppen von Funktionen Primitive Funktionen Attributs-Funktionen Sichtfunktionen Transformations-Funktionen Eingabefunktionen Steuerungsfunktionen

Rechtwinklige Parallelprojektion Quader als Sichtkörper, beschrieben durch Koordinaten auf x, y und z Achse Projektionsebene muss auf z-Achse zwischen near und far liegen

Vektorbeschreibung glVertex* : * kann aus zwei oder drei Angaben bestehen, zuerst die Dimension (2, 3, 4), dann der Datentyp (i, f, d) und ein v, wenn die Variablen als Zeiger auf ein Feld spezifiziert sind, das die Werte enthält Beispiele: glVertex2i(x, y); definiert einen Punkt im zweidimensionalen Raum durch die Angabe von 2 Integer-Werten glVertex3f(x, y, z); definiert einen Punkt im dreidimensionalen Raum durch die Angabe von 3 Real-Werten

Graphische Primitive Syntax : glBegin(typ); glVertex*; glEnd(); Typ für Punkte: GL_POINTS Typen für Linien: GL_LINES, GL_LINE_STRIP, GL_LINE_LOOP Typen für Flächen: GL_TRIANGLES, GL_QUADS, GL_POLYGON

Modellierung Bei der Definition von Objekten muss Reihenfolge der Punkte immer in der gleichen Richtung angegeben sein – entgegen dem Uhrzeigersinn ist Standard Test, ob alle Definitionen richtig sind – Backface- Culling Verdeckung verdeckter Flächen mit glEnable(GL_DEPTH_TEST); glClear(GL_DEPTH_BUFFER_BIT);

Transformationen Verschiebung glTranslatef(x, y, z); alle nachfolgenden Objekte werden mit der angegebenen Verschiebung gezeichnet die Werte können positiv oder negativ sein, die Angabe von 0 bewirkt keine Verschiebung in diese Richtung

Transformationen Drehung glRotatef(winkel, x, y, z); alle nachfolgenden Objekte werden entsprechend gedreht gezeichnet als erstes wird der Winkel angegeben, dann jeweils eine 1, wenn um die jeweilige Achse gedreht werden soll und eine 0, wenn nicht