Menu

The Newness

Joe Clay | Feb 17, 2016

Hi guys! I'm Joe from Workbench. Get used to that phrase. If you're around here often, you'll probably hear it a lot.

I've been wanting to make Workbench for a while. It's my time to begin a community. Unfortunately, I still need to add commenting to this blog, and some other stuff here and there. Until then, feel free to contact us or you can hit me up on twitter @workbench_tv. You can find out more about my story and the Workbench story in the about section. There are a few tutorials up now for you to peruse, and there's a few products to check out. And there will be a lot more tutorials, products, and freebies coming.

Expressions

Joe Clay | Jan 25, 2016

Here are some of the useful expressions included with Quiver.

//Autofade: Add to opacity
transition = 8;       // transition time in frames
if (marker.numKeys<2){
tSecs = transition / ( 1 / thisComp.frameDuration); // convert to seconds
linear(time, inPoint, inPoint + tSecs, 0, 100) - linear(time, outPoint - tSecs, outPoint, 0, 100)
}else{
linear(time, inPoint, marker.key(1).time, 0, 100) - linear(time, marker.key(2).time, outPoint, 0, 100)
}
//Countdown Timer (apply to Source Text)
t = Math.floor(time);
s = 240 - t;
minutes = Math.floor(s/60);
seconds = s-(minutes*60);
if(seconds < 10)
{
    seconds = '0' + seconds;
}
minutes + ':' + seconds;
//Inertial bounce
amp = .1;
freq = 2.0;
decay = 2.0;
n = 0;
if (numKeys > 0){
n = nearestKey(time).index;
if (key(n).time > time){
n--;
}}
if (n == 0){ t = 0;
}else{
t = time - key(n).time;
}
if (n > 0){
v = velocityAtTime(key(n).time - thisComp.frameDuration/10);
value + v*amp*Math.sin(freq*t*2*Math.PI)/Math.exp(decay*t);
}else{value}
//Apply to Time Remap
pos = transform.position;
delay = -1; //in seconds
x = Math.pow(pos[0]-960,2);
y = Math.pow(pos[1]-540,2);
d = Math.sqrt(x+y);
value + linear(d,0,1102,0,delay);
// Spin (rotate at a constant speed without keyframes)
veloc = 360; //rotational velocity (degrees per second)
r = rotation + (time - inPoint) *veloc;
[r];
//Moves things in a spiral (apply to position)
center=[thisComp.width/2,thisComp.height/2];
rMax = 240; //maximum radius
decay = 0.3; //decay
freq = 6; //frequency
aStart = 0; //start angle offset
aRate = 220; //rotation rate
offsetFactor = 1000; //smoothness
r = rMax/Math.exp(time*decay);
a = degreesToRadians(aStart + aRate*time);
offset = (r/offsetFactor)*Math.sin(freq*time*Math.PI*2);center + [Math.cos(a),Math.sin(a)]*(r + offset);
// Throw (move at a constant speed without keyframes)
veloc = -10; //horizontal velocity (pixels per second)
x = position[0] + (time - inPoint) *veloc;
y = position[1];
[x,y];

I hope these scripts can help you out in your work! Keep an eye on this section for more useful tools!

Intro Build

Joe Clay | Jan 12, 2016

I thought it might be interesting to give a glimpse behind the scenes of building a simple logo animation for the Workbench.tv tutorials. This is about two and a half hours in 4 minutes. This isn't everything because I didn't always remember to record what I was doing, but it was a good majority of the time spent on animation.

 12345