Ich arbeite im Moment an meinem eigenen kleinen Maker, falls jemand dies noch nicht mitbekommen hat und interessiert daran ist, kann sie / er sich hier erkunden: http://www.multimediaxis.de/threads/...rks-Game-Maker
aber das einmal außen vor. Im Moment bin ich dabei einen Animationseditor für diesen Maker zu erstellen. In diesem Animationseditor soll der Entwickler in der Lage sein eigene 2D-Animationen mit einem handlichen GUI zusammen zu klicken.
Nun stehe ich natürlich vor der sehr wichtigen Frage: Was soll dafür alles an Möglichkeiten vorhanden sein? Wie viel Funktionalität würde die Community gerne sehen?
Daher dieser öffentliche Thread; ich würde gerne eure Meinungen dazu hören, was für 2D-Animationen wichtig ist.
Zunächst aber meine eigene Idee soweit sie bisher fertig ist:
Eine 2D-Animation ist definiert als eine zeitliche Abfolge von Schritten.
Diese Schritte können in einer Liste nacheinander eingereiht werden.
Eine Animation kann aus beliebig vielen Einzelschritten bestehen.
Während das Spiel läuft kann man einen Sprite eine Animation abspielen lassen. In diesem Fall fängt er an die Schritte der Animation einen nach dem anderen durch zu führen.
Man kann auch Animationen für einen Sprite in eine Liste anreihen. Der Sprite spielt diese dann eine nach der anderen ab.
Außerdem kann man beim Abspielen einer Animation auswählen, ob immer von vorne begonnen werden soll, oder, falls zweimal die gleiche Animation abgespielt werden soll einfach fortgefahren von dem Schritt, an welchem der Sprite sich gerade befindet. Dies ist, zum Beispiel, für Laufanimationen nützlich.
Hier wäre eine Auflistung von Animations-Schritten, welche ich bisher geplant habe:
Farbe setzen: Der Sprite wird gefärbt, die Farbe wird via Rot, Grün, Blau, Alpha-Werte definiert.
Spiegeln: entweder horizontal, vertikal, in beide Richtungen, oder in keine.
Rotieren: Es kann die Rotation des Sprites in Grad (0° - 360°) angegeben werden.
Bildausschnitt definieren: Es wird der rechteckige Bereich vom Bild ausgewählt, welcher von dem Sprite angezeigt werden soll.
Ankerpunkt setzen: Es kann ein Ankerpunkt für den Bildausschnitt definiert werden. Das ist eine Verschiebung auf der X- und Y-Achse.
Warten: Es kann eine gewisse Zeit (in frames) lang gewartet werden. Während dieser Zeit verändert sich die Grafik des Sprites nicht.
Ein Beispiel für eine 2D-Animation Laufanimation könnte also sein:
Es wird also das erste Frame der Animation gezeigt; dann wird 3 Zeiteinheiten gewartet; dann wird das zweite Frame gezeigt; nocheinmal 3 Zeiteinheiten lang gewartet; im Anschluss wird wieder das erste Frame gezeigt; gewartet; danach ein drittes Frame angezeigt; und zu guter letzt nocheinmal gewartet falls die Animation in einer Schleife laufen sollte.
Der Entwickler könnte dann alle möglichen Animationen als solche Schritt-Folgen definieren können. Für jeden Sprite kann man diese Animationen dann abspielen lassen.
Hier meine Fragen dazu:
1) Ist dies zu kompliziert, oder kann man das gut nachvollziehen?
2) Glaubt ihr das System wäre so ausreichend, oder fehlt funktionalität?
3) Hat jemand eine bessere Idee, wie man einen einfachen aber mächtigen Animationseditor entwerfen kann?