Der zeitliche Rahmen meiner Ziele lässt sich nocht nicht festlegen, weil ich zu wenig Erfahrung habe. Die folgend als kurzfristig bezeichneten Ziele werden sich in der Diplomarbeit wiederfinden, wahrscheinlich auch ein paar mittelfristige. Die langfristigen Ziele werde ich vermutlich erst in den nächsten Jahren erreichen.
Autor: Alexander Kremser
Planänderungen
Wie sah der Plan ursprünglich aus?
Zu Beginn hatte ich vor, einen funktionalen Prototypen, von Grund auf selbst geschrieben, zu entwickeln. Als mir klar wurde, welche Hürden mir bevorstehen, entschied ich mich, mir von einer Spiel-Engine unter die Arme greifen zu lassen. Mir war es von vornherein wichtig, die Software ausprobieren zu können, um eindeutig zu erkennen, ob ich mich in die richtige Richtung bewege.
Godot – schnelleres Prototyping
Um mich schneller dem eigentlichen Kern meiner Master-Arbeit zuwenden zu können – dem Entwickeln und Erproben optimaler Nutzungsparadigmen –, schlage ich einen Werkzeug-Wechsel ein: von rohem JavaScript zur bequemen Spiel-Engine. Nachdem ich mir nun ein Basiswissen über Grafikprogrammierung und die zugrundeliegenden Konzepte angeeignet habe, wage ich den Sprung in eine höhere Abstraktionsebene. Doch worauf greife ich zurück?
Die Bézierkurve
Entwickelt wurde sie schon Anfang des 20. Jahrhunderts, genutzt erst Ende der Fünfziger – und zwar von Paul de Casteljau. Erst ein paar Jahre später trat Pierre Bézier ins Bild. Beide Herren nutzten die heute nach Pierre benannte Kurve im Kontext des Automobil-Designs: de Casteljau bei Citroën, Bézier bei Renault. In den folgenden Jahrzehnten mauserte sich die Bézierkurve zur Essenz moderner Vektorgrafik – doch wie funktioniert sie?
OpenGL – Positionierung am Canvas
Um grafische Elemente in Web/OpenGL auf der Leinwand positionieren zu können, bedarf es größeren Aufwands, als wir es von 3D- und Vektoreditoren gewohnt sind – und einen Trip in die Welt der Mathematik.
WebGL – Der Webbrowser als Leinwand
Wie schon im vorherigen Post erläutert, taste ich mich von unten an das Erforschen möglicher Interaktionsparadigmen eines Vektorgrafikeditors heran; sobald ich die nötigen technischen Grundlagen verinnerlicht habe, beginne ich mit dem Bau eines Prototypen. In diesem Beitrag schildere ich, was ich bisher über WebGL in Erfahrung gebracht habe.
Was macht Pixel bunt?
Um Interaktionsparadigmen testen zu können, brauche ich Prototypen – Prototypen, die zumindest die Grundfunktionen eines Vektorgrafikeditors (VGE) beherrschen müssen. Das Fundament aller VGE ist die Darstellung von Bézierkurven; doch welche Mechanismen sind für diesen Vorgang zuständig?
Plattformübergriff – Cross-Platform Interface Design
Generell gilt es, sich bei der Entwicklung & Gestaltung von Interaktionen möglichst an die systemweiten Standards zu halten; so nehmen User die Nutzung eher als intuitiv wahr, da sie mit der Oberfläche bis zu einem gewissen Grad bereits vertraut sind – besonders der Einstieg fällt leichter. Allerdings unterscheidet sich der Aufbau von GUIs zwischen den Plattformen in vielerlei Punkten: