-
Changing Mask Path after Expression is Applied
I’ve done some extensive searching for previous posts about this issue, but have yet to find any information.
I’ve found that when I am using an expression on a mask path that I am unable to grab any of the handles or points on the mask until the expression is removed or disabled. I was wondering if anybody else has experienced this problem, and if you’ve found a solution…? I suppose I can keep disabling and re-enabling mask expressions but it’s kind of a hassle considering how many layers and keyframes I’m working with at the moment.
The specific expression I am using is created using the Ease & Wizz plugin (from AE Scripts), which if you’d like to re-create the problem, is available for free trial. The plugin, if you’re unfamiliar with it, creates an expression to replace AE’s easy-ease functions with curves that cannot be created using the curve handles alone. (It’s quite nice, actually…). I’ve included my specific expression below:
_________________________________________________________________________________________
// Curvaceous – all keyframes
// 2.0.1 : inOutQuart
// Ian Haigh (https://ianhaigh.com/easeandwizz/)
// Last built: 2010-10-09T13:35:39+11:00
function inOutQuart(t, b, c, d) {
if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
return -c/2 * ((t-=2)*t*t*t – 2) + b;
}
function curvaceous() {
var n = 0;
if (numKeys > 0) {
n = nearestKey(time).index;
if (key(n).time > time) { n– }
}
// after the first two keys, yet before the last two, just do nothing
if (n > 1 && n < numKeys -1 ) {
return null;
}
try {
var key1 = key(n);
var key2 = key(n+1);
} catch(e) {
return null;
}t = time – key1.time;
d = key2.time – key1.time;
sX = key1.time;
eX = key2.time – key1.time;
if ((time < key1.time) || (time > key2.time)) {
return null;
} else {
return valueAtTime(inOutQuart(t, sX, eX, d));
}
}
(curvaceous() || value);
_________________________________________________________________________________________Thanks for any help!
-Marcus
Sorry, there were no replies found.