Auto-adjusting blinking cursor | After Effects Tutorial

Sdílet
Vložit
  • čas přidán 28. 06. 2024
  • Everything you need to create stunning videos! ► bit.ly/motion_array ► Get a 50$ discount on your annual subscription through this link!
    In this after effects tutorial, I'll show you how to create a custom, auto-adjusting blinking cursor with two expressions. ► Download the project file here: gumroad.com/manueldoesmotion
    Content:
    0:00 Intro
    0:15 Animating a typewriter
    1:15 Adding a layer controller
    2:00 Everything you need to create stunning videos
    2:23 Attaching the Null Object to the width
    3:36 Adding a custom cursor
    3:53 Blinking cursor
    5:03 Outro
    Some of these links are affiliate links. By purchasing through this link I earn some money at NO extra cost to you. It’s a Great way to support my channel! Thanks!
    ► Software: Adobe After Effects 22 (I use the "Default" Workspace in my tutorials)
    If you have any further questions, let me know in the comments below. I do my best to answer all of them!
    ► Subscribe to my channel here:
    / @manueldoesmotion
    I am very curious how this tutorial inspired your work!
    Put the link in the comments below or even better: tag me on Instagram.
    ► @manueldoesmotion
    ► / manueldoesmotion
    ► my website: www.manueldoesmotion.com
    ► behance: www.behance.net/stein-hauser
    #aftereffectstutorial #animation #motiondesign

