WebGL anhand von Beispielen

WebGL anhand von Beispielen ist eine Serie von interaktiven Beispielen mit kurzen Erklärungen, die WebGL-Konzepte und -Fähigkeiten präsentieren.

Die Beispiele sind nach Thema und Schwierigkeitsgrad geordnet, wobei der WebGL-Rendering-Kontext, Shader-Programmierung, Texturen, Geometrie, Benutzerinteraktion und mehr abgedeckt werden.

Beispiele nach Thema

Die Beispiele sind mit steigender Schwierigkeitsstufe geordnet. Anstatt sie jedoch nur in einer langen Liste zu präsentieren, sind sie zusätzlich in Themen unterteilt. Manchmal kehren wir zu einem Thema mehrfach zurück, z.B. wenn wir es zunächst auf einer grundlegenden Ebene und später auf mittlerem und fortgeschrittenem Niveau diskutieren müssen.

Anstatt gleich im ersten Programm Shader, Geometrie und die Arbeit mit GPU-Speicher zu jonglieren, werden hier WebGL in einer inkrementellen Weise untersucht. Wir glauben, dass dies zu einem effektiveren Lernerlebnis führt und letztendlich zu einem tieferen Verständnis der zugrunde liegenden Konzepte.

Erklärungen zu den Beispielen finden sich sowohl im Haupttext als auch in Kommentaren innerhalb des Codes. Sie sollten alle Kommentare lesen, da fortgeschrittenere Beispiele möglicherweise keine Kommentare zu Teilen des Codes wiederholen, die bereits erklärt wurden.

Den Rendering-Kontext kennenlernen

WebGL erkennen

Dieses Beispiel demonstriert, wie man einen WebGL-Rendering-Kontext erkennt und das Ergebnis dem Benutzer mitteilt.

Mit Farben löschen

Wie man den Rendering-Kontext mit einer Volltonfarbe löscht.

Durch Klicken löschen

Wie man Benutzerinteraktion mit Grafikoperationen kombiniert. Löschen des Rendering-Kontexts mit einer zufälligen Farbe, wenn der Benutzer klickt.

Einfache Farbanimation

Eine sehr einfache Farbanimation, die durch Löschen des WebGL-Zeichenpuffers mit einer anderen zufälligen Farbe jede Sekunde durchgeführt wird.

Farbmaskierung

Modifizieren zufälliger Farben durch Anwendung von Farbmaskierung und damit Begrenzung des Bereichs der angezeigten Farben auf spezifische Schattierungen.

Grundlegendes Scheren

Wie man mit Scheroperationen Rechtecke und Quadrate zeichnet.

Leinwandgröße und WebGL

Dieses Beispiel untersucht die Wirkung der Einstellung (oder Nicht-Einstellung) der Leinwandgröße auf ihre Elementgröße in CSS-Pixeln, wie sie im Browserfenster angezeigt wird.

Vorlage 1

Das Beispiel beschreibt wiederkehrende Codefragmente, die ab jetzt ausgeblendet werden, sowie die Definition einer JavaScript-Dienstprogrammfunktion, um die WebGL-Initialisierung zu erleichtern.

Scheranimation

Ein wenig Spaß mit Animationen, Scheren und Löschoperationen.

Regnende Rechtecke

Ein Spiel, das Löschen mit Volltonfarben, Scheren, Animation und Benutzerinteraktion demonstriert.

Grundlagen der Shader-Programmierung

Hallo GLSL

Ein sehr einfaches Shader-Programm, das ein Quadrat in einer Volltonfarbe zeichnet.

Hallo Vertex-Attribute

Kombination von Shader-Programmierung und Benutzerinteraktion durch Vertex-Attribute.

Texturen aus Code

Eine Demonstration der prozeduralen Texturierung mit Fragment-Shadern.

Verschiedene fortgeschrittene Beispiele

Videotexturen

Dieses Beispiel zeigt, wie man Videodateien als Texturen verwendet.