Lazarus - OpenGL 3.3 Tutorial

Aus DGL Wiki
Wechseln zu: Navigation, Suche

Lazarus - OpenGL 3.3 Tutorial

Einrichten und Einstieg

Link Beschreibung
Lazarus fuer OpenGL einrichten
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Einrichten und Einstieg - Lazarus fuer OpenGL einrichten.png

"Lazarus mit OpenGL 3.3"

Was sind die Voraussetzungen. Und wie richte ich Lazarus ein, das dies mit OpenGL 3.3 funktioniert.


Context erzeugen
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Einrichten und Einstieg - Context erzeugen.png

"Eine Arbeitsfläche erzeugen"

Das OpenGL etwas auf den Bildschirm ausgeben kann, wird ein Context, Zeichenfläche gebraucht.

VAO - Daten laden
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Einrichten und Einstieg - VAO - Daten laden.png

"Erste Vectoren"

Das OpenGL weis, was ausgegeben werden muss, speichert man die Eckpunkte einer Mesh in eine Vektor-Array.

Erster Shader
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Einrichten und Einstieg - Erster Shader.png

"Zeichen Routine"

Bevor OpenGL etwas ausgeben kann, werden die Daten in einem Shader-Programm abgearbeitet. Somit stehen einem fast unendliche Effekte zu Verfügung.

Polygonmodus
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Einrichten und Einstieg - Polygonmodus.png

"Wie sollen die Polygone verarbeitet werden ?"

Die Dreiecke/Linien können als Eckpunkte, Drahtgitter oder Vollflächig ausgegeben werden.

Shader

Link Beschreibung
Einleitung und laden der Shader
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Einleitung und laden der Shader.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Einfachster Shader
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Einfachster Shader.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Uniform Variablen
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Uniform Variablen.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Erste Bewegung
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Erste Bewegung.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Mehrere Shader
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Mehrere Shader.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Schleifen
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Schleifen.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Geometrie Shader
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Geometrie Shader.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Punkte verschieden darstellen
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Punkte verschieden darstellen.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Shader Mandelbrot
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Shader - Shader Mandelbrot.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Vertex-Puffer

Link Beschreibung
Einfachster Vertex-Puffer
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Einfachster Vertex-Puffer.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Mehrere Vertex-Puffer, Mehrarbige Mesh
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Mehrere Vertex-Puffer, Mehrarbige Mesh.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Vertex-Puffer in 2D
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Vertex-Puffer in 2D.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Nur eine Array
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Nur eine Array.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Vertex-Daten zur Laufzeit modifizieren
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Vertex-Daten zur Laufzeit modifizieren.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Shapes (Dreiecke)
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Shapes (Dreiecke).png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Shapes (Linien)
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Shapes (Linien und Punkte).png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

DrawArrays
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - DrawArrays.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Indices
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Indices.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Index-Puffer
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Index-Puffer.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Index-Puffer dynamisch
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Index-Puffer dynamisch.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Vertex-Puffer auslesen
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Vertex-Puffer - Vertex-Puffer auslesen.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Matrix

Link Beschreibung
Was ist eine Matrix
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Matrix Rotieren
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Matrix - Matrix Rotieren.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Matrix Verschieben und Multiplizieren
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Matrix - Matrix Verschieben und Multiplizieren.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Kleines Planetarium
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Matrix - Kleines Planetarium.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

3D

Link Beschreibung
Erster-Wuerfel
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - 3D - Erster-Wuerfel.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Polygon - Seite (Backface Culling)
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - 3D - Polygon - Seite (Backface Culling).png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Tiefenbuffer
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - 3D - Tiefenbuffer.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Orthogonalprojektion
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - 3D - Orthogonalprojektion.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Fluchtpunktperspektive (Frustum)
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - 3D - Fluchtpunktperspektive (Frustum).png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Betrachtungs - Fenster (Viewport)
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - 3D - Betrachtungs - Fenster (Viewport).png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Beleuchtung

Link Beschreibung
Einfache Beleuchtung
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Beleuchtung - Einfache Beleuchtung.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Einfache Beleuchtung mit Clamp
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Beleuchtung - Directional Light.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Einfache Beleuchtung und Farben
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Beleuchtung - Einfache Beleuchtung und Farben.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Alpha Blending

Link Beschreibung
Einfachstes Alpha Blending
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Framepuffer

Link Beschreibung
In Textur rendern
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Framepuffer - In Textur rendern.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Framepuffer speichern
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Framepuffer - Framepuffer speichern.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Blur
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Sobel
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Texturen

Link Beschreibung
Erste Textur
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Texturen - Erste Textur.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Mehrere Texturen
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Texturen - Mehrere Texturen.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Texturen von BMP
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Texturen - Texturen von BMP.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Texturen mit oglTextur
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Texturen - Texturen mit oglTextur.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Texturen von XPM
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Texturen - Texturen von XPM.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Texturen und Matrixen
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Texturen - Texturen und Matrixen.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Multitexturing
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Texturen - Multitexturing.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

glTexParameterf
Schwierigkeitsgrad2 30x30.jpg
Lazarus - OpenGL 3.3 Tutorial - Texturen - Filter.png

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Versuche

Link Beschreibung
Erste Textur SubImage
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

MipMap
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

Texturen Perspektiven - Korrektur
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

MipMap Kacheln
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

MipMap
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

MipMap diskret
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar

MipMap diskret-2
Schwierigkeitsgrad2 30x30.jpg

Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar Kommentar