Last night on MoChat we discussed getting started with expressions in After Effects. Adobe posted links off the bat for examples and basics. As far as the go-to & first learned expressions, loopOut() and wiggle() seemed to be the most common. For learning more about expressions, there is Harry Frank’s After Effects Expressions series, an FXPHD course taught by Harry as well, AE Enhancers, or a bonus chapter in Creating Motion Graphics. Keeping track of all those expressions we learn & write becomes a task over time. Some people use text documents, the Expression Toolbox script, or other programs like Codebox & Evernote. Of course, Adobe seems to be aware of this, too.

[learn_more caption=”Transcript”]

Welcome to tonight’s #MoChat everyone. Tonight we’re talking Expressions.8:59 PM EDT Oct 30th, 2012

wiggle me this, wiggle me that… #MoChat9:00 PM EDT Oct 30th, 2012

Here are some expression examples & links to resources that we’ve pulled together: http://t.co/PZpIWwAy (incl links to MotionScript) #mochat9:00 PM EDT Oct 30th, 2012

If you haven’t already, you can help by donating to the American Red Cross. http://t.co/JbL92F2s #mochat9:00 PM EDT Oct 30th, 2012

But first, I’m pretty sure it goes without saying that we’re all thinking of everyone on the US East Coast who went through #Sandy. #Mochat9:00 PM EDT Oct 30th, 2012

And off the bat with the links! #mochat9:01 PM EDT Oct 30th, 2012

RT : If you haven’t already, you can help by donating to the American Red Cross. http://t.co/p09ibkby #mochat9:01 PM EDT Oct 30th, 2012

RT : RT : If you haven’t already, you can help by donating to the American Red Cross. http://t.co/p09ibkby #mochat9:02 PM EDT Oct 30th, 2012

Let’s start off simple. What were some of the first expressions you learned? #mochat9:02 PM EDT Oct 30th, 2012

what expression do you use the most other than wiggle lol #mochat9:02 PM EDT Oct 30th, 2012

If you’re looking for basic definitions and such for expressions, start here: http://t.co/XCpiQWO5 #mochat9:02 PM EDT Oct 30th, 2012

Pick-whipping, followed by wiggle(). #mochat9:03 PM EDT Oct 30th, 2012

loopOut(), and sometimes loopIn(). #mochat9:03 PM EDT Oct 30th, 2012

RT : If you’re looking for basic definitions and such for expressions, start here: http://t.co/XCpiQWO5 #mochat9:04 PM EDT Oct 30th, 2012

RT : Welcome to tonight’s #MoChat everyone. Tonight we’re talking Expressions.9:04 PM EDT Oct 30th, 2012

my first expression was probably loopOut(“cycle”), to make something loop #mochat9:05 PM EDT Oct 30th, 2012

hear hear! other than wiggle it was a lot of pick whipping and doing positions and stuff for me #mochat9:05 PM EDT Oct 30th, 2012

interesting, i didn’t think of pick whipping as expressions but that’s exactly what it is #mochat9:05 PM EDT Oct 30th, 2012

I use the loopOut expression method a lot. And the linear interpolation method. #mochat9:05 PM EDT Oct 30th, 2012

RT : If you’re looking for basic definitions and such for expressions, start here: http://t.co/XCpiQWO5 #mochat9:06 PM EDT Oct 30th, 2012

wiggle and pickwhipping for me #mochat9:06 PM EDT Oct 30th, 2012

RT : I use the loopOut expression method a lot. And the linear interpolation method. #mochat9:06 PM EDT Oct 30th, 2012

RT : If you’re looking for basic definitions and such for expressions, start here: http://t.co/XCpiQWO5 #mochat9:06 PM EDT Oct 30th, 2012

i dont use #ae on a regular enough basis to really ‘learn’ any usefull expressions i think. but that will change #mochat9:07 PM EDT Oct 30th, 2012

copied and pasted expressions a lot to #mochat9:07 PM EDT Oct 30th, 2012

Yup, loopOut is amazing. RT : I use the loopOut expression method a lot. And the linear interpolation method. #mochat9:07 PM EDT Oct 30th, 2012

definitely wiggle() #mochat9:07 PM EDT Oct 30th, 2012

next short movie i gotta make a head explode and i think blood seep outta walls…. mwahahahaha #mochat9:07 PM EDT Oct 30th, 2012

I recently started using linear() to trigger a keyframed animation on a layer marker. #mochat9:08 PM EDT Oct 30th, 2012

