Erleichternde Funktionen

11

Ich begann mich mit Beschleunigungsfunktionen (Flash AS3) zu beschäftigen und versuchte, die Website von TweenLite und Robert Penner zu verstehen: http://www.robertpenner.com/easing/

Die Frage, die ich habe, ist, auf welcher mathematischen Grundlage diese Funktionen ausgeführt werden. Ich habe gesehen, dass andere Websites die Funktionen geändert haben, um eine benutzerdefinierte Beschleunigungsfunktion zu erstellen.

Tetrad
quelle
1
Ich denke, es ist ziemlich gut und ausführlich in dem PDF erklärt, das auf Robert Penners Seite verlinkt ist
bummzack

Antworten:

6

Das Tweening im allgemeinen Fall ist nur eine parametrische Bewegung (insbesondere das Definieren einer Funktion f (x), wobei x für Position / Drehung / Skalierung / was auch immer 0..1 sein kann) mit einem Modifikator für den Parameterwert, den Sie übergeben. Der Modifikator hat auch den Bereich 0..1.

Wenn Sie den Algorithmus in einem Diagramm darstellen, erhalten Sie etwas, das bei 0 beginnt und bei 1 endet, und die Steigung der Kurve definiert die Geschwindigkeit zu diesem Zeitpunkt.

Wenn Sie die Mathematik für die Beschleunigungsfunktionen selbst benötigen, lesen Sie dies: http://iphonedevelopment.blogspot.com/2010/12/more-animation-curves-than-you-can.html

Tetrad
quelle
4

Ich habe eine Einführung in die Interpolation geschrieben, die von Nutzen sein kann - http://iki.fi/sol/interpolation/

Eine weitere großartige Ressource ist dieses interaktive Tool: http://www.gizma.com/easing/

Jari Komppa
quelle
Dieser erste Link ist sehr informativ. Guter Artikel.
Bummzack
@JariKomppa Ich muss fragen, woher kommt das (3-2 (x))? Und warum hat x Klammern? Ergibt es nicht immer 3- (2 * x)?
Sidar
@Sidar Ich kann mich nicht ohne weiteres daran erinnern, woher die Formel stammt, aber im Grunde ist es ein Spline für Sonderfälle (was zu einer einfachen Formel führt). Das (x) ist auf die Makroform zurückzuführen - 'x' kann alles sein, zum Beispiel '3 + 7', was zu (3-2 * (3 + 7)) und nicht zu (3-2 * 3 +) führen würde 7).
Jari Komppa