Tutorial

Aus DGL Wiki
Version vom 24. Dezember 2005, 22:56 Uhr von Flo (Diskussion | Beiträge) (Grundlagen-Tutorials: + Renderpass von Phobeus)

Wechseln zu: Navigation, Suche

Achtung! Wichtiger Hinweis Nachfolgend finden Sie eine Übersicht über all die Tutorials, die bereits ins Wiki übertragen wurden. Bisher wurden allerdings nicht alle Tutorials ins Wiki übertragen. Bisher ausstehende Tutorials findet Ihr an dem gewohnten Ort: DelphiGL.com->Tutorials

Hinweise

Bitte tragt selbst keine eigenen Tutorials ohne Absprache mit Flash bzw. Phobeus hier ein. Tutorials werden prinzipiell vom DGL-Team gegengelesen, bevor Sie veröffentlich werden.

Wer mit dem Gedanken spielt, ein Tutorial für DGL zu schreiben, sollte sich bereits bei der Themenwahl mit dem DGL-Team absprechen. DGL ist sehr an neuen Tutorials interessiert. Nur sollte man beachten, dass nichts doppelt geschrieben wird, bzw. dass nicht 2 Mann zur selben Zeit das selbe Thema beackern.

Tutorials

Info DGL.png Alle Tutorials sind der Kategorie:Tutorial zugeordnet.
Schwierigkeitsgrad Bedeutung
Schwierigkeitsgrad 30x30.jpg
Jeder Schritt wird ausführlich erklärt. Absolut Einsteigertauglich.
Schwierigkeitsgrad2 30x30.jpg
Verständnis der Grundprinzipien wird vorraus gesetzt. Die Materie bleibt aber einfach.
Schwierigkeitsgrad3 30x30.jpg
Ihr wißt um was es geht. Es wird erwartet, dass ihr selbst das Thema weiterdenkt.
Schwierigkeitsgrad4 30x30.jpg
Das Tutorial bietet euch einen Einstieg. Es wird erwartet, dass ihr euch selbst noch eingehender mit den beschriebenen Techniken befasst. Für Fragen steht unser Forum zur Verfügung.
Schwierigkeitsgrad5 30x30.jpg
Um das Tutorial zu verstehen werden Kenntnisse auf dem entsprechenden Gebiet vorrausgesetzt, welche über Grundwissen hinausgehen. Es wird erwartet, dass ihr euch eingehender mit dem Thema auseinandersetzt und auch andere Quellen leßt/gelesen habt. Für Fragen steht unser Forum zur Verfügung.


Einsteiger-Tutorials

Info DGL.png Die Einsteiger-Tutorials wurden auf SDL umgestellt. Dadurch wurde das Laden von Texturen erleichtert, vor allem aber ermöglicht SDL plattformunabhängig zu programmieren. Ihr benötigt deshalb die SDL.pas. Diese Datei und alle anderen benötigten Dateien findet ihr im DGLSDK
Link Beschreibung Tutorial quickstart
Schwierigkeitsgrad 30x30.jpg
Tutorial Lektion1.gif
"Quickstart: OpenGL & Delphi"

Für alle, die einen schnellen Einstieg in die OpenGL Programmierung mit Delphi suchen, hat Flash hier einen Einstieg geschaffen. Neben dem erstellen eines eigenen OpenGL-Templates hat er für alle, die Großes mit OpenGL vorhaben, am Ende noch einige Hinweise bereitgestellt.

Tutorial lektion1
Schwierigkeitsgrad 30x30.jpg
Tutorial Lektion1.gif
"Nicht zu weit aus dem Fenster lehnen"

Dieses Tutorial von Magellan ist für alle Neueinsteiger gedacht. Hier werden Grundlagen von "Was ist OpenGL" bis zu "Wie initialisiere ich OpenGL?" besprochen.

Tutorial lektion2
Schwierigkeitsgrad 30x30.jpg
Tutorial Lektion2.jpg
"Entdeckung einer neuen Welt"

