Introducing After Effects Expressions: Giving a bee a bit of a wiggle | Edaqa Mortoray | Skillshare

Playback Speed

  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x

Introducing After Effects Expressions: Giving a bee a bit of a wiggle

teacher avatar Edaqa Mortoray, Programmer, Chef, Writer

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Lessons in This Class

6 Lessons (13m)
    • 1. Introduction

    • 2. Quickstart: A Bee with a Wiggle

    • 3. Add to value

    • 4. Straight-line with time

    • 5. Periodic Path

    • 6. Explaining Wiggle

  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.





About This Class

Learn the basic principles of expressions in Adobe After Effects.

In this class we create a wiggling bee, then dive into what's actually going on. It's a starting point for your journey into After Effects expressions.

Let's put you on your way to:

  • Building dynamic templates
  • Creating nuanced animations
  • Discovering new effects

Follow me, as I'll continue to publish classes building on these skills.

Also check out my friend Sonja's class on being efficient in After Effects.

Meet Your Teacher

Teacher Profile Image

Edaqa Mortoray

Programmer, Chef, Writer


Hi, I'm Edaqa, a programmer, writer and chef.

For over 20 years, I've been following a diverse and exciting career path. My journey traces through several countries, filled with great people and culture. I've dedicated my time to numerous startups, and an abundance of side projects.

There's so much I'd like to share with all with you -- from programming to cooking, to the unusual creative endeavours.

I want my classes to give you the confidence you need to succeed, and the curiosity required to make the most of life.

Join me in my continuing adventures.

Recently I wrote a book "What is Programming", a dive into the fascinating profession.

I've also taken up the mantle of food stylist, as I started Edaqa's Kitchen last year. Perhaps soon ... See full profile

Class Ratings

Expectations Met?
  • 0%
  • Yes
  • 0%
  • Somewhat
  • 0%
  • Not really
  • 0%
Reviews Archive

In October 2018, we updated our review system to improve the way we collect feedback. Below are the reviews written before that update.

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.


