1 Reply Latest reply on Oct 3, 2017 2:50 PM by Rick Gerard

    How can I make a shadow bigger if my character moves down?

    moo90492967 Level 1

      I'm making a character and trying to make the shadow get bigger whenever the character floats down and smaller whenever it floats up



      just like this

        • 1. Re: How can I make a shadow bigger if my character moves down?
          Rick Gerard Adobe Community Professional & MVP

          Since you provided no composition details I'm assuming that you are using illustrations and not a light and 3D layers.


          You can animate the scale of the shadow if the anchor point is exactly in the center of the circle.


          I suspect that you may not have very much experience with After Effects so the other option may leave you scratching your head.


          You could automate the change in scale if you tie the distance between the character and the shadow layer to scale with an expression. I can't give you the exact expression without knowing some comp details but basically you the the length method from the Expression Language Menu>Vector Math and then use the linear method from the ExpressionLanguage>Interpolation menu to covert the length to reasonable numbers.


          Say you had a layer called position. The expression for scale on the shadow layer would look something like this:

          point1 = thisComp.layer("Character").position;

          point2 = position;

          t = length(point1, point2);

          tMin = 50; // minimum distance

          tMax = 500; // maximum distance

          value1 = 50; // minimum scale;

          value2 = 300; // maximum scale;

          s = linear(t, tMin, tMax, value1, value2);

          [s, s]


          I chose names for the variables based on the default properties you get when you apply the vector math and interpolation methods because this requires less typing and it's a lot easier for folks to follow.


          The expression should be fairly easy to understand – point1 is just the position of your character layer, point2 is the position of the shadow layer, t is the distance between the layers, tMin is the minimum distance between the layers, tMax is the maximum distance between layers, value1 is the minimum scale you want, value2 is the maximum value of the scale you want.


          If you move an object away from the shadow catcher (the ground) and you are using a point light source the shadow gets bigger which is what this expression does. If you move an object away from the shadow catcher and you have a large or diffuse light source the shadow gets smaller. To make this expression do that just reverse the values for value1 and value2. something like 100 for value1 and 20 for value 2 may do the trick. Adjust the values of tMin and tMax to match your animation.


          I hope this helps.


          if you are using 3D layers and a light should then it is going to be a lot more difficult to make the shadow get smaller as the object moves closer to the light because AE has no diffuse directional light option.