Unter dieser Überschrift empängt euch Phobeus zu eurem ersten OpenGL Tutorial welches sich mit der Anwendung der OpenGL-API befasst.

Tutorial lektion3
Schwierigkeitsgrad 30x30.jpg
Tutorial Lektion3.gif
"Eine Welt des Grauens?"

Hinter diesem Titel verbirgt sich ein Einsteigertutorial zum Thema Matrizen in OpenGL. Wiederum führt euch Phobeus durch den Stoff.

Tutorial lektion4
Schwierigkeitsgrad2 30x30.jpg
Tutorial Lektion4.png
"Texturen, Tapeten und Ihre Tücken"

Wie bekomme ich ein Bild auf meine Primitiven? Wer sich diese Frage bei den vorigen Tutorials gestellt hat, der bekommt hier nun von Phobeus die Antworten.

Tutorial lektion5
Schwierigkeitsgrad2 30x30.jpg
Tutorial Lektion5.jpg
"Artenvielfalten und Ihre Folgen"

In diesem Tutorial geht Phobeus auf weitere Zeichentechniken und Methoden zur Verbesserung der Performance unter OpenGL ein.

Tutorial lektion7
Schwierigkeitsgrad2 30x30.jpg
Tutorial Lektion7.png
"Verblendet!"

Wenn man halbdurchsichtige Fensterscheiben, Lightmaps oder etwas ähnliches in sein Projekt einbauen will, dann kommt man um Blending nicht herum. Wie man das ganze Nutzen kann ist in diesem Tutorial von Phobeus erklärt.

Tutorial lektion8
Schwierigkeitsgrad2 30x30.jpg
Tutorial Lektion8.gif
"Das Wesen von hell und dunkel - Licht"

Ohne Beleuchtung sieht selbst jede 3D-Umgebung platt aus. In diesem Tutorial wird primär der richtige Gebrauch des OpenGL-Lichtes beschrieben. Darüberhinaus wird noch die Berechnung von Normalen erklärt.

Tutorial 2D
Schwierigkeitsgrad2 30x30.jpg
Tutorial 2D.jpg
"2D mit OpenGL"

OpenGL ist zwar primär eine 3D-API, eignet sich aber, nicht zuletzt dank seiner leistungsstarken Hardwarebeschleunigung und der damit verbundenen Features, auch sehr gut für reine 2D-Anwendungen. Dieses Tutorial von Sascha Willems geht sehr ausführlich auf die Nutzung von OpenGL für 2D-Anwendungen ein.

Tutorial Matrix2
Schwierigkeitsgrad 30x30.jpg
Tutorial Matrix2.png
"Matrix2 - Matrizen und Matrixmanipulationen"

Das Thema Matrizen stellt OpenGL-Einsteiger regelmäßig vor "unlösbare" Aufgaben:
Wieso dreht sich der Würfel so komisch, und nicht um sich selbst?
Wieso verschiebt OpenGL die Kugel denn dahin, und nicht dorthin?
Dieses Tutorial von Flash befasst sich mit den 3 Matrixtypen, die es in OpenGL gibt und erklärt was die Befehle glScale, glRotate und glTranslate wirklich machen.

Tutorial SDL Einstieg
Schwierigkeitsgrad2 30x30.jpg
Tutorial Lektion1.gif
"SDL-Einsteiger-Tutorial"

Crossplattform-Programmierung ist das Zauberwort, welches in den letzten Jahren - dank verstärkter Präsenz von Linux - immer wieder in den Programmierforen des Internets auftaucht. Für Grafikprogrammier ist SDL hier das Mittel der Wahl. Bekannte Titel wie "Quake III" und "Civilisation - Call to Power" bauen bereits auf diese Bibiothek für ihre Linux-Ports. Phobeus zeigt euch in diesem ersten SDL-Tutorial was SDL ist und wie man es benutzt.



Grundlagen-Tutorials

Link Beschreibung
Tutorial Abseits eckiger Welten
Schwierigkeitsgrad2 30x30.jpg
Tutorial Abseits eckiger Welten.gif
"Abseits eckiger Welten"

