Chaz Chester
Forum Replies Created
-
Maybe this is what you’re looking for?
Applying this expression to the Center property will make the light move in a circle around whatever point you choose: value+[20*Math.sin(time*200),20*Math.cos(time*200)]
You can change the 200’s to change the speed and change the 20’s to change the radius.Applying this expression to the Center property will make the light move to right while going up and down like a sin wave:
value+[(time*200),20*Math.sin(time*200)]
Similarly here, I used 200 for the speed and 20 for the magnitude. -
….or that. Glad you got it figured out ?
-
One solution would be to pre-compose the layer that has the expression on it and apply the same time re-mapping to that pre-comp. If the position data is staying the same (like, you’re not planning on re-tracking the shot or moving the null), you could could convert the expression to keyframes and then re-time the keyframes to sync up with your time remapping. You can easily scale the timing of several keyframes by selecting them and holding down option/alt while dragging the first or last selected keyframe from side to side.
-
Chaz Chester
July 26, 2020 at 11:12 pm in reply to: Possible to edit .aex effect files using Visual Studio or Brackets?The short answer would be no; since plug-ins are a beast made of several files, you can’t just bring them into Virtual Studio as is, but if you’re interested, NTProductions is releasing a tutorial on plug-ins tomorrow that might help you with this. https://www.youtube.com/watch?v=gilpHirsXQA
Also, depending on what you’re trying to accomplish, making a pseudo effect might be an easier approach. https://youtu.be/pHwBOFZgKcsSome contents or functionalities here are not available due to your cookie preferences!This happens because the functionality/content marked as “Google Youtube” uses cookies that you choosed to keep disabled. In order to view this content or use this functionality, please enable cookies: click here to open your cookie preferences.
-
You should be able to just pre-compose the footage (without any time remapping) and the null together and then time remap the pre-comp itself, right?
-
It should be possible to do this with a script. It’s a little over my head, but I think you could have the script open the external project, reduce the project to the intended comps, save a copy with the menu command, open the destination project, import the copied aep, and then delete the copied aep so it isn’t taking up space on your computer. It’s a cool idea, so I hope someone who knows more than I do helps you out.
-
Yes, random() should include the minimum and maximum values and everything between.
-
There’s probably a better way of doing this, but here’s one solution. When you put this expression in the Source Text property of a text layer, it’ll display an integer and a 0 based on the time. The “m” variable is just a multiple, so if you need to go faster, just set “m” to a bigger number.
m = 1;
if (time*m >= 1) {Math.floor(time*m)+”0″} else {0} -
Instead of applying Motion Tile to the pre-comp, apply it to an adjustment layer.
Instead of using the Phase, animate the Tile Center’s Y-value.
Then, create a pre-comp of vertical, alternating black and white bars to use as a luma matte for the adjustment layer. This’ll make it so the Motion Tile effect is only applied where the white bars are, so you’d want them over every other column.
Duplicate the bars and adjustment layer, reverse the Tile Center animation, and change the luma matte to a luma inverted matte so it uses the black bars instead.
For the Tile Center animations, I would make sure the first and last keyframes look the same, and then apply the expression loopOut(); so it continuously loops. -
This is so much better than what I had. I adjusted it slightly and now it’s doing exactly what I wanted. Adding the expression in case anybody else wants it. Thanks, Filip!
function sRGBtoLinear(rgba) {
for (i=0; i < 3; i++) {
u=rgba[i];
if (u <= 0.03928) {
u = u/12.92;
} else {
u = (u + 0.055)/1.055;
u = Math.pow(u,2.4);
}
rgba[i]=u;
}
return rgba;
}
function rgb_to_y(rgba) {
return 0.2126*rgba[0] + 0.7152*rgba[1] + 0.0722*rgba[2];
}txt1 = thisComp.layer("Color1NoTag").text.sourceText.value;
txt2 = thisComp.layer("Color2NoTag").text.sourceText.value;
rgb1 = hexToRgb(txt1);
rgb2 = hexToRgb(txt2);l1=sRGBtoLinear(rgb1);
l2=sRGBtoLinear(rgb2);y1=rgb_to_y(l1);
y2=rgb_to_y(l2);((Math.max(y1,y2)+0.05)/(Math.min(y1,y2)+0.05)).toFixed(2) +":1"