Recipe 54: Zoom
- Download the Recipe 54 patch
- Other tutorials in this series:
Book 1 (Recipes 00-12), Book 2 (Recipes 14-25), Book 3 (Recipes 26-43), Book 4 (Recipes 44-49)
- See all Recipes
- Creating an endless zoom effect
- Making a circular mask with Gen
This is a classic use of Jitter to create a sort of endless transition effect. This recipe is also a great example of how sometimes the best effects come from how something is controlled, not just advanced visual processing tricks.
To create a constant, overlapped zoom effect we use two identical jit.gl.videoplanes being fed the same masked image. The jit.gl.pix object is just applying a circular, feathered mask to the alpha channel of the image to create a soft vignette.
Most of the action of this effect is centered around the counter object at the top. The jit.gl.videoplane on the left is getting scaled directly from the counter output. The expr is there to make the scaling look more like perspective zooming than just linear scaling, which would appear to slow down as it got bigger. As the counter reaches half of its range, the layers are swapped, and the loop of the righthand jit.gl.videoplane begins.
The overlap is accomplished by offsetting the counter output by half the range and then performing a modulo on that. This makes it so that each videoplane has the same looping time, but they are half of a loop offset from each other. By combining these simple attribute sequencing techniques, we get a nice perpetual zoom effect. To further develop this idea, you could create multiple videoplanes with loop offsets that are some ratio of the loop length and come up with a system for managing layer rotation. You could also think of other sorts of effects that use pairs or multiples of images that have overlapping attribute sequences.