Colin Braley
Forum Replies Created
-
I would like a chance to test something like that out if you don’t mind. If you want, post a link to the script here or emailing it to me at cbraley11 at aol.com would be greatly appreciated. Thanks.
~Colin
-
I didn’t see that you already posted an answer while I was coding mine Dan 🙂 Well anyway heres a way to do it without the whole nk thing:
beginVal = [50, 50];//Value of parameter before you have hit the desired marker
targetMarker = 2;//After the comp’s time is greater than this target marker the
//animation of this parameter will be controlled by keyframes//———-
//Do not modify below this line
//———-hit = new Array( marker.numKeys );
for(i = 1; i <= marker.numKeys ; i++) hit[i] = marker.key(i).time; //-- if(time > hit[targetMarker])
{
if(numKeys == 0)
beginVal
else{
timeBegin = marker.key(1).time;
diff = Math.abs( time – hit[targetMarker ]);
this.valueAtTime( timeBegin + diff)
}
}else{
beginVal
}
//End expression -
I didn’t see that you already posted an answer while I was coding mine Dan 🙂 Well anyway heres a way to do it without the whole nk thing:
beginVal = [50, 50];//Value of parameter before you have hit the desired marker
targetMarker = 2;//After the comp’s time is greater than this target marker the
//animation of this parameter will be controlled by keyframes//———-
//Do not modify below this line
//———-hit = new Array( marker.numKeys );
for(i = 1; i <= marker.numKeys ; i++) hit[i] = marker.key(i).time; //-- if(time > hit[targetMarker])
{
if(numKeys == 0)
beginVal
else{
timeBegin = marker.key(1).time;
diff = Math.abs( time – hit[targetMarker ]);
this.valueAtTime( timeBegin + diff)
}
}else{
beginVal
}
//End expression -
I think I’ve got what you are looking for but I am not quite sure. You are saying you want an expression that works such that: if your current time is past a certain marker use the animation keyframed in for a layer, if not just keep the value static. I made a quick example using scale. Feel free to modify the variables called: beginVal, nk, and targetMarker. The expression I wrote will set the scale parameter equal to beginVal unless the time is past the targetMarker. You also must set nk equal to the number of markers on your layer prior to use. There might be a way to get the number of markers on a layer using some code but I’m not sure. Well anyway enough of my ramblings here’s the expression for scale:
beginVal = [50, 50];//Value of parameter before you have hit the desired marker
nk = 3;//Change this to the number of markers on your layer
targetMarker = 2;//After the comp’s time is greater than this target marker the
//animation of this parameter will be controlled by keyframes//———-
//Modify below this line at your own risk 🙂
//———-hit = new Array( nk );
for(i = 1; i <= nk; i++) hit[i] = marker.key(i).time; //-- if(time > hit[targetMarker])
{
if(numKeys == 0)
beginVal
else{
timeBegin = marker.key(1).time;
diff = Math.abs( time – hit[targetMarker ]);
this.valueAtTime( timeBegin + diff)
}
}else{
beginVal
}
//End expression~Colin
By the way, I haven’t tested this expression for strange conditions such as a layer that has no keyframes or no markers, so under these situations it may not work
-
I think I’ve got what you are looking for but I am not quite sure. You are saying you want an expression that works such that: if your current time is past a certain marker use the animation keyframed in for a layer, if not just keep the value static. I made a quick example using scale. Feel free to modify the variables called: beginVal, nk, and targetMarker. The expression I wrote will set the scale parameter equal to beginVal unless the time is past the targetMarker. You also must set nk equal to the number of markers on your layer prior to use. There might be a way to get the number of markers on a layer using some code but I’m not sure. Well anyway enough of my ramblings here’s the expression for scale:
beginVal = [50, 50];//Value of parameter before you have hit the desired marker
nk = 3;//Change this to the number of markers on your layer
targetMarker = 2;//After the comp’s time is greater than this target marker the
//animation of this parameter will be controlled by keyframes//———-
//Modify below this line at your own risk 🙂
//———-hit = new Array( nk );
for(i = 1; i <= nk; i++) hit[i] = marker.key(i).time; //-- if(time > hit[targetMarker])
{
if(numKeys == 0)
beginVal
else{
timeBegin = marker.key(1).time;
diff = Math.abs( time – hit[targetMarker ]);
this.valueAtTime( timeBegin + diff)
}
}else{
beginVal
}
//End expression~Colin
By the way, I haven’t tested this expression for strange conditions such as a layer that has no keyframes or no markers, so under these situations it may not work
-
Colin Braley
January 23, 2006 at 3:31 pm in reply to: Is it possible to shutdown AE after rendering???Check out this script from aenhancers.com It is quite usefull.
https://www.aenhancers.com/viewtopic.php?t=115
~Colin
-
You can acess individual pixel color values via certain plug in’s like Digital Anarchy’s Color Sampler.
~Colin -
You can acess individual pixel color values via certain plug in’s like Digital Anarchy’s Color Sampler.
~Colin -
Colin Braley
January 20, 2006 at 2:44 am in reply to: CREATIVE CALL! Describe an AE VIDEO TUTORIAL that you would like to see.I would like to see a tutorial on how one sets up timing in animations and how color palletes are chosen. This is kinda an abstract thing, and isn’t really AE specific, but it seems like so often my animations lack that sense of timing and flow you see on a lot of the TV spots.
~Colin
-
Colin Braley
January 13, 2006 at 3:18 am in reply to: After Effects – the use of JAVA ( I wish it was like a cup of coffee)If you are looking for After Effect’s scripts check out:
http://www.aenhancers.com
http://www.motionscript.com
https://www.redefinery.com/Sidenote: These are links to sites that contain scripts written in the After Effect’s scripting language. This language is based on ECMAScript (javascript) Plain old JAVA is a common programming by Sun Microsystems language that has noting to do with After Effects.
~Colin