Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects Expressions Expression happening *before* keyframe problem

  • Expression happening *before* keyframe problem

    Posted by Mark Philip on June 10, 2018 at 9:15 pm

    Greetings! I was hoping you all might be able to help me with something that has made me tear my hair out.

    First a disclaimer: I am not very skilled at expressions.

    In any case, the problem. I have some eyes that I animate to blink using sliders in null objects. The null for the right eye is named “oog R CONTROLLER”.

    The white of the eye I animate using scale. So at 1 the eye is closed, at 100 it’s open, at 150 it’s *really* open. I put this expression on scale:
    a = thisComp.layer("oog R CONTROLLER").effect("Slider Control")("Slider");
    [100, a]

    Then, the eyelashes are pre-composed. In this pre-comp I animated them using puppet pins. At the 1st frame the lashes are closed, at the 100th frame they are open, and at the 150th frame they are *really* open. Then I time remapped this comp and used this expression on the remap:
    a = thisComp.layer("oog R CONTROLLER").effect("Slider Control")("Slider")
    framesToTime(a)

    So, in theory: if the slider value is at 1 both the white of the eye and the lashes will be closed, at 100, open, at 150 really open.

    However, please take a look at what actually happens with the right eye when I go through the keyframes of my slider null. The first keyframe has a value of 100, the second 2, and the third 99.:

    In the 2nd image the CTI hasn’t even gone past the keyframe yet and the slider value is still at 100, but the eye is already closing! In the 4th and 5th image things really get funky as now the white of the eye and eyelashes move independently from each other, even though they are linked to the same slider value!

    The issue sometimes goes away when I pick a different value for the slider, for instance 99 or 101 in stead of 100 – but that does not always help. Worse, keyframes that were perfect in the past can get this problem later anyway.

    Can someone perhaps help me out? I sure hope so! Thank you very much in advance.

    Mark Philip replied 8 years, 1 month ago 2 Members · 4 Replies
  • 4 Replies
  • Kalleheikki Kannisto

    June 11, 2018 at 4:37 am

    The first thing I would try is to make those keyframes linear rather than easy-eased.

    Take a look at the values in the graph editor, you will likely see unexpected overshoots and curvatures there.

    Kalleheikki Kannisto
    Senior Graphic Designer

  • Mark Philip

    June 11, 2018 at 7:31 am

    The graph editor indeed looked a bit funny, but converting them to linear keyframes did not resolve the issue, sadly.

    I took a look at how the scale and time remap values where changed by the expression, and those values where actually correct. It’s just not rendering it properly it seems, which is even more frustrating.

  • Mark Philip

    June 11, 2018 at 9:04 am

    On closer inspection it seems only the time remap on the lashes pre-comp is at fault. The scale of the eye white scales as it should.

    So is it maybe puppet pin related? Those things often make things wonky.

  • Mark Philip

    June 11, 2018 at 9:14 am

    Okay, it is from ideal, but rendering the lashes comps and replacing the layers with puppet pins with these renders seems to have solved the problem. So it appears the pins where somehow causing the expressions to render in a weird way…

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