Forum Replies Created

Page 25 of 277
  • Filip Vandueren

    October 31, 2022 at 7:30 am in reply to: Pulling multiple frames from a comp via expression

    If you know how many characters there would be max, then the easiest way is to prepare enough layers, and have an expression hide the ones you don’t need. Each layer uses its index to look at a different character of the sourceText.

    If that is not an option: there is a hack using the echo effect: an expression gives different results at different times and echo combines those different results in time into the current frame, this way 1 layer can be at multiple places at once. Not easy to implement.

    The spacing / layout is indeed the biggest problem. The spacing should be based on the width of the characters in the precomp, not the spacing of the current text-layer?

    But kerning is an art: just using 1 fixed spacing parameters between letters usually doesn’t look very good, unless the font was designed to be used that way (like monotype or pixel-style fonts).

  • Filip Vandueren

    October 28, 2022 at 3:58 pm in reply to: controlling 4 keyframes with sourcerectattime

    In the previous code I simply used “2” instead of key(2).time, but in this setup the result is the same. Happy it all works for you.

    Good luck with the rest.

  • Filip Vandueren

    October 28, 2022 at 2:24 pm in reply to: controlling 4 keyframes with sourcerectattime

    Hi Adam,

    – set your time indicator somewhere between key 2 and 3.

    – position the shape where you want it to be.

    – parent it to “22 animation with keyframes”

    – give the position of the shape this expression:

    t=parent.position.key(2).time;
    myAbsolutePosition = parent.toComp(value,t);
    if (time<t) {
    parent.fromComp(myAbsolutePosition);
    } else {
    value;
    }
  • Then we use text animators to fake a different style, for example faux bold by setting the stroke width, faux italic by skewing the characters, or coloring.

    But it is faking a different style, you can’t use that method to change the font for example.

  • Filip Vandueren

    October 27, 2022 at 5:06 pm in reply to: Particles for a George Jetson tailpipee like thing?

    Can you post a reference picture or movie what effect you want?

  • It’s still not possible to set more than 1 style via expressions.

  • Filip Vandueren

    October 27, 2022 at 2:35 pm in reply to: Particles for a George Jetson tailpipee like thing?
  • Filip Vandueren

    October 27, 2022 at 12:42 pm in reply to: Particles for a George Jetson tailpipee like thing?

    I got a pretty decent effect using Particle systems II.

    the shaded sphere can have a birth and death size as desired, and offers fade in/fade out. I then finetune the shading using levels or curves to have very little contrast.

    Shaded and faded is also an option, then using steel alpha levels adjustments to fine tune the shape of the bubble.

    The speed of the scaling animation is depended on the lifetime of the particles, but there’s no randomization, so I sometimes blend a few particle systems with very similar settings and differing lifetimes.

    What else do you find is animating too fast ?

  • Filip Vandueren

    October 27, 2022 at 10:14 am in reply to: Property launch animation

    Oh yeah,

    if (t<=0) {

    should better be:

    if (trigger==false) {

    Because if a trigger would occur at exactly the first frame of the comp, the code as it is now would miss it, and anyway trigger being false is the more logical condition that, well, a trigger didn’t happen (duh) 😉

  • Filip Vandueren

    October 26, 2022 at 1:57 pm in reply to: Property launch animation

    I’ll try to explain:

    The for loop starts at the current time, and steps back in time 1 frameDuration per loop until we are at time 0 (the beginning of the comp)

    At each time/frame we inspect the value of the property (valueAtTime).

    If it is more than 100, that’s the condition to start out animation.

    But if we would keep it at this, then the animation would only trigger at the last frame that’s >=100 (because we are looking backwards) we actually want to start our animation at the first frame where it was 100, not the last (for a run of consecutive frames that satisfy the condition).

    So I remember that we’ve encountered a frame that was more than 100 by setting trigger to true, but the loop continues to the previous frame to inspect that value.

    If we encounter a frame where the value is less than 100, the loop should also continue. Unless trigger is true, because that means we have now reached the end of consecutive frames that were triggering. We break out of the loop and the variable t now holds the time-value of 1 frame before our animation should trigger.

    Triggering the animation in this case is then archived by looking at the value timeremapping had “t seconds ago”. Presumably the timeremapping has its default keyframes at the start of the layer that would playback the animation.

    If t is 0 or less than 0, this means the loop where we we’re looking for values that were more than 100 was able to loop all the way through without finding a trigger. So we should return 0, so the timeremapping is frozen.

    I hope this explanation didn’t over complicate matters. I’m not the best at breaking down code to English 🙂

Page 25 of 277

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy