Dependent Animation by Reference in After Effects

What is dependent animation by reference?

Dependent animation by reference is animation linked to the master layer. Think of it as a placeholder for keyframes.

Where can I use it?

A good use case would be a project with a lot of similar text animations. Let’s say you have 1000 animated text layers and the client asks to make animation faster. Rather than manually adjusting all animation in the project, you can edit one master layer.

Why can’t I link properties with a pick whip instead?

Most likely all animations in your project will have a different duration and timing. This expression allows you to modify animation’s duration and timing by changing in and out point of the layer and moving the layer.

How to create a dependent animation by reference animation in After Effects?

  1. Create a composition, name it “Reference”.
  2. Create a layer, animate it.
  3. Create another layer with the same name and paste an expression below into the properties you animated in step 2.
var refComp = comp("Reference");
var refLayer = refComp.layer(thisLayer.name);

var properties = [], property = thisProperty;
while ( ! (property instanceof Layer)) {
	properties.push(property.name);
	property = property.propertyGroup(1);
}

var refProperty = refLayer;
for (var i = properties.length - 1; i >= 0; i--) {
	refProperty = refProperty(properties[i]);
}


if (time < thisLayer.inPoint) { refProperty.valueAtTime(refLayer.inPoint); } if (time >= thisLayer.inPoint && 
		time < (thisLayer.outPoint - thisLayer.inPoint) / 2) { refProperty.valueAtTime(refLayer.inPoint + (time - thisLayer.inPoint)) } if (time > (thisLayer.outPoint - thisLayer.inPoint) / 2 && 
		time <= thisLayer.outPoint) { refProperty.valueAtTime(refLayer.outPoint - (thisLayer.outPoint - time)); } if (time > thisLayer.outPoint) {
	refProperty.valueAtTime(refLayer.outPoint);
}

How does it work?

A dependent layer looks for the layer with the same name in the Reference composition. Then it copies the animation from the property where expression is applied. It adjusts in and out animations to the in and out points of the layer.

-50%
-50%
00hrs : 00mins : 00sec
Cyber MondaySale sitewide
Shop now

Get 10% off when you subscribe to our newsletter

By subscribing you agree to your email being stored and used to receive the emails in accordance to our Privacy Policy
descount