Mastering Text Animation with Expression Controllers in After Effects
VloĆŸit
- Äas pĆidĂĄn 22. 10. 2019
- Follow along with Kansas City-based designer, video editor and SOM Teaching Assistant and alum Kyle Hamrick as we use simple rigs and some - gasp! - Expression Controllers to (mathematically) control various elements of your text-based animation.
schoolofmotion.com/tutorials/...
---------------------------------------------------------------------
Auto-Generated Transcript Below đ
Kyle Hamrick (00:10): Hey there. This is Kyle Hamrick with school of motion. In a previous tutorial, we looked at creative ways of using the after effects, text animator. Today, we're going to take some of those ideas even further and combine them with a few expressions to create some really cool, useful elements that would otherwise be really difficult or even impossible to build. If you didn't have a chance to watch the previous tutorial at a highly recommend watching that first, that lesson has an in-depth explanation of all the properties within the text animator. And while I'll be giving some explanations during this tutorial, you might get lost. If you don't already have a good grasp on how these work, there's a free project file included with the article on school of motion.com. But all the examples are things we'll be building from scratch directly with an after-effects. So let's get started.
Kyle Hamrick (00:53): The techniques we'll be covering are things I use all the time. And hopefully after this, you will too. We're going to begin by creating a simple rig that we'll use for the other examples. In this tutorial, it's also just generally really handy for this kind of stuff, and it helps to take some of the trial and error aspect out of it. I'm going to take a second here and show you my text settings. Everything we're using today is available on Adobe fonts. And just a reminder that you can use any type face you like your settings may just be a little different than mine. In the previous tutorial, we did a lot of creating these long lines of dots and then compressing the tracking to make a solid line. We're going to do that same strategy here, but we're going to make it more controllable.
Kyle Hamrick (01:30): So I'm going to begin by double clicking to highlight this whole line of text, and then just type one period. Now I'm going to hit you, you to reveal all properties that have been changed from their default. In this case, the source text is the only one that has. Then I'm going to click on this stopwatch here and we actually need the part that had already gave us. So we'll just hit the end key to go to the end of that. And then I'm going to type dot repeat with the parentheses. See the auto complete helps us out there, and then I'm going to type 10, right between the parentheses. So now it's taking a single character and repeating it 10 times. If you give it more characters, it would repeat that entire character string. This seems pretty helpful, right? So let's go ahead and set this up to 100.
Kyle Hamrick (02:15): Nice. And let's maybe come down here. We're going to condense the tracking. I found that about minus 2 75 is a pretty good value for this example. This is great, but I don't want to have to keep changing this value every time that I want to change the length, that's even worse than manually typing characters. But if we add effect, expression controls, slider control, open this up here. You could obviously access it over here as well. Let's go ahead and type 100 right here. If we link this up, now we can use the slider control to control this instead of a hard coded value. So I'm just going to click right here and then highlight this portion with the hard coded value. Let's use the expression, pick whip here, just drive that right to the cider control.
For the full transcript visit: schoolofmotion.com/tutorials/...
This is amazing!!! I guess you could think of a period (or Full stop) as essentially a single pixel or particle. If you think this way, this makes so much sense!
Last effect is so awesome! Thanks for sharing :D
This is amazing and I'll be using these techniques in a client project today. Thanks!
Crazy! Absolutely crazy! Perfect tutorial. Thanx a lot!
you guys are so amazing!!!! who the hell will dig so deep like you guys!!
Best tutorials ever. Open my mind for a new level in animation.) Never even thougt I can use text layers as a motion engine.
Thank you)
Mind totally BLOWN đ€ŻđŁđ§š Part II .
Thank you so much for this tutorial. Humbling experience!
THIS IS AMAAAAAZING ! Thank you Kyle!
Thanks so much to put Kyle Humrich Tuturial..He explain soo good..and make a wonderful things with just text.
Thanks. Mr Kyle.
I' m gone see it right now in my PC .
Saludos desde Sevilla..España
Marvelous, Well explained, I'll make time for this one day.
I really love how you can combine effects and properties to create nice looking effects. But it seems like a work around, it's hard to believe there still isn't any inbuilt taper stroke tool in after effects.
Can't tell how soothing and inspiring it was to watch this demonstration. â„
this is BLOWING MY MIND đ€Żđ€Żđ€Ż
interresting way to use text layer !! I apreciate the share
you are an amazing teacher, I really didn't knew that we can do so many things with text animators. Thank you for explaining very well.
Very good detailedTutorial - Thank you
THIS IS PURE GOLD
Great tutorial!
makes me realize how much time 3D stroke and particular can save you haha :)
WOW! Amazed!
If you are getting an error when you type "text.sourceText.repeat(10)" you need to do this to fix it. Check project settings > expressions, make sure javascript is chosen.
WOW! Absolutely Killer!
Yeaaaaaa!!!! THANK YOU!!!! both tuts are so good. School of motion has helped me go from đ© to đ„łđ€Ż
I knew this would come in handy eventually! You probably just saved me a couple hours of animating smoke manually. đ
You are a mad genius!
amazing tutorials. thank you for that
very well explained & useful !
Priceless! Muah
Thank you very much! Really a great tutorial â€
You can control the tracking amount with a slider as well. In my case the slider is called Density.
The expression could look like this:
text.sourceText.style.setTracking(effect("Density")(1)).setText(text.sourceText.repeat(effect("Length")(1)))
Pretty insane, a lot of this is reminding me of Particular, making me think they just rebranded the text animator haha!
Awesome tut always as before.. great stuff.
Glad you liked it!
Thanks a lot for this videotutorial
Great tutorial
Wonderful!
Perfect
superb
ĐĐŸĐ»ŃŃĐŸĐ” ŃпаŃĐžĐ±ĐŸ. ĐĐŒĐ”ĐœĐœĐŸ ŃĐŸ ŃŃĐŸ ĐœŃĐ¶ĐœĐŸ + ĐșŃĐ°ĐčĐœĐ” ĐŽĐŸŃŃŃĐżĐœĐŸ.
Good to know
i wish i could just know what expression to use at the right place just from my brain! i guess until then i'll just have to use masks, shapes, keyframes, and effects to achieve things like this but super cool tutorial, learned lots!
Check out our upcoming course, Expression Session! www.schoolofmotion.com/expression-session
you are amazing!
For anyone getting an expression error when using the slider, remember to add the extra bracket at the end of the code. The latest update misses it out.
Thanks Ryan. Appreciate you solving this issue.
thank you so much !
Thank you so much!
thanks a lot!
nice...
This is a really good tutorial.
Can you please make a video make a video about what are the best laptops for AE (like the one for desktop) in different price ranges? That would be very appreciated.
THANKS
Another great tutorial- but I wish the AE project was available in CC 2018 - since my workplace doesn't have Cc 2019 yet
Hi! IÂŽve the same problem. You should use this . "phrase = text.sourceText;
num = 5;
repeatString(phrase, num)
function repeatString(string, repeats) {
newString = "";
while (repeats > 0) {
newString += string;
repeats--;
}
return newString;
}
@@barbiewein thank you so much!
When i parent the shape slider to first margin and try to move the shape, the red box moves but not the actual shape any ideas why? I'm around 13.00
When I open his comps, the movements are inverted... I try to fix it with paragraph alignement or invert ramp up and down, but I couldn't. Someone else had this problem?
Thank you :)
I'm getting error while adding repeat expression to my text layer, it saying "text.sourceText.repeat is not a function" (I'm using latest version of AE)
You're using the old expression engine (or an old version of AE). Read through some of the other comments for the solution.
saludos, podrias hacerlo usando camaras 3d , gracias por la atencion
IN SANE
Right, What will Kyle think of next?!
this is so tough
I found the solution to a problem people have been having with the expression being disabled, just change your expression engine setting in your project settings from Legacy to JavaScript and you should be all set, cheers!
I can't find it.. Can you please help me out ?
@@prashantpinjari9906 To choose whether a project uses the JavaScript engine or Legacy ExtendScript, in the Project Settings dialog, click the Expressions tab, and change the Expressions Engine option. Projects saved in previous versions of After Effects default to Legacy ExtendScript.
@@xiaohuanye3955 I dont have Expressions Tab in the project setting
â@@prashantpinjari9906 If you go up to File > Project Settings and then click to the Expressions tab at the very end, change the expressions engine from "Legacy Extendscript" to "JavaScript" and then it will work.
đđ
I'm wondering why my text length only lengthens to one side (to the left; I would've at least expected it to go to the right), when yours is doing it at both sides? (Adobe CC2019.)
EDIT:
I'm using Myriad pro, 200px. Kerning at -275. The text is centered. I tried moving the anchor point, but it doesn't seem to do anything.
When I did the Masking, the line went over the view, and didn't follow the curve. It was just a diagonal line on top of my comp. I'm so sorry. Noob here.
EDIT2: Relented and used the same font. Yep. That was the only problem. Using Azo Sans fixed it.
there's actually a button to change direction at the path level of the layer
Just change your Paragraph to Center Text. Hope this will help.
Thanks for tutorial
it is repeat()
@@zohaibmalik819 Yes I wrote expression correctly with (). I'm just showing what error message says
Likewise ^^
me too
Oh right. It may then be showing error message with empty parenthesis as they need a value inside.
When you complete your courses did you give a certificate?
Hi Eduardo, we certainly do :) All you need to do is reach out to our Support Team when you finish up your course and they will be more than happy to get a Certificate of Completion over to you!
vientos
I am following along with this video, and when I download the material, the expressions work fine, but when I try and do them myself, I get an expression error for text.sourceText.repeat(100). The only thing I actually type myself is "repeat(100) the error says, "After Effects warning: Expression Disabled Error at line 1 in property "Source Text" of layer 1 '.' in comp 'dusty' text.sourceText.repeat is not a function. I am using AE 2020. Any idea what I could be doing wrong?
Maybe your font is too complex.
i have this problem,too.
So! If you're for sure using AE 2020 make sure your expression engine is set properly as well! in After Effects go to File > Project Settings > the Expressions tab > and set your expressions engine to JavaScript
text.sourceText.repeat(10) gives me an error. "~ is not a function." Could someone please explain?
oh never mind. it seems I have an older version of AE. this function is only available in AE cc2019 (and forward)
You can use a for loop to repeat the string that you require!
@@Samman-799 I am completely updated on my Adobe products and I get this same error. It's not an update issue.
ç„äčć ¶æïŒ
I got an error on "repeat()" function, AE said it is not a function. Anyone having the same issue?
Same here.
I hope someone give this man a novel price
Cool ((:))
Please help me at 3.07 when I use the slider to change the value. The line increses the lenght to the right instead of on both sides like yours. How could I pix this?
Check the alignment of your text in the Paragraph panel.
after effects uses js? that's pretty cool.
Yup! Just make sure to set up the proper settings!
lmao @ that one dislike
hi, i using the same method but "repeat()" is not working . after affect give an error "text.sourceText.repeat(100);" is not a Function. I am using After Affects 2020
You're using the old expression engine (or an old version of AE). Read through some of the other comments for the solution.
guys .. it's so confusing to choose one of your courses.. I've been asking so many people in the motion field to advise me to join one of your list.. but know body knew how to choose.. I believe that you have to make an explainer video of why and how to choose a course
Please let me take you to lunch one day..... PLEASE? LOL If no got to the Combine Pizza for me... LOL #KCSTANDUP
I'm hit with a problem right at the start. i get a "Error: text.sourceText.repeat is not a function" warning whenever i try adding .repeat() to the source text script.
Me too :-(
I had the same issue. If you go up to File > Project Settings and then click to the Expressions tab at the very end, change the expressions engine from "Legacy Extendscript" to "JavaScript" and then it will work.
@@benniilsen Thanks dude. Works now
Hi, Kindly help me with an issue as when I increase the slider value the text is not aligned to center anymore.
Use the alignment options in the Paragraph panel to ensure your text is aligned the way you want it. The setup shown here shouldn't have any major effect on alignment.
@@kylehamrickmotion Hi, I have tried changing that. But when I change slider value it messes up.
@@zohaibmalik819 Using a different font? Is your per-character alignment way off? CZcams comments are a pretty tricky place to diagnose something.
@@kylehamrickmotion oh yes! I am using a different font. I didn't know if that can cause an issue. Thanks for your help. I will check again.
@@zohaibmalik819 just make sure your per-character anchor point (adjusted in Grouping Alignment) is set where you want it, and that the Grouping Alignment is set to operate per character.
how to make the Beginning of the videoïŒ
man, this expression doesnt work anyway for me. I have put the same expression and After Effects disable the expression.
maybe an syntax error or language problem, AE say what wrong when you click on little yellow triangle
In project settings, last tab of java script menu, change it and it should work
â@@Hardik_P I'm in Java script engine and it still doesn't work.
Ha - just found out you need TWO "out" parenthesis at the very end of the expression! :)
not working on text.sourceText.repeat(10)
Make sure you are in the Javascript expressions engine, NOT the legacy extendscript. Go to Project Settings>Expressions then change it.
@@etv100 This worked for me thanks!
.repeat() doesn't seem to be a function, showing error
You'll need AE2019 to use it. That function doesn't exist in the legacy expression engine.
Kyle Hamrick - Thank's!
I found this script for CC previous version on Creative Cow. This worked for me. Try this.
phrase = text.sourceText;
num = 5;
repeatString(phrase, num)
function repeatString(string, repeats) {
newString = "";
while (repeats > 0) {
newString += string;
repeats--;
}
return newString;
}
I have a problem it says " Expressions disabled "
Does this only work in 2019? Tried it in 2018 and didn't work but works in 2019. I just don't wanna convert over to 2019 just yet lol!
Actually it works on my co-workers computer for AE 2019 but not mine saying it isn't a function?
@@bryanschumacker5417 Read the other comments. Only works in 2019, and only if you're set to the current expression engine. Yours must be set to legacy.
This is brilliant - my biggest problem I'm having though, is that AE gets super laggy when I add the slider and everything after that!
anyone getting an expression error when using the slider here's the code = text.sourceText.repeat(effect("Slider Control")("Slider")) END IT WITH AN EXTRA BRACKET
why do i get an eror
You're using the old expression engine (or an old version of AE). Read through some of the other comments for the solution.
#repeat Expression not working
You'll need AE2019 to use it. That function doesn't exist in the legacy expression engine.
@@kylehamrickmotion I have AE2019 and the repeat expression is not working
Confirm that you're not using the legacy expression engine (explained in another comment) and that you're writing it as I am.
@@kylehamrickmotion ohh you are right now it's working, Thanks
my option to text animate isnt coming please help
ÂżALGUIEN HABLA ESPAĂOL?
.repeat doesn't seem to be a function , showing error
You'll need AE2019 to use it. That function doesn't exist in the legacy expression engine.
Make sure you are appending the default expression, "text.sourceText.repeat(###)"
I had the same issue. If you go up to File > Project Settings and then click to the Expressions tab at the very end, change the expressions engine from "Legacy Extendscript" to "JavaScript" and then it will work.