Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects Expressions Random character opacity on and off

  • Adam Goddard

    August 5, 2015 at 12:55 am

    Hi Dan

    I am trying to get this expression to work on a text layer, applying the expression to the opacity animator. I am getting the following error message:

    property or method named ‘textindex’ in Class ‘global’ is missing or does not exist…

    Can you please help solve this?

    Many thanks

  • Dan Ebberts

    August 5, 2015 at 1:12 am

    You must have missed the step where you add the Expression Selector. The Amount property of an Expression Selector is the only place where that expression won’t generate an error.


  • Adam Goddard

    August 5, 2015 at 1:19 am

    ahhh quite correct. many thanks and apologies for missing that and not reading close enough.


  • Gage Ullman

    January 9, 2017 at 10:23 pm

    This is fairly similar to something I’m trying to do and can’t seem to figure out… I’m trying to have the letters flicker on left to right, but with a degree of randomness. So, you know, if the letters are ABCDEFG, A flickers on and then maybe C starts, and then B and D go so on with a slight randomness until the word is completed. I thought I had it using one of your expressions from (random text overshoot), but I can’t seem to get the left-to-rightness of it to work. That make sense? Sorry to tack onto an old thread like this, I just haven’t been able to find quite the thing I’m looking for.

  • Caresse Singh

    January 27, 2017 at 3:27 am

    This is awesome, thanks! How could I get the amount of characters to randomly increase/decrease from left to right?


  • Ze’ev Gilad

    January 27, 2017 at 8:15 am

    I’m no Dan Ebberts, but I would add a second animator for Opacity, set Opacity to 0%, with End 100% and add an expression for Start to randomize or wiggle.

  • Mirra Fine

    February 23, 2017 at 8:20 pm

    Hey Dan — How could I change this expression so that the letters appear randomly and then stay (dont dissapear?)
    I want letters to appear at different times, but eventually for the whole word to be seen.


    freq = 1;

    txt = text.sourceText;
    curMax = -999;
    for (i = 0; i < txt.length; i++){
    w = rotation.wiggle(freq,1);
    if (w > curMax){
    curMax = w;
    idx = i;
    textIndex == idx ? 0 : 100

  • Dan Ebberts

    February 23, 2017 at 8:29 pm

    Something like this might work:

    revealTime = 3; // reveal over 3 seconds
    myReveal = random(revealTime);
    if ((time-inPoint) < myReveal) 100 else 0


  • Mirra Fine

    February 23, 2017 at 8:30 pm

    Amazing. Thank you so much!

  • Olivier Blanchette

    July 23, 2018 at 3:03 pm

    Hello Master Dan,

    Would it be possible to tweak this expression to have the letters appear one by one in the correct order?



Page 2 of 3

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