scroll (0 to 1)Camera depth, the colour of the sky, the moon and the glow of every window are expressions on scroll, for example the camera is z: '989 - scroll * 5200' and a window's glow is alpha: 'smoothstep(0.45, 0.75, scroll) * …'. The page does one thing: movie.setVars({ scroll }) on every scroll event; events that arrive during a rebuild are joined. The clouds, the lamps and the camera's sway are ordinary keyframes, so it is still a film while you stand still. The same city as a file at dusk: pixi-effects render scroll-city.html --var scroll=0.6.