Skip to content

Releases

Slipstream v0.1.0

Choose a tag to compare

@github-actions github-actions released this 25 Oct 08:21

The first release of Slipstream: jumps to hyperspace, warp jumps, a wormhole and a black hole for Resolume Arena and Avenue, as two FFGL plugins. SW Slipstream (SR01) is a source: space, with stars in it. SW Slip Over (SR02) is an effect in which your clip is the view out of the front window. (A slipover is also a knitted tank top. FFGL gives a plugin sixteen characters for its name.)

The one idea: a camera flying through space with its shutter open. Nothing draws a streak. A star sits at some depth and some distance off the line of flight, the camera moves on while the shutter is open, and the star's image runs outward from the vanishing point for as long as the shutter lets it. Speed up and the runs get longer. A streak comes out as bright at its tail as at its head, because the star's image speeds up as it nears and the star brightens by the inverse square, and the two cancel; and a star's light doesn't change when it stretches, it spreads. Past one pass of the field per shutter the lines stop depending on speed: the steady radial lines of being in transit.

Four looks. Hyperspace: points stretch into streaks as the camera accelerates, a flash, the steady lines of transit, and with Tunnel the later films' mottled tunnel; dropping out shrinks them back to points. Warp: the rubber band draws space in towards the vanishing point, it snaps with a flash, a ring and a horizontal streak, and stars fly past one by one with their colours split along them. Wormhole: the picture twists into a whirlpool and a mouth of cloud swallows the frame (clouds, because one fondly remembered sitcom's model unit made its wormhole from whipped-up cloud footage), out through a white-out. Black Hole: Schwarzschild's, from tables of the exact orbits, built once in double. You can't see an event horizon; you see its shadow, about two and a half times its size. The stars (or, in the Over, your clip) are lensed into arcs and an Einstein ring, the thin disc's far side is lensed up over the top, its light is a blackbody seen through the Doppler and gravitational shifts (bluer and far brighter on the side coming towards you; Doppler at 0 switches that off, as one well-known film did), and the corona, added up along each bent ray, makes the bright photon ring at the shadow's edge on its own.

Getting there and back: Drive is Hold (Engage on goes in and stays), Trip (each Jump press is a round trip), Loop (round trips for ever) or Fader (Journey is the trip, and you can scrub it).

Controls: Look, Drive, Engage, Jump, Journey, Entry Time, Transit Time, Exit Time, Cruise Time; Cruise Speed, Top Speed, Heading X, Heading Y, Field of View, Shutter; Stars, Star Colour, Exposure, Flash, Tint; Tunnel; Stretch, Dispersion; Swirl, Clouds; Hole Size, Disc, Disc Tilt, Disc Size, Disc Heat, Doppler, Corona; the Over adds Clip Depth, Clip Through and Mix.

Downloads: a universal macOS build (Apple silicon and Intel) as a .dmg or .zip, and a Windows x64 installer (-setup.exe) or .zip. Each carries both plugins: Slipstream.bundle and Slipstream Over.bundle on macOS, Slipstream.dll and Slipstream Over.dll on Windows. The macOS build is now Developer ID-signed and notarised (signed on 2026-10-25, after publication); if macOS refuses a download, it's from before that, so download it again. The Windows build isn't signed, so SmartScreen warns once.

