Skip to content

Releases: stoatworks-labs/crumple

Release list

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 23 Sep 01:37

Crumpled paper, as an FFGL effect for Resolume Arena and Avenue. The clip is printed on a sheet that is crumpled under a desk lamp: big folds first, then smaller ones inside them. Each facet is flat and the facets meet along straight creases, because paper bends one way without stretching but not two. Where the sheet tilts the print is pulled in, solved one Fourier mode at a time, so a straight line crossing a crease kinks there. No texture laid over a picture can produce that. Flatten smooths the sheet and leaves the crease marks.

What is verified

By tools/verify.sh on an M4 Max, macOS 26.4, on 2026-09-23:

  • Across a straight ridge of slope 0.5 the print pulls in by ½s²·2W = 0.03000 of the frame, to within 1.1e-4 at the finer Details, in x and on its side in y, with no sideways stretch.
  • The print is read from x − u to 4.5e-6.
  • Each facet of a known ridge is lit by Lambert to 1e-7, under lamps from two directions at two rasters.
  • A ridge's shadow ends within 2.2e-3 of H/tan e.
  • Crumple 0 is exactly the picture, padded host textures included. Crumpling only ever deepens the sheet, and its facets tile the frame.
  • Every host GL binding comes back as the host left it.
  • 6 deliberately wrong models, all detected. All 20 swept parameters measurably change the picture.
  • Render cost: a still sheet 0.1–0.3 ms/frame, a moving one 2.3–2.9 ms, 720p to 4K. These are macOS figures only.
  • Loaded, registered, listed and rendered in Resolume Arena 7.27.1 on Windows on 2026-09-23, with all 26 controls matching their declarations and all 22 swept controls moving the picture. This was on a software rasteriser (Mesa llvmpipe) in a VM, not on a GPU.

What is not

  • Never run on a GPU in Resolume, never loaded into Arena on macOS, and no frame timing taken on Windows.
  • The stretch is the small-slope one, and the sheet is a heightfield that never folds over itself. The lamp is directional, with no bounce light, and the sheet's edges are held to the frame's.
  • No real audio has reached it in a host.
  • No user guide, no browser demo, no OpenFX port, no factory presets.

The macOS build is signed and notarised; the Windows build is unsigned, so SmartScreen warns once.

Full Changelog: https://github.com/stoatworks-labs/crumple/commits/v0.1.0