Does anyone have some questions on basic expressions? (Remember, you have 140 characters, so don’t get too complicated.) #mochat9:08 PM EDT Oct 30th, 2012

Dude. It’s a derivative of JavaScript. Get on it! 😉 #mochat9:09 PM EDT Oct 30th, 2012

i know, and thats what makes me such a sad panda 🙁 #mochat9:09 PM EDT Oct 30th, 2012

No power. In the middle of a big project and as I tweet this my phone is at half full. Ah the life of a mograh artist #mochat9:11 PM EDT Oct 30th, 2012

Say you have something which ranges from 3-8 and you want it to drive values between 0-100, linear(v,3,8,0,100) #mochat9:11 PM EDT Oct 30th, 2012

are there any training courses purely dedicated to expressions? i havent looked around yet. #mochat9:11 PM EDT Oct 30th, 2012

This is probably the expression I use the most: autofade http://t.co/IUQc2ab5 #mochat9:12 PM EDT Oct 30th, 2012

has some pretty good stuff… #mochat9:12 PM EDT Oct 30th, 2012

A good link was put up at the start by http://t.co/k5BLld2g #mochat9:12 PM EDT Oct 30th, 2012

harry frank has a series on expressions #mochat9:12 PM EDT Oct 30th, 2012

that would be great if i could afford DT lol #mochat9:12 PM EDT Oct 30th, 2012

The script I find most useful is distribute layer for quick tests of frames and graphics in x, y, z space – please recommend me more #MoChat9:12 PM EDT Oct 30th, 2012

yup, im looking at those right now #mochat9:13 PM EDT Oct 30th, 2012

http://t.co/kzkuYTRl #mochat9:13 PM EDT Oct 30th, 2012

Stay safe. How are things out there? #mochat9:13 PM EDT Oct 30th, 2012

There are good examples and explanations for the linear interpolation method here: http://t.co/P7ud6ZxG #mochat9:13 PM EDT Oct 30th, 2012

I know had a question about how to stop an expression on a certain frame. Anyone have a good solution for that? #mochat9:14 PM EDT Oct 30th, 2012

here is an oldie but goodie on expressions http://t.co/cfARfYuu #mochat9:14 PM EDT Oct 30th, 2012

RT : There are good examples and explanations for the linear interpolation method here: http://t.co/P7ud6ZxG #mochat9:15 PM EDT Oct 30th, 2012

Also, has the Expressions Bootcamp course again this term: https://t.co/hlS1NCeK #mochat9:16 PM EDT Oct 30th, 2012

ill see if i can borrow money from mitt romney lol #mochat9:17 PM EDT Oct 30th, 2012

You don’t “stop” an expression, per se. But you could use an if statement to use the keyframed value at certain times. #mochat9:18 PM EDT Oct 30th, 2012

People are safe and well I think. Now comes the reality. “Oh let go on my computer” crap I am having mograh withdrawals #mochat9:18 PM EDT Oct 30th, 2012

The expressions “bonus” chapter of “Creating Motion Graphics” is a pretty good exploration of the possibilities. #mochat9:19 PM EDT Oct 30th, 2012

RT : There are good examples and explanations for the linear interpolation method here: http://t.co/P7ud6ZxG #mochat9:19 PM EDT Oct 30th, 2012

And there’s no way to get the result of an expression at a certain frame, is there? valueAtTime only looks at keyframes? #mochat9:19 PM EDT Oct 30th, 2012

hello chatters.. #mochat9:19 PM EDT Oct 30th, 2012

Look who showed up! #mochat9:20 PM EDT Oct 30th, 2012

That’s correct. Expressions are evaluated on the current frame and don’t know about expression values on other frames. #mochat9:20 PM EDT Oct 30th, 2012

whats the topic for tonight? #mochat9:20 PM EDT Oct 30th, 2012

can’t you just link to sliders for more in/out controls? #mochat9:20 PM EDT Oct 30th, 2012

One way that people “stop” an expression at a specific time is to keyframe a relevant parameter to 0 (like amt for wiggle). #mochat9:21 PM EDT Oct 30th, 2012

Oh, absolutely. And my layers have an assortment of them. But would be cool to ignore expression results after a marker. #mochat9:21 PM EDT Oct 30th, 2012

For that, you’d just call the value method for the time after that marker. #mochat9:22 PM EDT Oct 30th, 2012

Expressions. Read up, son! #mochat9:22 PM EDT Oct 30th, 2012

#mochat9:22 PM EDT Oct 30th, 2012

