Gibt es schon Pläne, wann es das alte ersetzen wird?
Wie dem auch sei, ich habe in den letzten Monaten als Teil meiner immer näher kommenden
Matura eine Fachbereichsarbeit im Gegenstand Mathematik verfasst, und zwar zum Thema
»Mathematische Grundlagen der 3D-Grafik«.
Für jeden, der sich schon ein bisschen näher mit den mathematischen Zusammenhängen hinter
der 3D-Grafik beschäftigt hat, wird wohl kaum Neues dabei sein, zumal der Fokus der Arbeit
ausdrücklich auf den mathematischen Grundlagen liegt. All die interessanten Algorithmen, die
über die bloße Transformation eines Modells in das Bildschirmkoordinatensystem hinausgehen,
kommen also gar nicht zur Sprache.
Vielleicht kann aber trotzdem der ein oder andere etwas damit anfangen, zum Beispiel ist es
mir meinem Empfinden nach gelungen, die Formeln zur Quaternionenrotation recht anschaulich
zu erläutern und zu beweisen.
Die Arbeit ist hier als PDF abrufbar, über Hinweise auf Fehler, Ungenauigkeiten und
Verbesserungsvorschläge würde ich mich freuen.
Beim Erstellen des Beispielprogramms (ein trivialer Software Rasterizer) habe ich übrigens
mehr Zeit mit dem Umgehen von Compiler-Bugs verbracht als mit dem eigentlichen Schreiben
von Code. Hoch lebe die Toolchain von D! :roll:
Ein Auszug aus dem Inhaltsverzeichnis:
Vorwort
- Einleitung
- Mathematische Grundlagen
- Vektoren
- Matrizen
- Addition
- Multiplikation
- Transformation von Vektoren
- Transposition
- Determinante
- Inverse Matrix
- Quaternionen
- Grundlagen der 3D-Grafik
- Modellierung
- Geometrie
- Oberflächeneigenschaften
- Texturen
- Rendering
- Koordinatentransformationen
- Rasterung
- Umsetzung in Hardware
- Modellierung
- Objekt-Transformationen
- Skalierung
- Translation
- Rotation
- Rotation um die Koordinatenachsen
- Eulersche Winkel
- Rotationsmatrix aus transformierten Basisvektoren
- Darstellung als Quaternion
- Betrachtungstransformationen
- View Matrix
- Projection Matrix
- Ausblick
- Beispielprogramm