Erstellung von Tutorials für 3D Programmierung
Erstellung von Tutorials für 3D Programmierung
Gefördert durch den e-Learning Projektwettbewerb der Universität Kassel. Weitere Informationen zum Projektwettbewerb finden Sie auf den Seiten der Multimedia Kommision.
Das ProblemIm Rahmen der Vorlesungen Computergrafik I und II werden Kenntnisse aus den Bereichen Grafikalgorithmen und der Entwicklung von grafischen Simulationen mittels OpenGL vermittelt. Dabei sind Studierende mit der Vielzahl an OpenGL Befehlen und den verwendeten, teilweise sehr abstrakten Datentypen zunächst überfordert. Die Auswirkung mancher Parameter lassen sich sehr schwer theoretisch erklären, und können nur durch ausprobieren erfasst werden. Hierbei scheidet das herkömmlichen Testen selbsterstellter Programme aus, weil der Zeitunterschied zwischen "Ursache" (d.h. den Änderung im Programmcode) und "Wirkung" durch die ständig neue Erzeugung der Programme zu groß ist. Die Lösung: Bestimmte Teilaspekte von OpenGL können zunächst in einer grafischen Simulation interaktiv ausprobiert werden. Dabei haben die Studierenden sowohl den verantwortlichen Programmausschnitt vor Augen, als auch das unmittelbare Ergebnis der Veränderungen:
Realisierung der Lernmodule
Die Lernmodule setzen auf den Modulen von Nate Robins auf, die frei im Internet verfügbar sind, und wurden von Studierenden des Fachbereichs Elektrotechnik/Informatik realisiert. Mit den neuen Modulen werden Themenbereiche abgedeckt, die durch die vorhandenen Module nicht erfasst wurden:
· 2 dimensionale Transformationen mit Anzeige der Transformationsmatrix
· Clipping
· 3 dimensionale OpenGL Primitive
· OpenGL Blending-Effekte
· Scene-Graphen (am Beispiel von SGI-Performer)
2D Transformation
Mit Hilfe dieses Tutorials kann ein Anwender die Funktionsweise der grundlegenden Transformationen Translation, Rotation und Skalierung, sowie deren Auswirkungen auf die Transformationsmatrix interaktiv nachvollziehen.
Clipping
Dieses interaktive Tutorial visualisiert die Funktionsweise des Cohen-Sutherland Clipping Algorithmus. Mit 'clipping' ist das 'abschneiden' von grafischen Elementen gemeint, die sich z.B. außerhalb des aktuellen Blickfeldes des Betrachters befinden. Der Anwender kann Linien definieren und die Arbeitsweise des Algorithmus verfolgen.