3D-Welten bestehen seit eh und je aus Dreiecken, was sie oft recht eckig erscheinen lässt. In diesem Tutorial lernt ihr allerdings wie man mit Hilfe von Evaluatoren in OpenGL auch Rundungen erzeugen kann.

Tutorial Renderpass
Schwierigkeitsgrad2 30x30.jpg
Tutorial Renderpass.jpg
"Renderpass - Die Welt daneben"

OpenGL bietet nicht nur die Möglichkeit seine Szene direkt auf den Bildschirm zu rendern, sondern auch diese in eine Textur zu rendern um diese dann auf ein Objekt zu kleben. Dadurch ergeben sich diverse neue Möglichkeiten, wie z.B. Spiegel, Portale oder nachträgliche Manipulation der Textur. Wie ihr eure Szene in eine Textur bekommt, erfahrt ihr hier.

Tutorial Selection
Schwierigkeitsgrad2 30x30.jpg
Tutorial Selection.gif
"Objectselection"

Die Selektion von Objekten braucht man spätestens dann, wenn man ein komfortable Interaktion mit der Spielwelt erstellen will. Mit diesem Tutorial von DCW_MrT ist die Thematik kein Problem mehr.

Tutorial TexFilter
Schwierigkeitsgrad 30x30.jpg
Tutorial TexFilter.jpg
"Texturfilterung - Texturen-Feintuning"

Texturen sind seit langem ein wichtiger Bestandteil im Bereich der Echtzeitgrafik. OpenGL bietet auf diesem Gebiet auch diverse Möglichkeiten Texturen auch filtern zu lassen. Welche das sind und wie sie sich auswirken, könnt ihr in diesem Tutorial von Delphic nachlesen.

Tutorial Kamera1
Schwierigkeitsgrad2 30x30.jpg
Tutorial Kamera1.gif
"Dreht sich das Universum um uns? und andere philosophische Fragen"

In diesem Tutorial von Delphic geht es um die Kamera. Wie eine Kameraklasse gebaut sein könnte und was sie macht wird hier erklärt.

Effekte

Link Beschreibung
Tutorial Nebel
Schwierigkeitsgrad2 30x30.jpg
Tutorial Nebel.jpg
"DGL Fogging Tutorial".

Erstaunlich einfach lässt sich mit OpenGL Nebel darstellen. Wie einfach, zeigt euch Lithander in diesem Tutorial.

Tutorial Partikel1
Schwierigkeitsgrad2 30x30.jpg
Tutorial Partikel1.gif
"Partikel-Tutorial I".

Eine Partikel-Engine sollte in (fast) jeder Engine enthalten sein. Anhand dieses Tutorials von Lithander könnt ihr den Grundstein dazu legen.

Tutorial BumpMap
Schwierigkeitsgrad3 30x30.jpg
Tutorial BumpMap.png
"Bumpmapping - Plastisches 2D".

Bumpmapping ist eine immer stärker genutzte Technik, um polygonarme Oberflächen ohne Tesselation mit vorgegaukelten Details - abhängig vom Lichteinfall - zu versehen. In diesem Tutorial zeigt euch HomerS, wie man Bumpmapping über die NVIDIA-spezifischen Combiner realisiert.

Tutorial Bumpmaps mit Blender
Schwierigkeitsgrad 30x30.jpg
Tutorial BumbBlend Preview.png

Mit dem kostenlosen 3D-Program Blender können einfache Bumpmaps erstellt werden. Wie das geht, erfahrt ihr in diesem Tutorial von Flo.

Info DGL.png Das Programm "Blender" bekommt ihr kostenlos auf blender3d.org
Tutorial StencilSpiegel
Schwierigkeitsgrad3 30x30.jpg
Tutorial StencilSpiegel.jpg
"Spiegelungen mit dem Stencil-Buffer".

Eine Echtzeit-Spiegelung ist einer der schönsten Effekte einer 3D-Welt und trägt viel zum Realismus bei. Eine Möglichkeit Spiegelungen über den Stencilpuffer zu realisieren, wird in diesem Tutorial von Sascha Willems erklärt.

