Also machen wir eine 2D-Animation. Wir haben Charakter-Assets in PSD.
Wir haben eine „Charakter“-Zusammenstellung, die Folgendes enthält: „Augen“-Zusammenstellung, „Mund“-Zusammenstellung und „Körper“-Zusammenstellung. "Body" hat den 2-Sekunden-Gehzyklus des Charakters. Was in "Character" einer Schleife zeitlich neu zugeordnet wird. Aber wenn der Charakter geht, bewegt sich sein Körper in einer wackeligen Auf- und Abwärtsbewegung. Das Problem beginnt dort: Wir müssen „Augen“ und „Mund“ mit der Auf- und Abbewegung des Körpers synchronisieren. Es ist keine Option, die Position dieser Ebenen der Position des Body-Assets zuzuordnen, da das Body-Asset nur 2 Sekunden Animation hat. Danach hören "Mund" und "Augen" einfach auf, wo sie waren.
Ich denke, es muss eine Möglichkeit geben, dies mit Ausdrücken zu tun. Aber da wir kein Code-versiertes Studio sind, können wir uns nicht hinsetzen und einen schreiben.
Wie können wir ein solches Ziel erreichen?
Danke für die Hilfe.
Bearbeiten: Sie können unsere Komposition hier herunterladen: http://www.mediafire.com/download/v255kgid7ej56m0/walk.zip
Wenn Sie bestimmte Eigenschaften über mehrere Kompositionen verknüpfen möchten, können Sie dies nur mit Ausdrücken tun. Sie sind aber wirklich nicht schwer und es geht um 1-2 Linien.
Um beispielsweise die Position einer Ebene in einer anderen Komposition zu ermitteln, können Sie Folgendes tun:
comp("Comp Name").layer("Layer Name").transform.position
Klicken Sie einfach auf die Positionsstoppuhr der Ebene, auf die Sie diese Position anwenden möchten, und geben Sie diesen Befehl ein. Um es zu brechen. Wählen Sie zuerst die gewünschte Komposition nach Namen und dann die gewünschte Ebene in dieser Komposition aus:
comp("Comp Name").layer("Layer Name")
Dieser Teil besagt, dass Sie einen Wert aus dem transform
Menü wünschen und der Name des Werts lautet position
. Die Position könnte auch nur eine Drehung oder eine andere Eigenschaft sein:
.transform.position
Beachten Sie, dass Sie oft mehrere Werte gleichzeitig erhalten. Position kann beispielsweise 2 oder 3 Werte haben, je nachdem, ob die Ebene 2D oder 3D ist. Diese mehreren Werte werden Ihnen in einem sogenannten Array oder Vektor gegeben. Was jetzt kommt, wird nur benötigt, wenn Sie eine unabhängige Achsensteuerung wünschen und nicht den Positionswert aller 2 oder 3 Achsen auf Ihren Layer anwenden. Um also z. B. nur die Position der y-Achse zu erhalten, können Sie Folgendes tun:
y = comp("Comp 1").layer("layer1").transform.position[1];
[transform.position[0],y]
Der erfundene Variablenname y bekommt in diesem Fall den y-Achsenwert von layer1
zugewiesen. durch Hinzufügen [1]
am Ende von position
. Die Verwendung [0]
würde Ihnen x und [2]
z geben.
Dieser Teil wird als Rückgabewert bezeichnet. Sie schreiben es in Form eines Arrays/Vektors. Bedeutung [x-axis-value,y-axis-value]
oder [x-axis,y-axis,z-axis]
. transform.position[0]
bedeutet nur, dass ich den x-Wert DIESER Ebene haben möchte, in die ich den Ausdruck eingebe. Sie können diese Achse also immer noch manuell steuern.
[transform.position[0],y]
Um die zeitliche Neuzuordnung zu berücksichtigen, müssten Sie die gleiche Neuzuordnung auf comp2 anwenden, die Sie auf comp1 angewendet haben. Wenn das nicht das ist, wonach Sie suchen, muss ich vielleicht ein Beispielprojekt sehen.
Bearbeiten: Wenn Sie also die Zeit-Neuzuordnung zum Schleifen von Ebenen und nicht zum Feinabstimmen Ihrer Animation verwenden, sollten Sie sie in dieser Situation nicht verwenden. Um eine bessere Kontrolle zu behalten, sollten Sie einen einfachen Ausdruck für die animierten Assets Ihrer Schleifenkomposition verwenden, um Ihre Animation zu wiederholen.
loopOut(type = "cycle", numKeyFrame = 0);
Fügen Sie dies jeder animierten Ebeneneigenschaft hinzu und machen Sie die Kompositionslänge so lang wie Sie es benötigen. Ihre 2-Sekunden-Animation wird nun so lange wiederholt wie Ihre Komposition, Sie müssen nur Ihre Ebenenlänge auf die neue Kompositionslänge strecken. Dies löst Ihr Problem.
Wenn Sie mehr Sub-Comps in Ihrem Sub-Comp haben, müssen Sie natürlich auch deren Länge erhöhen, damit Sie sie bis zum Ende ihres übergeordneten Comps strecken können.
Weitere Informationen zu diesem Ausdruck finden Sie hier: http://provideocoalition.com/pvcexclusive/story/expression_shorts_-_loop
Timonku
Gökce Ozan