That’s what I was thinking. It can be a little inflexible (for example mid-loop), but gets part way there. #mochat9:23 PM EDT Oct 30th, 2012

I hear you, that would be great. Sounds like it would be too time consuming to set up though, if possible. #mochat9:23 PM EDT Oct 30th, 2012

See this example: http://t.co/cIs5iDOx #mochat9:23 PM EDT Oct 30th, 2012

gotcha yep 0 out a KF at the moment in time is a good way to stop an expression & quickwhip w/ expression controllers = Win! #mochat9:24 PM EDT Oct 30th, 2012

http://t.co/0UI7aKmK Yes this is a great series.. wish I knew about it when it came out. #mochat9:25 PM EDT Oct 30th, 2012

that makes a lot of sense! Good commands for starts and stops, thanks. #mochat9:25 PM EDT Oct 30th, 2012

“Expression example: Start or stop wiggle at specific time”: http://t.co/cIs5iDOx #mochat9:26 PM EDT Oct 30th, 2012

So what are some people’s favorite/most-used expressions? (If it doesn’t fit in a tweet, post a pic or use something like CloudApp.) #mochat9:26 PM EDT Oct 30th, 2012

RT : If you’re looking for basic definitions and such for expressions, start here: http://t.co/XCpiQWO5 #mochat9:26 PM EDT Oct 30th, 2012

RT : “Expression example: Start or stop wiggle at specific time”: http://t.co/cIs5iDOx #mochat9:28 PM EDT Oct 30th, 2012

late for #mochat. what i miss 🙂 #mochat9:28 PM EDT Oct 30th, 2012

I like expressions that link properties to audio, like one here Nathan uses for ducking audio: http://t.co/oY8akXSo #mochat9:29 PM EDT Oct 30th, 2012

Triggering something at a marker. Commented: http://t.co/9YB50FSU Compact: http://t.co/z3TgC5KB #mochat9:29 PM EDT Oct 30th, 2012

RT : If you’re looking for basic definitions and such for expressions, start here: http://t.co/XCpiQWO5 #mochat9:29 PM EDT Oct 30th, 2012

i like sampleImage tied to text layers, can be helpful to have in context sample results. i know did a post on this #mochat9:30 PM EDT Oct 30th, 2012

inertial bounce FTW! #mochat9:30 PM EDT Oct 30th, 2012

RT : If you’re looking for basic definitions and such for expressions, start here: http://t.co/XCpiQWO5 #mochat9:30 PM EDT Oct 30th, 2012

Just a few people expressing themselves… get it? Expressing? Expressions? Anyone? Is this thing on? #mochat9:31 PM EDT Oct 30th, 2012

Do you ever look at the other easing expressions, like the ones in Ease & Wizz? #mochat9:32 PM EDT Oct 30th, 2012

recently did a great expressions course over . think its repeating this term. great stuff even for advanced users #mochat9:32 PM EDT Oct 30th, 2012

no, but only cause ive never needed too. i was actually looking at that today 🙂 #mochat9:32 PM EDT Oct 30th, 2012

Just checked and it is. Was a great course. I took it last term. #mochat9:33 PM EDT Oct 30th, 2012

Here’s a forum thread in which I show how to make a color sampler with a text layer and sampleImage: http://t.co/gVc86E4N #mochat9:33 PM EDT Oct 30th, 2012

#MoChat I use lots of wiggle and simple interpolation expressions. Embarrassed to say the math hangs me up often when move to the deep end.9:33 PM EDT Oct 30th, 2012

At ‘s suggestion I’ve started learning to keyframe some of them, actually. #mochat9:33 PM EDT Oct 30th, 2012

Easy ans Wizz is great.. Theres also Mamoworlds. iExpressions which Ive never used but you can pick it up in segments #mochat9:34 PM EDT Oct 30th, 2012

basic but handy- wiggle in one dimension http://t.co/zmRg0DMg #mochat9:34 PM EDT Oct 30th, 2012

linear is great when tying together different paramaters. #mochat9:34 PM EDT Oct 30th, 2012

wrote up a snap in/out expression ive used quite a bit. #mochat9:34 PM EDT Oct 30th, 2012

#MathIsHard #mochat9:34 PM EDT Oct 30th, 2012

yeah the math can be tricky.. but just bringing in Math.sin or cos can help w/ tedious motion and even use for decay. #mochat9:35 PM EDT Oct 30th, 2012

