I used to be a heavy user of After Effects, I am wondering if there is a similar effect to echo in Blender. That is used for simultaneously showing a specific animation in the future and the past simultaneously.

Edit: In addition to Leanders answer below, is there a simple way to fade the transparency or change colors of the frames before and after.

Perhaps somehow linking the generator setup with the frame duplication to a transparency node?

Thank you


There is a function which creates a very close effect to the one you're describing.


In the Properties Panel, go to the object section and under Duplication, select Frames.

Duplicates of the object in its state from the specified Start and End frame are shown on all frames. To create the echo, set a keyframe on both properties.

Then, go to the graph editor and add a Generator modifier to both curves. By choosing a lower offset for the Start Frame property you will have a span of frames which are shown.

Start Frame = -10 + 1 * x
End   Frame =  10 + 1 * x
  • $\begingroup$ Thank you! This was exactly what I was looking for! greatly appreciated. Now is there a way to change the color and/or opacity, of the frames in the future or past? $\endgroup$ – Nick Sieben Jan 3 at 2:02
  • $\begingroup$ @Nick I added another answer, with which's method this is possible. However it is not as straightforward as I don't know animation nodes very well. You could edit your post to include the prerequisites of changing color etc as well to receive other/more fitting answers. $\endgroup$ – Leander Jan 3 at 11:52

Using Animation Nodes

You can use the animation nodes addon. Install it and enable it. Then, in the Nodes editor a new Node Type button will appear: the animation nodes node type.

With it we can create time offset instances and modify the material of those instances.

motion trail

I am using a vertex color Col, which is modified for each instance.

This is the animation nodes node tree.

animation nodes tree

I won't explain every node in detail, as they are well documented.

  • On the left hand side there is a group of three nodes which
    1. get a reference to the animated object Cube
    2. create instances of it
    3. plug the list of instances into a loop.
  • The loop receives a list of objects and a reference to the original object. The list of object will provide a reference to 1 instance on each run of the loop.
  • In the loop, the fcurves for translation, rotation and scale are evaluated at a time different to the frame right now. The evaluated frame is offset -1 of the current frame per loop run. This is how the objects are offset in the 3D space. Obviously, this doesn't account for other deformation like modifiers (armature), shapekey and other.
  • $\begingroup$ Leander, thanks for the help, how would I reverse the opacity, copying what your formula is My leading frame is invisible, and my tailing frames become more and more solid. I would like to reverse that. $\endgroup$ – Nick Sieben Jan 11 at 15:41
  • 1
    $\begingroup$ @Nick Switch the BSDF inputs of the Mix Node (from the shader in the first image). $\endgroup$ – Leander Jan 11 at 18:39
  • $\begingroup$ cool I'll try that out, I actually threw in a reverse list between my instancer and invoke subprogram and it worked like a charm $\endgroup$ – Nick Sieben Jan 11 at 18:56

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.