Recipe 54: Zoom

    General Principles

    • 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.


    • jit.gl.videoplane
    • jit.gl.pix


    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.

    by Andrew Benson on
    May 31, 2012 7:18 PM

    • esnho
      Jun 10 2012 | 12:20 pm
      Nice! I'm really fascinated by gen/pix but, I don't understand it clearly.
      How can I give an offset to the radial gradient center?
      Thank you very much.
    • Some_Guy's icon
      Some_Guy's icon
      Jun 10 2012 | 9:42 pm
      Hi there - Max user here, kinda curious (but also completely ignorant) about Jitter and Gen. Every time I have a bit of a sniff around (for example, by reading about this Zoom recipe) I'm still completely lost. And d'ya know what I reckon would help a LOT? (AN) EXAMPLE(S) OF THE PATCH BEING USED!!! (Please...)
    • Kat Steih's icon
      Kat Steih's icon
      Kat Steih
      Mar 06 2016 | 5:48 pm
      How can I input, instead of a live feed, a still image or a pre-made video into this Zoom effect?
      Thank you so much!
    • Max Gardener's icon
      Max Gardener's icon
      Max Gardener
      Mar 06 2016 | 8:32 pm
      Kat, type the phrase "play a video" in the upper right-hand text box in any patcher window and hit the carriage return. The entry at the very top in the documentation window that will open has a "t" in a box. That means it's a tutorial. Click on that entry and read on. It should tell you everything you need to know.
    • 👽It W∆s ∆lienz👽's icon
      👽It W∆s ∆lienz👽's icon
      👽It W∆s ∆lienz👽
      Mar 08 2016 | 6:38 am
      in the upper right-hand text box
      ...i didn't mean to make you feel self-conscious about calling it a 'lozenge' in the other thread. perhaps you didn't pay it any mind, but just wanted to make sure you didn't take offense. was just finding it cool and creative, but my humorous tone doesn't always translate well here. i'm trying to be more careful these days. anyways, perhaps i didn't need to say this, but figured i would anyways. 'Just Do You' :)