Peter Fedak
pzfedak.bsky.social
Peter Fedak
@pzfedak.bsky.social
Interested in all things puzzly
October 23, 2025 at 3:13 AM
July 18, 2025 at 10:34 PM
The constant allows for some tuning, but this is still a (possibly scaled) upper half plane model. Then the "correct" flight paths are the horocycle geodesics, which as it turns out are easy to compute analytically (see "hyperbola" in the shader).
February 2, 2025 at 6:57 PM
The other idea is around optical flow, looking at pixel motion speeds. Panning a distance s moves everything by s/y, the pan as a fraction of the viewport. Zooming from y to y+dy scales everything by (y+dy)/y, so the total flow is dy/y times whatever average of pixel radii we want (a constant).
February 2, 2025 at 6:57 PM
Panning a distance s at fixed zoom requires loading roughly s/y images (assume the viewport the size of an image). Zooming from y_0 to y_1 loads log_2(y_1/y_0) images, which we can pretend is a cost ds=dy/y for an infinitesimal zoom. But this is ds^2=(dx^2+dy^2)/y^2, exactly the hyperbolic metric!
February 2, 2025 at 6:57 PM
The first is inspired by digital maps, where there's a grid of images and each image turns into a 2x2 grid on the next level down. Consider the number of loaded images on your flight path as a cost to minimize. Call x the position of the center of the view, and y the side length of the viewport.
February 2, 2025 at 6:57 PM