What is measured (offline, by tools/verify.sh on an Apple M4 Max under macOS 26.4.1, driving the plugins' own classes in a headless GL context at 1280×720 and 320×180 and on Apple's software renderer):

  • Streaks. One star in flight against a simulation of an open shutter (400,000 instants, every copy of the star's column): light per unit length within 0.9% all along the streak, its whole light within 0.06%. Its whole light at rest and at three speeds (streaks up to 108 px) within 0.11% of its flux through the shutter. Past 1.5 and 2.5 passes of the field per shutter, the line's light within 0.44% of the simulated periodic field.
  • The Over. At rest, in all four looks, at both rasters, with Stars at 0 and the default Cruise Speed, the clip comes back with 0 of 3,686,400 channels different in 8 bits, and a hair into a jump it keeps 90% of its gradient energy. A point of the clip under hyperspace's smear in a jump becomes the predicted evenly lit line holding A / k of its light (28.05 against 28.07); cruising smears none of it.
  • The black hole. The orbit table against the weak-field series to third order (within 2.6e-4), Bozza's strong-deflection limit (within 5e-6 rad, 2.1 turns round the hole) and a quadrature of the first integral (8.1e-6 rad). The black disc within 0.06 px of Synge's formula; a dot behind the hole makes a ring within 0.03 px of the harness's own ray tracer; Doppler 0 mirror-symmetric to the last bit and Doppler 1 18 times brighter and bluer on the approaching side, from the geometry; the face-on disc within 0.32% of the harness's own rays, Shakura–Sunyaev and √(1 − 3/r); the corona within 0.51% of the harness's own integral, with its brightest ring on the shadow's edge. At the start of the approach, 100,000 GM/c² off at a Field of View of 120°, wherever the hole bends light by under a tenth of a pixel the Over gives back the clip to under a level in 255 on average (0.43 to 0.79). The frame that crosses the white hole late holds a median 3% of plain space's light, as the share of its shutter before the crossing says it should.
  • Drive, clock, colour, state. Trip comes back from every Transit Time of a whole number of frames from 0.2 to 5 s at 60, 50 and 30 fps (675 of them), and Loop leaves within a frame of every Cruise Time the slider gives (3,003 of them); under the Fader a looping ramp's wrap flies a hundredth, not the whole trip backwards; every frame's step within 3.7e-9 of a sixtieth of a second's flight at a host clock of 499,000 s; the blackbody colours within 0.0031 of the Planckian locus in CIE 1960 uv; no seam at the branch cut; a raster change mid-flight bit-identical to a fresh run; both plugins hand back the GL state they were given.
  • The Wormhole's streaks. Every streak whose ends the whirlpool turns more than 0.8 rad apart is gone; every one under 0.2 rad is whole.
  • The checks can fail. Twenty deliberately wrong models each fail their check, and twenty-three one-character mutants of the shipped GLSL and C++ are all caught. All 67 parameters over both plugins change the picture. The bundles are universal, and oxbow sees SW Slipstream / SR01 / source and SW Slip Over / SR02 / effect and renders 120 frames through each.

On Windows it has been in Resolume. The fleet's Arena gate ran it in Arena 7.27.1 on win-lab (software rendering, no GPU) three times, the last on this release's own download: both DLLs load, both plugins register (SR01 a source, SR02 an effect) and appear in Arena's lists, all 37 and 41 controls match their names, order, types, ranges and defaults, the names at FFGL's 16-character limit come through whole, each renders, and Arena's log stays clean: 15 passed, 0 failed, 2 skipped, each time. Measured against stills, 18 of the source's controls changed the picture outright and 21 or 22 of the Over's; Engage, the four times and Flash act only over time, which a still can't see. Software rendering says nothing about a GPU or about speed.

On macOS it's never been loaded into Resolume; the fleet's test host, oxbow, is the only host it's run in there.

Found before release, and fixed. Writing the user guide and making the video turned up what the checks had not looked at, and each fix now has a check that fails on the bug: the first half second of every black hole approach was a black frame streaked with radial lines (the orbit table stopped short of the approach); behind the hole the Over's clip sat up to half a pixel out and a little soft; Loop never jumped at Cruise Time 2 s or 20 s; a looping ramp on Journey replayed the whole trip backwards at every wrap; the Hyperspace Over softened the clip at rest; a white hole crossed late in a frame showed a frame of plain space between black and white; the Wormhole drew straight lines across the frame on its way out and cut from white to dark in one frame whatever Flash said; Swirl did nothing in transit; and at wide Field of View the black hole's sky cut stars at its cube seams (that one checked by eye).

What isn't verified, or is a limit. The looks were judged by eye on harness renders, not against footage. The black hole doesn't spin (Schwarzschild, not Kerr), and everything nearer it than the photon sphere (the plunge, and the white hole on the far side) is a named cheat. In Hyperspace the clip rides ahead and never gets nearer, which is the one cheat in the smear; in the Wormhole a streak whose ends the whirlpool turns apart fades rather than being drawn straight, the one cheat with its stars. At the default Top Speed the Wormhole's clouds flicker at the frame's edges in transit (a tenth of Top Speed steadies them), and with Tunnel up and a short shutter the tunnel rings at the vanishing point. No beat sync: to jump on the beat, map Jump to a beat in Resolume.

Cost: median GPU frame times with glFinish both sides, on an Apple M4 Max, measured on a quiet machine just before the last fixes (benched back to back with the build before them, the release came out within a quarter either way in every row, with no pattern): 0.34–1.50 ms at 720p and 1080p for Hyperspace, Warp and the Black Hole, 1.5–2.9 ms for the Wormhole; at 4K 1.9–5.1 ms, and 10.9 ms for the Wormhole. Nothing was timed inside Resolume.

Not done. No presets and no OpenFX port.

Read more