Tutorial: Frame-by-Frame Ästhetik in After Effects

After Effects ist ein großartiges Programm, wenn es darum geht, 2D Animationen zu erstellen. Will man aber etwas kreieren, dass der guten alten Schule der traditionellen, handgezeichneten Trickfilme ähnelt, stößt man schnell an seine Grenzen. Mit zwei kleinen Tricks ist es jedoch möglich, diese Zeichentrick-Ästhetik nachzuahmen. Und dafür muss man nicht einmal zeichnen können.



Vorher: Eine loopende Animation ohne weitere Effekte. Eh ganz süß.


Nachher: Viel besser! Cartoon-Ästhetik vom Feinsten.

Warnung: Um diesen Effekt zu erklären, werde ich ein bisschen ausholen. Wer darauf keine Lust hat, oder wer einfach nur selbst experimentieren will, kann sich hier ein kleines Beispielprojekt herunterladen. Viel Spaß beim Austoben.

Okay, jetzt haben wir alle mit kurzer Aufmerksamkeitsspanne verloren. Für diejenigen, die noch nicht davon gelaufen sind: Hallo! Um eine handgezeichnete Trickfilm-Ästhetik zu kreieren, sollte man auf zwei Dinge achten: Die Framerate und - weil mir dafür kein besseres Wort einfällt - die Form.

Teil 1: Die Framerate

Ohne zu weit ins Detail zu gehen, kann man sagen, dass in der heutigen Filmindustrie 24 Bilder pro Sekunde (kurz fps) ein gängiger Standard sind. Große Animationsfilmproduktionen von Disney und ähnlichen Filmschmieden arbeiten in der Regel auch mit dieser Framerate. Solche Produktionen kosten - wenn man bedenkt, dass alle Bilder per Hand gezeichnet werden müssen - sehr viel Zeit und dadurch auch sehr viel Geld. Nicht umsonst wurde der Job des "Inbetweeners" erfunden, damit den Hauptanimatoren nicht die Arme abfielen.

Kleinere Trickfilmproduktionen wie Zeichentrickserien à la Teenage Mutant Hero Turtles hatten nicht so viel Budget und mussten deshalb schneller bzw. günstiger produziert werden. Wie kann man am leichtesten Kosten sparen? Man produziert einfach nicht so viele Bilder. Deshalb arbeitete man bei klassischen Samstag-Morgen-Cartoons damals "on Twos" oder sogar "on Threes". Sprich: von 24 Bildern pro Sekunde wurde nur jeder 2., 3. oder sogar 4. Frame gezeichnet. Dadurch wurde zwar die Framerate stark reduziert, die Bewegungen waren aber immer noch gut zu erkennen.



Ungefähr eine Sekunde aus dem Anime One Punch Man. So viele Frames!


Ebenfalls ca. eine Sekunde aus Dragon Ball Super. Es... funktioniert.

Wie man sieht, nimmt man diesen Unterschied deutlich wahr, weswegen wir das für unseren Effekt auch übernehmen wollen. Wie können wir also die Framerate in After Effects reduzieren? 

Eine Möglichkeit ist es, einfach die Bildrate der Komposition direkt einzustellen und damit zu arbeiten. Da ich aber ein Fan von Flexibilität bin (und weil sich das Arbeiten mit 25 Frames pro Sekunde in mein Hirn eingebrannt hat) löse ich persönlich so etwas lieber mit Effekten. Im Speziellen dem Effekt Posterize Time. Mit diesem Effekt kann man definieren, wie oft pro Sekunde der Inhalt eines Layers in After Effects aktualisiert wird. Wenn zum Beispiel die ursprüngliche Framerate eines Layers 24 fps beträgt, und man darauf den Posterize Time Effekt mit 6 fps anwendet, wird nur jedes 4. Bild des Layers dargestellt.

Durch diesen Effekt haben wir die Option zu experimentieren und herauszufinden, welche Bildrate am besten zu unserer Animation passt. Im Falle der oben dargestellten Schlafmaus haben wir die originale Framerate von 25 fps auf die Hälfte (12,5 fps) reduziert. Ich persönlich lege mir diesen Effekt gerne auf eine separate Einstellungsebene, damit alle Layer darunter gleichermaßen davon beeinflusst werden.