Tutorial StereoSehen
Schwierigkeitsgrad3 30x30.jpg
Tutorial StereoSehen.gif
Auch wenn moderne Grafikkarten durch eine immer besser werdende Darstellung dem Benutzer versuchen das Betreten einer virtuellen 3D-Welt vorzugaukeln, so schafft es doch auch das beste Doom3-Monster nur bis zur Glasröhre zu erschrecken, rutscht dann aber quietschend davon ab. Was also tun, wenn man einen Schritt weiter gehen und dem Anwender wirkliches 3D bieten möchte? Wer eine 3D-Brille hat, wird mit diesem Tutorial von Nico Mechaelis eine Möglichkeit finden, die dritte Dimension am Computer zur erschließen.



Extensions

Link Beschreibung
Tutorial Cubemap
Schwierigkeitsgrad3 30x30.jpg
Tutorial Cubemap mini.jpg
"GL_ARB_Texture_Cubemap".

In diesem Tutorial erklärt Sascha Willems die Grundfunktionen der GL_ARB_Texture_Cubemap-Extension und zeigt auch weiterführende Techniken auf.

Tutorial Vertexbufferobject
Schwierigkeitsgrad3 30x30.jpg
Tutorial Vertexbufferobject preview.jpg
"GL_ARB_Vertex_Buffer_Object".

Wie man mit dieser Extension Vertexdaten schnell im Grafikkarten- und Hauptspeicher ablegt und darauf zugreift, erklärt Sascha Willems in diesem Tutorial.

Tutorial NVOcclusionQuery
Schwierigkeitsgrad3 30x30.jpg
Tutorial NVO preview.jpg
"NV_Occlusion_Query".

Lard Middendorf geht in diesem Tutorial auf die Verwendung der NV_Occlusion_Query-Extension ein.



Shader

Link Beschreibung
Tutorial glsl
Schwierigkeitsgrad4 30x30.jpg
Tutorial glsl1.png
"Einführung in GLSL".

Nach langem Ringen und Handeln hat es das ARB letztendlich doch geschafft, eine einheitliche Shaderhochsprache für OpenGL zu veröffentlichen, nämlich glSlang. Mit glSlang können nun auch unter OpenGL Vertex- und Fragment-Shader in einer lesbaren, C-ähnlichen Hochsprache geschrieben werden, was deren Entwicklung stark vereinfacht. Diese Einführung von Sascha Willems ist weniger ein Tutorial, als ein kompletter Überblick über glSlang. Hier erfährt der Leser nicht nur etwas über die Benutzung von Shadern im Programm, sondern auch alles über die Sprachelemente, inklusive diverser Beispiele.

Tutorial glsl2
Schwierigkeitsgrad4 30x30.jpg
Tutorial na.jpg
"GLSL-Ergänzungen und Beispiele".

Dieses Tutorial von La_Boda ist eine direkte Fortsetzung des GLSL-Tutorials. Es behandelt verstärkt die Praxis und liefert anhand von einigen Beispielen eine bessere Sicht auf die bereits gelernte Theorie.



KI

Link Beschreibung
Tutorial pathfinding
Schwierigkeitsgrad2 30x30.jpg
Tutorial pathfinding.png
"Pathfinding 1".

In diesem Tutorial zeigt euch Flo wie man recht simpel eine Wegfindungsroutine implementiert. Besonders wenn man sowas ohne großen Lernaufwand in sein Spiel einbinden möchte, sollte man einen Blick riskieren.

Tutorial pathfinding2
Schwierigkeitsgrad3 30x30.jpg
Tutorial pathfinding2.png
"Pathfinding 2".

Gerade bei aktuelleren Programmen reicht es meist nicht aus, wenn man seine Einheiten nur in 8 Himmelsrichtungen bewegen kann. Frase stellt in diesem Tutorial vor, wie man eine Wegfindungsroutine implementieren kann, wie diese in einem heutigen RTS vorkommen kann.



Spieletutorials

