February 16, 2020

Expression Fun

I'm working on a project and created this little test to figure out my Java Script Expressions. Here is a basic overview of how this is built.

The large pulsing circles are precomposed animations that are reused for each of the 3 points. I've named these ORB_Comps. The Position variable has the following expression to create the jittery movement:


The connecting lines are Beam effects with endpoints defined with this expression:

Start Point = thisComp.layer("ORB_Comp 01").transform.position

End Point = thisComp.layer("ORB_Comp 02").transform.position

ORB_Comp ## defines the endpoints and moves the position of the Beam with the ORB_Comps

The smaller circles that travel along the Beams were a little trickier because it had to follow the beam which was connected by the orbs with a wiggle parameter. So the endpoints can't simply be defined by a fixed number. I ended up creating a Null object with a slider that ranged from 0 to 100, created some keyframes moving the slider from 0 to 100, easy eased them, and added this expression to loop that movement:


Along with the slider I could then add the following expression to the small Pulsing Point:

s = thisComp.layer("SliderNull").effect("Slider Control")("Slider");
A = thisComp.layer("ORB_Comp 01").transform.position;
B = thisComp.layer("ORB_Comp 02").transform.position;

The expression linear(t, tMin, tMax, value1, value2). This takes the slider, 's', sets the min and max value of 's', in this case 0 to 100, and then changes the value from value1 to value2.

With these all combined together, it creates a set up that is independent of fixed positions and I can animate and move around the endpoints with all the connecting beams and pulse effects follow it perfectly.

July 23, 2019


© Copyright 2021. All Rights Reserved.
Contact me at [email protected]