Contour
Luma as a topographic map, for Resolume

What it does
An FFGL effect for Resolume Arena and Avenue. It treats the picture's brightness as ground height and draws it the way a survey map does: isolines at a fixed interval, heavier index contours, hill-shading from the north-west, hypsometric tints, and a sea.
It's the cartographer's method, so you get the cartographer's quirks too. Contours crowd on steep ground and open out on gentle ground, because their spacing is the interval over the slope. Each line is drawn from its distance on the page rather than its distance in height, so it's one pen width on a cliff and on a plain. Noise makes an unreadable map until the height is generalised, which is what Smooth is for.
The shoreline is just the isoline at sea level, so a flood follows the terrain: raise the sea and it pours into the low ground first and leaves the hills as islands. Route Resolume's audio to it and the sea breathes with the loudness, or surges on a hit and drains away.
Moving footage becomes a moving landscape. Flat ground has no contours: below a slope of about one code value over eight pixels the lines fade out instead of scribbling across a sky or a wall.
- Isolines at a fixed interval with heavier index contours every N
- One pen width on the page at every slope
- Analytical hillshade with azimuth, altitude and Z factor
- Classic or mono hypsometric and bathymetric tints
- A sea whose shoreline is the isoline at sea level, raised by audio level or onsets
- Smooth to generalise noisy pictures, and a guard that keeps flat ground clean
- Universal macOS bundle and a Windows x64 DLL
Where it stands
v0.1.0, and early days. It hasn't been loaded into Resolume on macOS yet. On Windows it has: a build loads, registers and renders in Resolume Arena 7.27.1 on software rendering (no GPU), with every parameter as declared, but the audio controls couldn't be tested because that machine has no sound device. The audio path has only seen synthetic spectra, and nobody has measured what Resolume's 64 FFT bins carry. Everything else is measured by an offline harness driving the real plugin class at two rasters: a ramp crosses the stated number of contours, isolines sit interval / slope apart, every contour on terrain whose slope spans 8:1 is the same 1.20 px wide on the page, planes of known slope shade to the closed-form hillshade, the sea covers exactly the pixels below sea level (0 of 921,600 wrong at 720p), and a noisy plateau sitting on a contour level draws no ink at all. It catches sixteen models I broke on purpose and a one-character sabotage of its own shader, and all 30 swept controls change the picture. Render cost on macOS at the defaults is 1.28 ms a frame at 4K. There's a user guide and a browser demo, but no presets and no OpenFX port. Try it in your own rig before you trust it in a show.
Watch it running
Nothing loads from YouTube until you press play.Watch it there instead