Link Beschreibung
Tutorial Bomberman1
Schwierigkeitsgrad3 30x30.jpg
Tutorial Bomberman1.jpg
"Bomberman1 - Codebasis und Editor".

Im ersten Teil dieser kleinen Tutorialserie zum Thema Spieleprogrammierung kümmern wir uns neben der Erstellung unseres Basiscodes auch um einen fertigen Editor. Nach der Durcharbeitung dieses Tutorials von Sascha Willems sollte der Leser alle Grundprinzipien zur Programmierung eines Spiels verstanden haben.



Mathematisches

Link Beschreibung
Tutorial Lineare Algebra
Schwierigkeitsgrad2 30x30.jpg
Tutorial lineare Algebra Preview.jpg
"Vektorrechnung".

In vielen Tutorials tauchen eine Menge Begriffe aus der linearen Algebra und analytischen Geometrie auf. Wer bei Begriffen wie Vektoren, Skalar-Produkt, Vektorkreuzprodukt, etc. ein wenig Auffrischung und Implementationshinweise braucht, ist mit diesem Tutorial an der richtigen Stelle.

Tutorial Nachsitzen
Schwierigkeitsgrad 30x30.jpg
Tutorial Nachsitzen preview.png
"3d-Mathematik".

Wer die mathematischen Grundlagen wie Sinus, Cosinus und Matrizen aus der Schule schon wieder vergessen oder noch vor sich liegen hat, der kann mit Hilfe dieses Tutorials dieses Wissen erlernen bzw. auffrischen.

Tutorial Objekt gedreht und dennoch nach vorne bewegt
Schwierigkeitsgrad2 30x30.jpg
Tutorial Objekt gedreht und dennoch nach vorne bewegt preview.gif
"Objekt gedreht und dennoch nach vorne bewegt".

Wie der Titel schon sagt: Objekt drehen und trotzdem nach vorne bewegen.

Tutorial Objekt immer um eigene Achse drehen
Schwierigkeitsgrad2 30x30.jpg
Tutorial Objekt immer um die eigene Achse drehen preview.gif
"Objekt immer um eigene Achse drehen".


Skripte

Link Beschreibung
Tutorial Scripting mit JvInterpreterProgram
Schwierigkeitsgrad2 30x30.jpg
Tutorial JvInterpreter preview.png
"Scripting mit JvInterpreterProgram".

Skripting mithilfe der Jedi-Code-Library

Tutorial Scriptsprachen Teil 1
Schwierigkeitsgrad5 30x30.jpg
Tutorial Skriptsprachen1 preview.gif
"Scriptsprachen Teil 1 - Einführung".

Einführung in Scriptsprachen

Tutorial Scriptsprachen Teil 2
Schwierigkeitsgrad5 30x30.jpg
Tutorial Skriptsprachen2 preview.gif
"Scriptsprachen Teil 2 - Virtuelle Computer und Code Erzeugung".


Delphi allgemein

Link Beschreibung
Tutorial Multithreading
Schwierigkeitsgrad3 30x30.jpg
Tutorial Multithreading.gif
"Das Prinzip der Dualität".

Threads sind ein erweitertes Prinzip des bekannten Multitasking und werden innerhalb eines Programmes oft dazu genutzt, verschiedene Aufträge gleichzeitig abzuarbeiten. LossyEx erklärt euch hier deren Nutzung.

Tutorial Komponentenentwicklung
Schwierigkeitsgrad2 30x30.jpg
Tutorial Komponentenentwicklung.png
"Komponentenentwicklung"

In diesem Tutorial werdet ihr ein wenig tiefer in die Entwicklung von Komponenten unter Delphi eingeführt. Es wird Grundwissen auf diesem Gebiet vorausgesetzt.

Tutorial Software-Synthesizer
Schwierigkeitsgrad5 30x30.jpg
Noexist.jpg
"Software-Synthesizer"

Computerspiele bestehen nicht nur aus Grafik. Dieses Tutorial widmet sich einem ganz anderen Bereich der Spieleprogrammierung: Der Erzeugung von synthetischen Sounds und Musik.