Neue Webanimations-Engine in Blink unterstützt CSS-Animationen und -Übergänge

Alex Danilo

Nutzer erwarten auf modernen Benutzeroberflächen für verschiedene Geräte flüssige Animationen mit 60 fps. Mit den aktuellen Animationsprimitiven im Web zu erreichen, kann sich als schwierig erweisen. Glücklicherweise arbeiten wir an einer neuen Blink-Animationsimplementierung, die gerade in Chrome Canary verfügbar ist.

Das Tolle daran ist, dass es die internen Strukturen von Blink vereinfacht und den Grundstein für die Aufnahme neuer API-Funktionen aus der Spezifikation für Web Animationen 1.0 legt.

Bisher waren CSS-Animationen und CSS-Übergänge separate Implementierungen, die unabhängig voneinander geschrieben wurden und nicht unbedingt gut zusammen funktionierten. In den letzten Jahren haben Browser-Implementierer gemeinsam an einem Animationsmodell der nächsten Generation gearbeitet, das u. a. Synchronisierung, Verkettung von Animationen zur Abfolge, Suche zu beliebigen Zeitpunkten in der Animation, u. a. das Ändern der Geschwindigkeit und das Zurückspulen von Animationen ermöglicht.] Dies führte zur Gründung der W3C-Spezifikation Web Animations 1.0.

Der erste Schritt des Blink-Teams bei der Veröffentlichung von Web Animations besteht darin, die bestehende C++-Implementierung von Blink CSS Animations/Transitions durch die Web Animations-Engine zu ersetzen. Nachdem wir diesen Meilenstein erreicht haben, möchten wir, dass so viele Entwickler wie möglich überprüfen, ob alles nicht funktioniert, und, noch wichtiger, den Implementierungsaufwand im Auge behalten und uns Feedback dazu geben, was gut oder schlecht ist oder was geändert werden sollte.

Als Nächstes geht es um die Implementierung einer API, mit der Sie JavaScript-Animationen erstellen, ändern und abfragen können. Die API ist so konzipiert, dass Animationen effizient ausgeführt werden können (mithilfe von deklarativer Semantik, damit JavaScript die Animationen erstellt, die Steuerung jedoch vom Browser übernimmt), während die vollständige Animationssteuerung für den JavaScript-Entwickler verfügbar ist.

Wir freuen uns über aktives Feedback zur vorgeschlagenen API, um sicherzustellen, dass wir keine Funktionen verpasst haben, die für eine leistungsstarke Animationssteuerung erforderlich sind. Wie bei jeder neuen Funktion ändert sich auch die Spezifikation weiter. Jetzt ist also der richtige Zeitpunkt, Ihrer Meinung nach Gehör zu verschaffen. Abonnieren Sie dazu am besten die Mailingliste public-fx@w3.org und schreiben Sie Beiträge dazu (und fügen Sie [Web Animations] in die Betreffzeile ein, damit Sie wahrgenommen werden).

Testen Sie die neue Engine, die bereits für CSS-Animationen und -Übergänge verwendet wird, und posten Sie eventuelle Unstimmigkeiten im Chromium-Tracker für Programmfehler, damit wir sie kennen.

Wir freuen uns darauf, die Animationsfunktionen der nächsten Generation in Blink zu integrieren und freuen uns auf die Zusammenarbeit mit anderen Browserentwicklern wie WebKit und Mozilla, die sich ebenfalls zur Implementierung des neuen Modells verpflichtet haben.