Komentáře • 65

  • @madebydbm
    @madebydbm Před rokem +1

    That's very clever. It's an effect I find myself making a lot but I've always done it manually, hadn't thought to link the cursor to the text width. Thanks!

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem

      Awesome! I used to do it manually as well, which was really annoying. So I started to play around a little bit :)

  • @EvilDogFilmsOfficial
    @EvilDogFilmsOfficial Před rokem +30

    For me the formula had to be
    w=effect("Layer Control")("Layer");
    [w.sourceRectAtTime(w.sourceTime()).width]
    Including the sourceTime() to account for placement on the timeline and also clip shifting

    • @imanqoly
      @imanqoly Před rokem +3

      your modification saved my day .... thanx

    • @EvilDogFilmsOfficial
      @EvilDogFilmsOfficial Před rokem +2

      @@imanqoly The amount of time I found that one comment that saved me hours of headaches, glad I'm finally the one helping someone :D

    • @imanqoly
      @imanqoly Před rokem

      @@EvilDogFilmsOfficial 🙌

  • @JosepMotion
    @JosepMotion Před rokem

    It worked! This was pretty useful right now. THANKS!!

  • @gaston.
    @gaston. Před 10 měsíci +1

    excellent.. thanks for sharing.. I prefer this method over the others that are overly complicated

  • @entidadalan4967
    @entidadalan4967 Před rokem

    Fantastic Manuel. Thank you teacher. So good! ✌🏻🍀💫💫🍀

  • @gtiboogiemann
    @gtiboogiemann Před 2 měsíci

    Amazing tutorial perfect for a very specific animation I must do for work!

  • @MESHK0FF
    @MESHK0FF Před 9 měsíci +1

    Thanks for idea
    Advantage: Full control over cursor
    Downside: scale range selector will not treat space as scale increase, so cursor will jump through any text space to beginning of the next word, looks a little bit clunky.

  • @MayAai00
    @MayAai00 Před 2 měsíci

    thank you so much for sharing this!

  • @amritaaryan
    @amritaaryan Před rokem +3

    Gr8 tutorial. Really helpful. One thing I want to add is rather than adding the scale property and then animating it, u can simply use the 'Typewriter' effect from the effects panel. It's just a preset of the same animation. I hope u find it helpful

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem +1

      Awesome! Thanks very much for the tip!

    • @AugustMarlin
      @AugustMarlin Před rokem +2

      Only that you have to replace default 'opacity' animator with 'scale', as the width won't change otherwise ;)

  • @KamranKhan-hc2sp
    @KamranKhan-hc2sp Před rokem

    grate tutorial
    really helped a lot...

  • @codelearning9624
    @codelearning9624 Před 26 dny

    Fantastic!

  • @nyetre7665
    @nyetre7665 Před 8 měsíci

    THANK YOUUU!

  • @unfoldlab
    @unfoldlab Před 9 měsíci

    Magic tutorial!

  • @hellofilmeditor
    @hellofilmeditor Před měsícem

    amazing

  • @maxmccabe9221
    @maxmccabe9221 Před rokem

    Thanks Manuel! I use this all the time. Is there a way to make the cursor go down to the next line after a paragraph break?

  • @onclebobify
    @onclebobify Před rokem +1

    Hello Manuel! And thank you for a very nice tutorial. I have a small problem I need your help with. The Width slider is not updating with the right value at the beginning of the animation. So for example, when I have the 4 first letter of my first word the width is still showing 0,00. When the width of the text layer is bigger than the with of my null object then it begins to move the null object. Do you have any idea my I get this delay? I tried resizing the noll object without any success. Thanx again!

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem

      Hi Alexandre, sorry for my delayed response. I am on holiday this week. Could it be the anchor point position of the Null Object? I’ll look into the project next week to see what else it might be.

  • @vlopez5
    @vlopez5 Před 3 měsíci

    Genio total !

  • @Martu45919
    @Martu45919 Před 4 měsíci

    GRACIAAAAAAAAAAAAAAAAAAAS

  • @1379rooms
    @1379rooms Před rokem

    Amazing tutorial, thanks you for it !
    I have one issue, the whole expression doesn't work if everything is not at the very beginning of my comp.
    To be clear, if the layers are in the middle of my comp, the width value won't change. Do you have any idea why ?
    Tshüss :)

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem +1

      Generally, if you have expressions. Never move layers around, that will mess it up.
      If you want the animation to start later, you need to move the keyframes along your timeline.

    • @1379rooms
      @1379rooms Před rokem

      @@ManueldoesMotion very clever solution ! thank you so much for the tip :)

  • @samirdesigner3324
    @samirdesigner3324 Před rokem

    thanks
    how make this to presets to we can use to any time by one click ???

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem +1

      You're welcome! I think it can't be saved as preset. I would save the comp somewhere and import it whenever you need it.

  • @JosepMotion
    @JosepMotion Před rokem

    I was doing a 3 text lines with this.
    I kept getting an strange error when duplicating the 3 items (text, null and cursor) and updating the expressions and even the layer control:
    Null stopped working when updating the "Source Text".
    After a lot of trial and error I was able to fix it, by deactivating the expressions before updating the "Source Text".

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem

      When I need several lines of text, the easiest way for me is to copy the comp in the project window and simply use a separate comp for each line.

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem

      I’ll try it with deactivating the expressions.

  • @veryseriousperson
    @veryseriousperson Před 5 měsíci

    Awesome...What if I want to use it in Arabic language which text starts from right to left...I tried to use it but the cursor moves towards the opposite direction..

    • @ManueldoesMotion
      @ManueldoesMotion  Před 5 měsíci

      You have to invert the width value. By adding another line:
      w=effect("Layer Control")("Layer");
      inv = w.sourceRectAtTime().width*-1;
      [inv]
      You probably have to adjust the position of the cursor.

  • @daimonxart8253
    @daimonxart8253 Před 8 měsíci

    For some reason the null object lags behind the writing, as if it didn't continue but it did just like that, I don't know what it would be.

  • @Leyero_editor
    @Leyero_editor Před rokem

    First expression doesn't update slider value, rechecked it multiple times

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem

      You might want to check out the project file…

    • @EvilDogFilmsOfficial
      @EvilDogFilmsOfficial Před rokem +1

      For me I needed to do to make sure you don't get any weird time offset based on where the clip is on the timeline and how offseter it is on itself
      w=effect("Layer Control")("Layer");
      [w.sourceRectAtTime(w.sourceTime()).width]

    • @victoriaprado739
      @victoriaprado739 Před rokem

      @@EvilDogFilmsOfficial Save me! Thank u!

  • @wasimnatfaji6342
    @wasimnatfaji6342 Před 3 měsíci

    Width idea not working if you have multiple lines

  • @samirdesigner3324
    @samirdesigner3324 Před rokem

    how to use to RTL ?

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem +1

      What is RTL?

    • @samirdesigner3324
      @samirdesigner3324 Před rokem

      @@ManueldoesMotion right-to-left (RTL)

    • @ManueldoesMotion
      @ManueldoesMotion  Před rokem

      @@samirdesigner3324 That should work as well. You need to right align the text. Then subtract the width from the position instead of adding it.

  • @grafinject
    @grafinject Před rokem

    Hi :)

  • @Marforaep
    @Marforaep Před rokem

    Yo

  • @TehAuroraWolf
    @TehAuroraWolf Před 7 měsíci +4

    dude you need to slow down a bit with this tutorial. I had to back track so many times because I missed something you said way too quickly to follow through perfectly.