Kalleheikki Kannisto
Forum Replies Created
-
Kalleheikki Kannisto
April 27, 2019 at 7:10 am in reply to: Change layer opacity once it reaches positionLinear() is a good expression for such things. What it does is remaps an input range of a variable to an output range. So, you can give it the variable X (which can literally be the x coordinate of the layer, for instance) and tell which input range, say 1000 to 1500 you want to convert to what output range. Since opacity goes from 0 to 100 you can therefore convert it to 100 to 0 for an opacity fade. The resulting expression goes:
linear(X, 1000, 1500, 100, 0)and would be applied to the opacity of the layer. Since X is not yet defined there, you would pick-whip it to the property you want, such as the x coordinate of the layer position. Or you could calculate the distance from a given point for the value of X with a bit of trigonometry.
The input value range can be whatever you want so as to make it fade within the X range you want.
Kalleheikki Kannisto
Senior Graphic Designer -
Kalleheikki Kannisto
April 26, 2019 at 7:41 am in reply to: Adjustable start point of lower third animationYes, it certainly is. If your keyframes are “1” and “2”, where the text position is final at “2”, you want to interpolate the position over time between keyframe “1” and “2” so that the offset at “1” is minus the width of the rectangle [using sourceRectAtTime() ]. Linear() would do it, and Ease() expression would allow you to add an ease to the movement.
The linear() part of the expression would be along the lines of:
...
linear(time, keyframe(1).time, keyframe(2).time, endpos-rectwidth, endpos)That would be the last line in the position expression, you would have to retrieve and/or calculate the variables that go into it first.
Kalleheikki Kannisto
Senior Graphic Designer -
Kalleheikki Kannisto
April 26, 2019 at 7:27 am in reply to: BMPCC4K Playback + ProRes Files FreezingI often find that I have to use 1/2 res preview on Premiere or — if any effects applied — pre-render the footage for actual real-time preview.
Alternately — and this is far from an ideal solution — I remember reading that you could edit using mp4 and once done editing replace the footage with ProRes files in one go. Since I have not done that myself, you should test if that is actually workable. Considering the problem will return once you switch back to ProRes, that would really be just to get the beginning part going. And converting takes it own time as well…
Kalleheikki Kannisto
Senior Graphic Designer -
Kalleheikki Kannisto
April 26, 2019 at 7:15 am in reply to: Source text generated via expression not displaying correctlyI would try outputting the calculated global position value to the text layer itself to see if it is actually changing. I suspect you’re somehow ending up with the layer’s own anchor point position rather than the parented global position with your expression in the layer itself, although it seems correct when applied to a separate info text layer.
Kalleheikki Kannisto
Senior Graphic Designer -
In case that proves too difficult, I realized there’s an easier way to do this, which I occasionally use. You can use your original expression for the scale, but apply it to a duplicate of your layer. Then convert the expression to keyframes and finally add a smooth() expression to the layer’s scale (keeping the keyframes). It will give you a “baked” animation with a smoothing expression applied to the scaling over time. Keep the original layer with the editable expression in case you need to adjust, just hide it.
Kalleheikki Kannisto
Senior Graphic Designer -
Starting with the theory, it would go like this:
You want to use either the distance of the cursor from the (center of the) object OR the time of how long the cursor has been over the object (or how long since it left the object) to control the scaling.
Distance to the center of the object would be easier. Calculate the distance and then remap that distance to the scale with the linear() expression. Linear() is a very handy expression to know. For a bit more advanced version, replace with the ease() expression. Probably not necessary here.
If you rather have the scaling happen when approaching the edge of the object, you can, to a degree, simulate that by using sourceRectAtTime() to find out the width and height of the object and include those in calculating the distance of the cursor from the containing rectangle of the object.
Time is more involved. You need a loop that counts backwards from current frame, one frame at a time, up to the length of the transition, and checks whether the cursor is over the object or not. As a result you either get the number of frames the cursor has been over the object or when it has left the object or that it has not been over the object at all. Then you can use the linear() or ease() expression to change the scale based on time. Definitely more complex a procedure.
Kalleheikki Kannisto
Senior Graphic Designer -
Kalleheikki Kannisto
April 26, 2019 at 6:47 am in reply to: Springy / bounce type effects in conjunction with monkey scripts?That’s more a question for the developers of the TypeMonkey plugin, but based on the intro video, at least springy overshoot is included.
Kalleheikki Kannisto
Senior Graphic Designer -
Kalleheikki Kannisto
April 26, 2019 at 6:43 am in reply to: Create a video with transparent background for HTML5 webpageHere’s a pretty simple rundown: https://www.sciencelifeny.com/transparency/transparency.html#
Kalleheikki Kannisto
Senior Graphic Designer -
What I would try is this theory:
– The regular speed is in the middle of the pan. This would be a specific time remapping speed, let’s say this is S.
– At the regular speed the tracking markers move X pixels per frame.
– Now you know that X pixels per frame equals S time remapping speed.
– When the motion stops, the time remapping speed is 0, and the tracking speed is 0.
– The question is whether the in-between values are linear or not. I assume they are.Based on that theory you only need to know what S and X are in the middle of the pan and linearly interpolate the S values from the X values. Apply that to the speed value of time remapping. I don’t have AE open, so I don’t remember if the built-in time remapping can be done by speed, but at least Twixtor can do so.
Kalleheikki Kannisto
Senior Graphic Designer -
Kalleheikki Kannisto
April 25, 2019 at 6:45 pm in reply to: How to offset animation duration and Starting point with expressions?At around one minute in the person says “go to our website to download the free project file.”
Kalleheikki Kannisto
Senior Graphic Designer