How to Build a Loop That Does Not Announce Itself

A good animated loop never shows its join. The viewer should be able to watch it ten times without feeling the restart, and that is harder than it sounds. A few craft decisions make the difference.
Start with the motion. Anything that moves in one direction, such as a rotation or a conveyor, loops easily if the end position matches the start position exactly. The trouble comes with ease. If an object slows down at the end and speeds up at the start, the viewer feels a pulse every cycle. For a continuous loop, we use linear or very gentle timing on the part that carries through the join.
Next, break up the rhythm. If every element completes its cycle at exactly the same moment, the loop has a clear heartbeat, and the eye catches it. We offset elements so that something is always mid-movement when something else resets. Different cycle lengths help: a three-second rotation behind a five-second light sweep takes fifteen seconds to repeat as a whole.
Hide the reset. If something has to appear or disappear, we do it at a moment when attention is elsewhere, behind another object, during a camera movement, or in a flash of light. Cutting while the eye follows something else is a trick borrowed from film editing.
Sound deserves its own attention. A visual loop that is perfect can be spoiled by an audio clip with a hard edge. We crossfade the end of the audio into the start, or design the sound as a bed that has no obvious beginning at all.
Finally, check it as a viewer would. We play the loop at full screen and then play it again, for several minutes, while looking away. If the join does not draw your eye on the tenth pass, it is ready.
Examples of our motion work can be found on our work page.