Lösung zur Ü2: Learning WebGL – Tesselation

Erläuterungen zur Übung
Verwendete Ressourcen und Quellcode

Controls:

Erläuterungen zur Übung

In dieser Übung wurde eine Kugeloberfläche durch rekursive Dreieckstessellation konstruiert.
Ausgehend von einem Tetraeder (vierseitiger Körper, dessen Seitenflächen jeweils kongruente gleichseitige Dreiecke sind), werden dessen Dreiecke in jedem Rekursionschritt in vier weitere, gleichgroße Dreicke zerlegt, indem jeweils die Seitenhalbierenden des entsprechenden Dreickes verbunden werden (siehe Bild 1).

Tessellation eines Dreickes über dessen Seitenhalbierenden Bild 1: Tessellation eines Dreickes über dessen Seitenhalbierenden

Je höher die gewählte Rekursiontiefe ist, desto mehr nähert sich die entstehende Geometrie einer Kugeloberfläche an (siehe Bild 2). Zu beachten ist das exponentielle Wachstum an Dreiecken in der Größenordnung von 4Rekursionstiefe+1.

Tessellation einer Kugeloberfläche mit Dreiecken Bild 2: Tessellation einer Kugeloberfläche mit Dreiecken

Verwendete Technologien: webGL in einer HTML5 Canvas eingebettet und Javascript.

Falls der Browser, mit dem diese Seite (die Canvas) betrachtet wird, kein webGL unterstützt, zeigen die folgenden Bilder jeweils nocheinmal die Ergebnisse mit unterschiedlichen Rekursionstiefen.

Rekursionstiefe von 1
Rekursionstiefe von 1
Rekursionstiefe von 2
Rekursionstiefe von 2
Rekursionstiefe von 3Rekursionstiefe von 3 Rekursionstiefe von 4Rekursionstiefe von 4
Rekursionstiefe von 5Rekursionstiefe von 5

Verwendete Ressourcen und Quellcode

Bibliotheken: webgl-utils, glMatrix-0.9.5.min
Verwendete Resourcen: Tessellation einer Kugel von Stephan Brumme, Spheres Through Triangle Tessellation, WebGL Lesson 4 – some real 3D objects
Quellcode: ue2.rar