-
Get valueAtTime AFTER a Timewarp effect?
I think I already know the answer to this is “no”, but here goes…
I have a Text layer that scrolls (intermittently) up the screen, i.e. it shunts up one line, then sits there for ~1sec, then shunts up again, sits for ~1sec and so on. I’ve animated the text moving up using a simple Text Animator with 3 keyframes and a
loopOut(type = "offset", numKeyframes = 0)
expression to cycle the keyframes. I want the text animation to start of slowly, then speed up, then slow down again. So I’ve added a Timewarp effect (which, incidentally, seems to void any masks I’ve added, so I had to add a track matte to isolate the single line of text). I found the built-in motion blur and Timewarp’s motion blur to be a bit ugly – Timewarp, despite me adjusting the “Enable Motion Blur” settings (Shutter Control and Shutter Samples) only ever seemed to give me a couple of samples showing.So I decided to write an expression and pop it on the Blurriness of a Gaussian Blur (Vertical only):
a = text.animator("text up").property.position.velocity[1];
b = effect("Timewarp")("Speed");
Math.abs(a * b) / 5000
…and it worked beautifully, except that it didn’t take into account the shifting of the Text Animator’s keyframes by the Timewarp effect…i.e. the amount of blur happened regularly, every 1 second or so, regardless of the fact that the speed of the text was changing drastically because of the Timewarp (even though I’d applied the Gaussian Blur after the Timewarp in the effects layer stack). Am I right in suspecting it’s not possible to get an expression to evaluate after the Timewarp has done its thing and effectively altered the position (in time) of the keyframes?
….a long question to what I suspect might have a very short answer!
Sorry, there were no replies found.