Speichern und Wiederverwenden von Expressions

Wenn Sie eine Expression geschrieben haben und zur späteren Verwendung speichern möchten, können Sie sie entweder kopieren und in einer Textverarbeitungsanwendung einfügen oder als Animationsvorgabe oder Vorlagenprojekt speichern. Da Expressions jedoch in Bezug auf andere Ebenen in einem Projekt geschrieben und dabei bestimmte Ebenennamen verwendet werden, müssen Sie die Expression beim Übertragen in ein anderes Projekt häufig entsprechend anpassen.

Mithilfe der normalen JavaScript-Funktionssyntax können Sie in Expressions auch eigene Funktionen definieren. In diesem Beispiel wird in der letzten Zeile eine Funktion verwendet, mit der der Durchschnitt zweier Werte berechnet wird:

  function average(a, b) 
  { 
    return (a + b) / 2; 
  } 
  average(position, thisComp.layer(1).position); 
Hinweis: Sie müssen jede Funktion vollständig in allen Expressions definieren, in denen sie verwendet wird. Es gibt kein globales Funktionsverzeichnis, dem Sie Funktionen hinzufügen könnten.

Wenn Sie eine Expression zur Verwendung in einem anderen Projekt speichern möchten, sollten Sie der Expression Kommentare hinzufügen. (Siehe Hinzufügen von Kommentaren zu einer Expression.) Außerdem sollten Sie Variablen verwenden, damit Sie einen Wert nur an einer Stelle und nicht an mehreren Stellen ändern müssen.

Diese Expression hat z. B. einen mehrzeiligen Kommentar am Anfang, in dem erklärt wird, welche Aufgaben die Expression durchführt. Ein kurzer Kommentar nach der Deklaration und Initialisierung einer Variablen erklärt, wofür die Variable verwendet wird:

  /*  This expression on a Source Text property reports the name 
      of a layer and the value of its Opacity property. */  
    
  var myLayerIndex = 1; // layer to inspect, initialized to 1, for top layer  
    
  thisComp.layer(myLayerIndex).name + ": \rOpacity = " +   thisComp.layer(myLayerIndex).opacity.value

Sie können eine Animationsvorgabe, die eine Expression enthält, speichern und in anderen Projekten wiederverwenden, vorausgesetzt, die Expression verweist nicht auf Eigenschaften, die in den anderen Projekten nicht existieren. Wenn Sie eine Vorgabe speichern, in der eine Eigenschaft nur eine Expression ohne Keyframe hat, wird nur die Expression gespeichert. Besitzt die Eigenschaft einen oder mehrere Keyframes, werden in der Vorgabe sowohl die Expression als auch alle Keyframe-Werte gespeichert.

Sie können eine Expression aus einer Ebeneneigenschaft kopieren, entweder mit den Keyframes der Eigenschaft oder ohne die Keyframes.

  • Wenn Sie eine Expression und Keyframes von einer Eigenschaft in andere kopieren möchten, wählen Sie im Zeitleistenfenster die Eigenschaft „Quellebene“ aus, und kopieren Sie die Ebeneneigenschaft in die Eigenschaften der Zielebene.
  • Wenn Sie eine Expression ohne Keyframes von einer Eigenschaft in andere kopieren möchten, wählen Sie die Quelleigenschaft aus, dann wählen Sie „Bearbeiten“ > „Nur Expression kopieren“, anschließend die Zieleigenschaften, und schließlich fügen Sie die Eigenschaft ein.
    Das Kopieren einer Expression ohne Keyframes empfiehlt sich besonders, wenn Sie mehrere Expressions gleichzeitig kopieren und in eine oder mehrere neue Ebenen einfügen möchten oder wenn Sie eine Expression kopieren und in mehr als eine Ebene einfügen möchten.
Hinweis: Wie beim Einfügen von Keyframes und anderen Elementen können Sie das Element häufig in die Zielebene einfügen und sich darauf verlassen, dass After Effects ermittelt, welche Eigenschaft Ziel des Einfügevorgangs sein soll. Das funktioniert z. B. beim Kopieren von Positionseigenschaften aus einer Ebene in eine andere. Wenn Sie jedoch eine Expression aus einer Positionseigenschaft in eine Eigenschaft „Skalierung“ einfügen, müssen Sie die Zieleigenschaft selbst auswählen.