Escapement
A video feedback rig and its fractals

What it does
Escapement models an optical video feedback rig: a camera looking at a screen that's showing what the camera saw a field ago, through glass that splits the light into several paths, with a proc amp in the cable and an operator riding the gain around unity. It comes as two plugins, because FFGL resolves one entry point per binary. SW Escapement is a source, and SW Escapement+ (Escapement Feed before v0.1.6) is an effect that injects your clip into the loop, so the fractal gets built out of your footage instead of laid over the top.
The fractals are what the loop settles into. Nothing in it works out a fractal. A tap is one path from the screen back into the camera, a set of taps is an iterated function system, and the attractor of that system is the fractal, so the Sierpinski rig is three affine maps and the gasket assembles itself out of sensor noise. The Koch snowflake is a four-tap curve plus a three-fold mirror wedge, which is something you could actually build with glass.
The endless zoom comes free with that. The camera's zoom is a multiplier applied to the picture every field, and no coordinate is stored anywhere, so after a thousand fields at 1.02 the magnification is a number that doesn't exist anywhere in the plugin. There's nothing to overflow. The Julia and Mandelbrot rigs are the exception, because they're the only part that holds a coordinate, so they get double-float arithmetic to reach about 1e13.
Leave every knob alone and a rig converges on its attractor and stops, which is a theorem, so there's no fixing it. Real rigs never settle because somebody's always nudging the cameras, so Drift is that somebody: slow, at rates with no common multiple, and scaled by how stiff each rig is. It's on by default in all twelve presets.
Where it stands
Released at v0.1.8. v0.1.3 made the factory presets survive a host that quantises values and one that ignores them; v0.1.4 only changed the Windows installer, which no longer touches the system PATH (the earlier one could overwrite it); v0.1.5 gives both plugins a proper description in the field Resolume shows; v0.1.6 only changed the names Resolume lists them under, now "SW Escapement" and "SW Escapement+", so the Stoatworks plugins sit together in its browser; v0.1.7 is maintenance (the log-folder override now reads ESCAPEMENT_LOG_DIR, where it had been reading another plugin's variable); and v0.1.8 fixes the source failing every frame in a host that never sends it a resize. Both plugins load and run in Resolume Arena 7.27.1 on macOS and on Windows, where the release gate passes 15 of 15: right uid and category, 52 controls matching in name, order, type, range and default, real content rendered, and the picture still moving three seconds later. That first contact found a bug nothing offline could: the effect's name shipped cut off as "Escapement Feedb", because FFGL carries sixteen characters and doesn't give an error. The Windows run is Mesa software rendering, so it says nothing about an NVIDIA or AMD driver, and the only hardware GPU it's run on is one Apple Silicon Mac's. There's no OpenFX build: an OFX host renders any frame in any order it likes, and a loop with a history can't answer that.
Watch it running
Nothing loads from YouTube until you press play.Watch it there instead