Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Activity Forums Adobe After Effects Wave displacement effect

  • Wave displacement effect

    Posted by Fabian Bosman on December 8, 2019 at 10:55 am

    Hi people,

    I was wondering how I can get this effect.
    I’ve tried everything for the last 3 days and I have no idea.
    I tried echospace and the shape repeater effect but they dont give me the kind of offset/stack effect.
    I know how to repeat a text but it is the kind of stacking effect that I want to create and want to animate in and out.

    If this can be done with only one text layer that would be nice.

    Thanks,
    Fabian

    Fabian Bosman replied 6 years, 5 months ago 2 Members · 2 Replies
  • 2 Replies
  • Richard Garabedain

    December 9, 2019 at 9:04 pm

    your not thinking 4th dimensionally. which is time.,,if you animate from both top to middle and bottom to middle at the same time, pre comp that then offset a few layers that would give you what you want…then you can mask out the copies to five you that sliced in half look as shown above

  • Fabian Bosman

    December 9, 2019 at 9:34 pm

    Hi Richard,

    Thanks for your response.
    I was not looking for a time displacement effect. I wanted to keyframe and control how much the offset
    was going to be and animate it back and forward.

    I finally found several ways to get the effect.

    1. You can use expressions linked to sliders to easily control the offset of all the layers with one slider.
    You have a ‘Control layer’ on the top with two sliders, one for X and one for Y.

    The first text layer is not linked so stays in the middle.
    The second and other layers have this expression in the position parameter, you have to seperate the dimentions first
    so you have a X and Y position. The code below will work for the Y offset

    spacing = thisComp.layer("Controls").effect("Y Offset")("Slider").value;
    currentTextHeight = sourceRectAtTime().height;
    layerAboveYPosition = thisComp.layer(index - 1).transform.position[1];

    layerAboveYPosition + (spacing / 100) * currentTextHeight / index

    This code will work for the X Offset:
    spacing = thisComp.layer("Controls").effect("X Offset")("Slider").value;
    currentTextWidth = sourceRectAtTime().width;
    layerAboveXPosition = thisComp.layer(index - 1).transform.position[0];

    layerAboveXPosition + (spacing / 100) * currentTextWidth / index

    2.The easiest method is Trapcode echospace.
    First you make a comp with your text in the middle. make the comp height almost the same height as your text.
    Then create a black solid and place it behind the text. Make sure there is a little bit of room on the top and bottom of the text, this will create the little gap between the text repeats.

    Drag this text comp in a new 1920×1080 composition and apply the Trapcode echospace effect.
    Offset the Z depth so the overlap is visible, to make the text the same width as the front text, you can use the offset scale to compensate for the difference in size.

    I had another method that works the same way. But I forgot how that one worked ☺

    For people who want to see the technique>>>
    Here you can download a little setup with the expressions already working.
    https://drive.google.com/open?id=1fRUzikljPvplhBVyM_h3syOVoAHPG4YP

    Greetz,
    Fabian

We use anonymous cookies to give you the best experience we can.
Our Privacy policy | GDPR Policy