my problem is i dont tend to save my expressions or if i do i lose them. #mochat9:35 PM EDT Oct 30th, 2012

speaking of math, how adept are you power users? Do you survive without that trig knowledge? #mochat9:35 PM EDT Oct 30th, 2012

We should do something to make that not a problem. #mochat9:35 PM EDT Oct 30th, 2012

Did you ever use Expression Toolbox? #mochat9:35 PM EDT Oct 30th, 2012

i need an expression right now to get power on in lower manhattan and maybe some subways going so i can go back to work. #mochat9:36 PM EDT Oct 30th, 2012

It appears we’re at the link-sharing portion of the evening. Favorite resources to learn? Favorite links to expressions? #mochat9:36 PM EDT Oct 30th, 2012

another one i DLed and then never used #mochat9:36 PM EDT Oct 30th, 2012

loopOut is a great little expression that does just what is says loops between 2 kf, add 3rd kf it delays the loop by that amnt #mochat9:36 PM EDT Oct 30th, 2012

Start bugging for that one. They’re also working on a time-travel one at ‘s urging, too. #mochat9:37 PM EDT Oct 30th, 2012

think my main issue is after writing something up to get it portable fo ruse in other projects #mochat9:37 PM EDT Oct 30th, 2012

I have it, and have been using it, but it seems to have issues with line breaks & tabs for new expressions. #mochat9:37 PM EDT Oct 30th, 2012

quickwip> lightbulb to generator.. #mochat9:37 PM EDT Oct 30th, 2012

sooner you know how to plot those eases yourself the sooner you reach for em everywhere. #mochat9:38 PM EDT Oct 30th, 2012

That sucks up so much of my time. It’s easy to get caught up in that when (at the time) it just needs to get done. #mochat9:38 PM EDT Oct 30th, 2012

I have an evernote notebook with my frequently used expressions #mochat9:38 PM EDT Oct 30th, 2012

Still waiting on #FXPHD gathering of Expression on Bootcamp did we get that yet? #mochat9:39 PM EDT Oct 30th, 2012

saving them as an animation preset is handy. #mochat9:39 PM EDT Oct 30th, 2012

i learned a lot by threads at places like http://t.co/svSPRNiF great to learn by seeing people work through expression #mochat9:39 PM EDT Oct 30th, 2012

It will loop through any number of keyframes. #mochat9:40 PM EDT Oct 30th, 2012

yah, i have a page set up for that too. i just forget to use it #mochat9:40 PM EDT Oct 30th, 2012

itd be kinda cool if expression were more node base using the quickwip like Xpresso.. #mochat9:40 PM EDT Oct 30th, 2012

Doesn’t look like it: https://t.co/88le28dP #mochat9:41 PM EDT Oct 30th, 2012

RT : itd be kinda cool if expression were more node base using the quickwip like Xpresso.. #mochat9:41 PM EDT Oct 30th, 2012

ahh see I usually used only 2 then added the 3rd one for offset. so if my kf were 1 sec apart. the 3rd one could offset it #mochat9:42 PM EDT Oct 30th, 2012

or writing them was like a developer environment with autocomplete, suggestions, etc. i think adobe makes a few of those… #mochat9:42 PM EDT Oct 30th, 2012

I’d love that. I’m _this_ close to writing a custom Coda library to help write longer expressions. #mochat9:44 PM EDT Oct 30th, 2012

But it would be great to have autocomplete/suggestions in the Expression box instead of a “dumb” text field. (cc ) #mochat9:45 PM EDT Oct 30th, 2012

time is my favorite.. plug that sucker anywhere & you have infinite movement or evolution or whatever. 8) then add some Math.__ #mochat9:45 PM EDT Oct 30th, 2012

DMN!! Comon HARRY!! #mochat9:46 PM EDT Oct 30th, 2012

RT : “Expression example: Start or stop wiggle at specific time”: http://t.co/cIs5iDOx #mochat9:46 PM EDT Oct 30th, 2012

what about loopin and loopout? dont be a hater man #mochat9:48 PM EDT Oct 30th, 2012

not only do i second/third this, i infinity this… >_< #mochat9:49 PM EDT Oct 30th, 2012

yeah time rocks, use it often #mochat9:49 PM EDT Oct 30th, 2012

With about 10 minutes left, does anyone have questions on some basic Expressions? #mochat9:50 PM EDT Oct 30th, 2012

lupin makes your expressions hairy every full moon.. and then you gotta shoot it w/ a silver bullet.. #BadWolf #mochat9:50 PM EDT Oct 30th, 2012

