Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Forums Adobe After Effects Expressions Mexican wave expression selector

  • Mexican wave expression selector

  • Andrei Popa

    December 7, 2021 at 8:29 am

    Hi guys.

    I am trying to create an effect for a text layer similar to the mexican wave in sports. I would like it to be expression selector because I plan to work a bit on this and make it customizable (speed, wave length etc). For now I would appreciate a place to start from. I worked a bit with expression selector but only things that were 100 or zero. I want my wave to be a little uniform: when the current letters is at top, I want the previous and next to also be a little bit affected.

  • Chris Voelz

    December 7, 2021 at 1:49 pm

    Sounds like a scale text animator would work well for you. You can adjust the easing to achieve the wave effect.

  • Dan Ebberts

    December 7, 2021 at 9:41 pm

    Try setting your Position Animator to [0,-100,0], add an Expression Selector, and set its Amount expression to something like this:

    period = 6;

    t = (time - inPoint)%period;

    delay = .25;

    individualDelay = .15;

    myPeak = delay + (textIndex - .5)*individualDelay;

    delta = Math.abs(myPeak - t)

    y = ease(delta,0,individualDelay*2,100,0);


  • Andrei Popa

    December 8, 2021 at 9:57 am

    Thank you very much Dan. That is way more than I expected 😀

    Do you happen to know any good course/video/article on expression selectors for text animators? I understand that the result acts similar to the “Amount” part of the selector. But I feel like I don’t have a good grasp on them.



  • Dan Ebberts

    December 8, 2021 at 4:52 pm

    There may be training on out there for expression selectors, but I don’t recall seeing anything.

    The main thing to remember is that at each frame, the expression runs once for each character/word/line (depending on the “Based On” setting) and you use textIndex to tell the expression which one it’s currently working on. Sometimes you also need to use textTotal, which has the total number of characters/words/lines.

    One tricky thing is that textIndex goes from 1 to n, but your character index into the actual text goes from 0 to n-1 (and textIndex skips over any carriage control, so things can get out of whack if you have multiple lines).

Viewing 1 - 5 of 5 posts

Log in to reply.

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