1. Introduction: today I want to introduce you to Adobe Aftereffects Expressions. This is a way to find to me animations, trade interesting effects and to build responsive templates in this class, we're gonna start with making a little be wiggle just to keep it interesting. And then I'll go to the basics expression step by step so that you can understand all of the parts off adobe abstract expressions so that you can put expressions to use in your own projects. I'll assume you know a little bit of auto after effects for this class, but you don't have to know anything about expressions or anything about coding at this point. All right, let's make that be wiggle. 2. Quickstart: A Bee with a Wiggle: in his first step, we're gonna make a simple, be wiggle. I've created a basic after effects opposition here, and I have a B in the middle of the screen, and I made him run from the left to the right. You could see it's a very straight line, a very simple animation you're having created animation. Now you can find a B and the resource files or use any graphic that you wants. Now we want to do the first expression possible down on the timeline. If you find the position for the B, we'll see that it has emotion. Curve, a little clock. It's blue showing its animated. If we all click on this, it'll convert this to an expression. Then he creates his default expression, transformed on position, which is just the value of currently has now. And it has an expression, and we can run it. Now we see it does. The exact same thing we want to do is we want to make a deal with. So how could make the be with We have the expression an ex expanded here, and we click over here to edit the expression here. We're going to type people. We're for the values four and 30 and then just click somewhere outside of the expression and we'll see that RB starts wiggling. This is about the most basic expression you can create. Wiegel is what's known as a function We can call this function, and that's why we use these brackets and we pass it arguments. In this case we have a four and a 30 there comma separated. You don't have to understand much this right now, especially for the wiggle. But you're going to see these terms functions and arguments come up again and again we goes a built in function of adobe actor of Fix. Not sure how often want to use an actual animation, but it's there and we have a we're going be. 3. Add to value: Now we want to create a basic expression, not weekly. We want to build our own expression now instead of weakling, we want to see how we can offset the these position inside. An expression we remove wiggle will replace it with something called value. Value means whatever value would have without an expression. It's kind of silly. It's exact same attorney expression on and off. But it lets us work with the existing value opposition value as we seeing aftereffects has two components. The external y value. And so this value in the expression also has those two components so we can modify this value the most obvious ways to apply an offset to it. So we want to keep them the same exposition, and that's how we do it here. And we want offset its Y position by 100. If we do that, you can see the B jumps down 100. These expressions are written in Java script. If you're curious about more of them and the whole for Americans called functional reactive link, that's not so important. All explain the details here. The key thing here is that value has two components to it, so we can add a vector of two components. The first component is the X, and the second component is the white 0 100 We changed the wise and more. We could see the B offsets more since the baby is going from left to right. Adding to the X offset is a little bit harder to see. But if we do this, move him off 50 humility jumps, but more importantly, goes off the screen and he starts further in. If we extend this more, reported a 500 now the baby will be offset very far to the right and disappears off the screen. And it appears into the left is a very basic expression. How you existed, this thing value of a control. So in this case, opposition and you could always revert to value if you want it, and that will be the basic value. That's the value create through the key frames. It's whatever you're keeper in. Values are in a tap set volume over time 4. Straight-line with time: the expressions we've done so far don't include a time component, so RB by default moving across the screen. And this is coming from the key frames and with expressions. You can also play with the time component. So instead of using key friends, we can use strictly an expression to move the B across the screen. So we saw again the B This is through key frame that's moving across the screen because we have a position to find two points. We have the two key frames where it's at the both ends of the screen, and that moves to be across the screen. This is standard after fix, but now we want to do that strictly within expressions were not going to use the value we could enter a fixed value. First of all, let's see what happens. Zero. And then we want to see. Put him in the middle of the screen and we're to 10. Hunt were 10 80 high, so 10 80 divided by two. And this puts to be directly at the front of screen. The problem. Of course he doesn't move because this expression has no aspect of time. These expressions are evaluated it every frame in the video, which means if we do a variable part with time, the expression will have a new value. So in this case here, we can see it. Well, what is time? If we just put time in, he's not going to move very much. The B is moving, but very subtly because my time only goes from 0 to 5 seconds. Therefore, this time only has a value of 0 to 5. Multiply the value of time by 100. The B will move between zero and 500. It's a time value here is 0 to 5 multiplied by 100 so from 0 to 500 position. But what we want to do is we want to move them across the whole screen in the period of five seconds, just like the key frames air doing so here. When you say time divided by five because we have a five second long animation and then we want to make it the width of the screen, and this one happens to be 1920. Now the baby will move itself across the screen over five seconds, based in our expression, because we have a time component to it. Go ahead and play these values and adjust his path. You can also adjust the vertical path so we may want to move in the top left corner the bottom right corner, so we could do the same thing in time divided by five times 10 e. Now the B will follow a path from going from the top down. This is just to give you a basic idea of how to work with time inside an expression. And here we're no longer depending on the original value. So the key frames opposition are ignored inside this expression. Now they're not used at the moment. 5. Periodic Path: Now let's use the time aspect also, that these paths So he goes up and down a bit. It's not quite a wiggle button introduces a function that you might use quite often in your animations. So again, at the moment I've reverted back to value. And so the BU goes on the left to the right of the screen, and I want to offset this value. Now. I don't want to offset its exposition. I only want to offset its height. So I'm going to create a vector where the first part of zero that refers to the X and the second part refers to the Y position in hearing one use a function called math thought. Sign the math thought parts. This is inside a math package, but we're looking for the function sign. This is a standard mouth side function, and we go put this sign of the time here, and this value arranged between minus one and one in a cycle. Now, that's not gonna appear very much so we're gonna multiplied by 100 so I could see the path all through on the screen. Now you can see the be following a cycle up and down. It's a very slow cycle, though it's because our timely arranged in 05 I won't go into details of how science works . But if you want to increase the frequency this cycle, you could multiply time by value. In this, multiplying by five will make the speak N C five times as high. So the GI goes up and down more often as it crosses the screen and notice we're adding this to the existing value. So this is an offset, and this is a very common technique. You might use an expressions if you designed the basic path with the key frames, and now you only want to offset that value by a little bit without the value offset. We only have the zero in the math sign in the B sticks in the upper left hand corner because it's not relative to another position. It's just gonna be a zero comma whatever. So we add the value. Plus, in here we take the key frame position, plus the offset of the zero X and the math sign to give it a periodic cycled across the screen 6. Explaining Wiggle: Now let's go back and take a look at that. We go again. So here have created the Wiegel expression we go four common 30. These values just control. How much a week? ALS You can go look that up if you want. I'm not so concerned about that. Here we wiggle and the beef follows the trajectory. There no wiggle is a bit of a special function. Well, we did her own sine function. We had to do a value plus but wiggle doesn't have to do that. Oh, sure you can put double slash Inform something commented out so you can quickly see multiple expressions. So this is our pseudo wave. Oh, as we go up and down and the rial wiggle didn't have to do that value Plus But we know internally that wiggle is doing something similar to this with some randomness as well. But you notice Wiegel is stunting his movement across the screen. We just want a wiggle on the up and down direction. And so now we combine the various bits that we know we know that wiggle is returning an X and A Y position so we can actually add it to another value. We don't want to make the expression too complicated so we can introduce a new variable. I want to assign the value of wiggle to a variable and let's just call it position. So pos, a short for position and at the end, I'm gonna return position. The final value in an expression, is the one that returns all the statements before it. We need to add a semi quality and telling it Look, the statements done and there's a next one coming after it. So this is the exact same. Is putting in legal directly to be will wiggle because we've assigned to a value and now we're returning that value. We don't want to wiggle left and right. So let's wake him. Only wiggle up, down. We know that position has two aspects to it, and we know the value is the original value. So we can modify this and say instead, let's take the position and we're gonna take the components of the existing value value. Zero is the current valued having the screen at the exposition and then for the Y position . We want to take the position from the wiggle because we know it's wiggling in the correct location. So now we can position Nats. We've modified the position, and now any wiggles it wiggles up and down, but it smoothly goes across the screen. And this happens because we took the wiggle value, which wiggles in the X and Y dimension, assigning to a variable called positions. We can refer to it later, and we're modifying the position, taking the bees exposition from our key frames, using the Y from the position. And then we're returning that position value. And now we have a B that goes from left to writes smoothly in wiggles up and down.