: I use Codebox for things like this, easy to store data on Dropbox and link up to many machines.” #mochat9:50 PM EDT Oct 30th, 2012

I encourage you to submit feature requests here: http://t.co/yE59kCiY That’s the best way to have your vote tallied. #mochat9:50 PM EDT Oct 30th, 2012

Best way I know to turn expressions off is to link a variable to a slider you can animate. Works well for wiggle #mochat9:52 PM EDT Oct 30th, 2012

RT : If you’re looking for basic definitions and such for expressions, start here: http://t.co/XCpiQWO5 #mochat9:52 PM EDT Oct 30th, 2012

yep yep.. those expression controller I ignored for years are actually very handy.. #HeSaidMildlyEmbarassedToAdmit #mochat9:53 PM EDT Oct 30th, 2012

My main concern with expressions is that, for me, they tend to take longer to write/look up than to just keyframe/adjust manually. #mochat9:54 PM EDT Oct 30th, 2012

It depends on what you’re trying to accomplish, and how flexible it needs to be. #mochat9:55 PM EDT Oct 30th, 2012

the layer expression effect and sider expression effect i use all the time. #mochat9:55 PM EDT Oct 30th, 2012

I had a comp with hundreds of parented layers. A few sliders on the parent controlled all the children. Saved time. #mochat9:55 PM EDT Oct 30th, 2012

I’d say yes to that for overly complex ones. but the time you spend on the back end pays off during post time. #mochat9:55 PM EDT Oct 30th, 2012

tying expression params to the layer effect helps reusing complex expressions and retargetting to another layer #mochat9:56 PM EDT Oct 30th, 2012

personally i use scripts a bit and put them in my workspace as panels #mochat9:56 PM EDT Oct 30th, 2012

the posterize expression is also great when doing stop motion projects. can KF as usual but motion happens on X frames. #mochat9:57 PM EDT Oct 30th, 2012

feature request submitted! #mochat9:57 PM EDT Oct 30th, 2012

If someone is nervous about using expressions because they’re complicated, I recommend starting with these: http://t.co/EjcdTS8u #mochat9:57 PM EDT Oct 30th, 2012

distance to layer expressions can go a long way with that, actually. Write once, then save it for future. #mochat9:57 PM EDT Oct 30th, 2012

Which expressions did you use mainly for that project? #mochat9:58 PM EDT Oct 30th, 2012

posterizeTime is great! #mochat9:58 PM EDT Oct 30th, 2012

IMO 3 most extremely helpful expression terms to learn & use daily. time/value/index learn to use these and watch your skills grow #mochat9:58 PM EDT Oct 30th, 2012

Custom stuff based on difference of indexes btwn child & parent controlling z-distance, opacity, and solid composite. #mochat9:59 PM EDT Oct 30th, 2012

def need to try out posterize soon – great tip! #mochat9:59 PM EDT Oct 30th, 2012

I’d add valueAtTime to that list. #mochat9:59 PM EDT Oct 30th, 2012

the angle of the dangle is proportional to the heat of beat #mochat9:59 PM EDT Oct 30th, 2012

is there a hangout tonight after #mochat? I’m actually home in 10 minutes!10:00 PM EDT Oct 30th, 2012

Im down.. #mochat10:00 PM EDT Oct 30th, 2012

Ohh thats what I love about mochat I always learnz something. thanks PC.. #mochat10:01 PM EDT Oct 30th, 2012

I also have been using propertyGroup a lot for linking lately. #mochat10:01 PM EDT Oct 30th, 2012

Touche, that does sound nice to have a formula with a project like that. #mochat10:01 PM EDT Oct 30th, 2012

you guys are trying to cut into my xbox time arent you…. #mochat10:02 PM EDT Oct 30th, 2012

I was using that to trigger already keyframed animation at layer markers. Super useful. #mochat10:02 PM EDT Oct 30th, 2012

That about does it for tonight everyone. But feel free to keep the conversation going. #mochat10:02 PM EDT Oct 30th, 2012

Also, remember to help with #Sandy by donating to the Red Cross http://t.co/JbL92F2s or other efforts. #mochat10:02 PM EDT Oct 30th, 2012

If you have friends on the East Coast, get in touch and see how they’re doing. And let them know we’re thinking of them. #mochat10:02 PM EDT Oct 30th, 2012

And a reminder to everyone that there will be no #MoChat next week. Go vote in the US!10:02 PM EDT Oct 30th, 2012

[/learn_more]