Bei der Reduktion der Framerate sollte man immer darauf achten, ob die wichtigsten Details der ursprünglichen Animation vorhanden bleiben. Schnelle Bewegungen (zum Beispiel das Blinzeln der Schlafmaus) können zwischen zwei Frames verloren gehen. Wenn alles passt, kann man sich um den nächsten Teil kümmern:

Teil 2: Die Form

Animatoren sind keine Maschinen. Egal wie gut sie illustrieren, sie werden nie das selbe Bild zweimal kreieren können. Praktischerweise lassen sich unsere Augen - genauer gesagt unser Gehirn - leicht von ähnlich aussehenden Formen täuschen. Besonders in der schnellen Bildabfolge einer Animation schaffen wir Verbindungen und ziehen unbewusst den Schluss, dass ein Objekt auf einem Frame sich auch auf dem nächsten Frame befindet.

In After Effects muss man sich darüber nie Gedanken machen. Die animierten Elemente werden zwar geschoben, gedreht, gezerrt und auf viele andere Arten manipuliert, besitzen aber in jedem Frame genau die selbe Ausgangsform als Grundlage. Das Gehirn nimmt so etwas unterbewusst wahr, wodurch solche Animation nicht die gewünschte Ästhetik einer handgezeichneten Animation erreichen. Deshalb müssen wir dafür sorgen, dass sich die Form der Animation nicht mehr so perfekt anfühlt.



Die Ausgangssituation: Ein viel zu perfekt hüpfender Kreis


Das gewünschte Ergebnis: Organische, ungenaue Formen

Die Lösung: Wir verzerren die gesamte Animation. Das geht am besten mit dem Effekt Turbulent Displace. Dieser Effekt tut genau das, was er verspricht: er verzerrt das Bild auf turbulente Art und Weise. Wenn man ihn dezent einsetzt, erreicht man genau die Verformung, die wir benötigen. Man muss dabei ein bisschen experimentieren, bis man das gewünschte Ergebnis erreicht. Die Werte für die oben dargestellte Schlafmaus sind: 

Displacement: Turbulent
Amount: 7 
Size: 15
Complexity: 5

Die Verzerrung sieht jetzt schon ganz gut aus, aber sie sieht jetzt noch in jedem Frame exakt gleich aus. Um zu bewirken, dass jedes Bild wie von Hand gezeichnet aussieht, muss sich auch die Verzerrung wesentlich verändern. Dafür muss man den Evolution Parameter des Effekts animieren. Das macht man entweder per Hand, oder - wenn man so richtig angeben will - mit Expressions! Dafür klickt man mit gedrückter Alt-Taste auf die Stoppuhr des Effekts und kopiert folgenden Code in das Textfeld:

time*3000 % 10000;

Wir multiplizieren den aktuellen Zeitpunkt (time) mit einem sehr hohen Wert. Das sorgt dafür, dass sich die Verzerrung jeden Frame um einen wesentlichen Wert ändert. Da wir aber irgendwann den oberen Schwellenwert des Evolution-Parameters erreichen würden, sorgt % 10000 dafür, dass nie ein höherer Wert als 10000 erreicht wird. Stattdessen fängt die Expression wieder bei 0 zu zählen an.

Als letztes müssen wir dafür sorgen, dass dieser Effekt nicht jeden Frame aktualisiert wird. In seinem jetzigen Zustand zittert die Animation stark und sieht sehr unruhig aus, nicht unbedingt das gewünschte Ergebnis. Um das zu verhindern, gibt es wieder mehrere Möglichkeiten. Eine Option wäre es, den Effekt oberhalb des Posterize Time Effekts anzuwenden, wodurch er in der selben Bildrate wie die Animation aktualisiert wird. Das kann je nach Animation unterschiedlich gut funktionieren. Will man mehr Flexibilität, kann man stattdessen die Framerate der Verzerrung selbst unabhängig anpassen. Dafür muss man nur die vorhandene Expression um eine Zeile erweitern:

posterizeTime(3);
time*3000 % 10000;

Durch die neue Funktion posterizeTime() wird die Evolution des Effekts nur drei mal pro Sekunde aktualisiert. Diese Framerate hat sehr gut bei unserer Schlafmaus funktioniert, muss aber nicht zwangsmäßig verwendet werden. Wie immer gilt: Experimentieren!

Fazit

Man muss nicht alles Frame-für-Frame zeichnen, um einen handgezeichneten Effekt zu erzielen. Zwei kleine Effekte und ein paar (optionale!) Expressions führen zu einem Ergebnis, das sich sehen lassen kann.