Interpolation to loop



  • So I make this animation from 1-200 frames, but if it is an animation that loops I need to make the last frames towards 200 close to 1, so it looks smooth in the animation.
    Is there setting so I can automatically interpolation back to 1 ?



  • add a couple more frames, opent the keyframe editor, highlight everything in frame 1 and drag to last frame. That should copy everything in frame 1 to last frame.



  • @mikael as @rlowens68 mentioned, having the first and "last" keyframes identical is a good start, but you also want to consider the slopes of interpolated keyframe values being smooth, so if you have a multi-cycle animation within the loop, look at values either side of a similar point in the cycle and copy their values to corresponding points before the last keyframe. It is also sometimes obvious that there is a repeating frame which can produce a visible stutter, so you can consider rendering the animation to exclude the last frame and just use it for interpolation.

    You might also want to look at enabling both loop and quaternion interpolation under the animation menu. Loop is the primary one to consider, but if you have any rotating objects which exceed the -180 to +180, or 0 to 360 range, quaternion interpolation will eliminate the strange things which can happen when frames are interpolated between one cycle, say 365 degrees (= 5 degrees) and 10 degrees. Midpoint should be 7.5, not 187.5 degrees.



  • By the way, Loop Interpolation has a really irritating and persistent defect, which is easily seen.

    Open New document, set it to 10 frames, set it to 4 fps, click in Linear Interpolation, go to frame 5, make Andy (or anything else) go up on frame 5 to say Y=0.5, click in Loop Interpolation.

    Now go to frame 10; you'll see Y is back down to 0.

    It so happens that frame 1 also has Y=0, so now you have frame 1 and frame 10 with exactly the same poses, so frame 1 is effectively showing up twice (given that frame 10 is now the mirror of frame 1, instead of being the last interpolation point towards cycling back to frame 1).

    So when using Loop Interpolation you need to set your Play Range to be 1 less than the actual range of frames, so that you'll have smooth interpolation, otherwise you'll have the "hiccup" of the first frame showing up twice. Really annoying.



  • @rlowens68 Thx and drag to last frame? How does that work, can I drag backwards? sorry for my noob question. How do get start and end next to each other?

    To the others, thx for input, I find linear easiest to control.
    The most often issue is editing something in the middle, then the interpolation mix up, so there I need the editing grap to pull up and down in parameters.



  • Mikael, a technically simple (layman) way to loop your 200 frames perfectly is to:

    • extend your play range to 400 frames
    • copy the 200 frames (select all and Ctrl + C)
    • go to frame 201 and paste (Ctrl + V)
    • ensure that you have a smooth transition around frame 200
    • play/render from frame 100 to frame 300

    If you have keyframes on frame 100 and 300, then move the key from 300 to 301 to avoid a glitch in the loop.
    This method would give you a perfect 200 frame loop.



  • @mikael said in Interpolation to loop:

    @rlowens68 Thx and drag to last frame? How does that work, can I drag backwards? sorry for my noob question. How do get start and end next to each other?

    To the others, thx for input, I find linear easiest to control.
    The most often issue is editing something in the middle, then the interpolation mix up, so there I need the editing grap to pull up and down in parameters.

    In Animation Palette, Alt-click-drag creates a copy of your keyframe in some other position.

    Before doing the alt-click-drag, be sure to have "All Elements" clicked, and then click (+) on your source frame, to be sure all morphs & parameters are keyed (otherwise you'll loop only some morphs & parameters and not others).