The dolly zoom effect (also known as the “zolly” effect) is an incredible perspective technique used in cinema. The first time I saw this effect, I was captivated. In the final season of the epic cinema marathon Breaking Bad, one of the most plot-twisting & dramatic scenes is defined by this short cinematic effect: the effect lasts a mere 1.5 seconds.
In an effort to create a technically perfect zolly, I built a motorized camera slider using an Arduino board and a few stepper motors. The camera lens focal length (zoom) is constrained to the motion of the camera along the slider (dolly). I can set multiple control points along the path of the slider, allowing for precise and synchronized control of the lens zoom ring, lens focus ring and slider position.
For lack of a better subject, I used a bottle of Heinz ketchup to make my first successful zolly video.
Ramp Prototype
As a proof of concept, I first built a mechanical prototype. This prototype used an adjustable ramp to constrain the lens focal length to the camera position along the slider. While using this ramp, I discovered that my camera lens did not have a proportional zoom. This meant that a 10 degree rotation of the zoom ring would change the focal length by 10mm at the wide/lower end (e.g. from 18mm to 28mm) but only 5mm at the upper end (e.g. 50mm to 55mm). This variation led to a non-linear relationship between the zoom and camera position, resulting in an imperfect zolly effect where the subject would not remain exactly the same relative size in-frame throughout the effect. (A mechanical solution to this non-linearity would have been to build a curved ramp instead of a straight ramp. However, a curved ramp would have restricted the zolly effect to one focal distance from the slider.)
In short, the mechanical ramp provided a good proof of concept, but I would achieve the most precise control of the zolly effect using motion control with independent stepper motors.
GUI Prototype
As part of a future development to this zolly project, I developed a web interface to control the motorized slider. This interface would replace the PlayStation controller. Depending on your browser & screen size, you may be able to interact with the interface below.