
Digital Rain
Background3DSeamless loop12 seconds
A line of bold text that ripples like a flag: every letter rises, tilts and changes colour as a wave passes along it. Loops perfectly.
In Liquids, Text & data
Next: Digital RainSurprise me
Your current settings go with it. Combine several clips and hand them over together from your sequence.
Presets
The preview runs the same code your AI receives. These settings travel with the hand-off.
A line of text that ripples like a flag in the wind. Every letter rides a travelling sine wave: it rises and falls, tilts with the slope of the wave, swells a little on the crest and shifts colour along a gradient as the wave passes. The wave makes a whole number of cycles per loop, so it repeats forever. Type the words, pick a gradient (sunset, ocean, mint or mono), how many waves run through the line per loop, how high they rise and the backdrop colour.
src/wave-text.js is the ingredient your AI reuses. demo.js is only the example scene around it, and uses the demo harness only for the demo.
src/wave-text.jscreateWaveText({ text?, gradient?, waves?, amplitude?, weight?, maxWidth?, fontFamily? }) => { draw(ctx, info, width, height) }GRADIENTS: { sunset, ocean, mint, mono }apw-runtime@1.0.0 (demo) — Demo harness. The reusable source has no dependencies.Coordinates: Centred; the line is scaled to fit 84% of the width; wave height is a fraction of the type size.
Lighting: A soft drop shadow lifts the letters.
Timing: Pure function of info.progress (or time and duration).
npm install
npm run render -- wave-text/1.0.0 --out my-video.mp4Needs Node 18+, ffmpeg and Chrome/Chromium. Add --params my-settings.json (from Copy settings) for your own settings.sha256:93cd4f46bbf1c919…
Background3DSeamless loop12 seconds

Text layer2DSeamless loop6 seconds

Text layer2DSeamless loop10 seconds

Full example2D6 seconds

3D object3DSeamless loop20 seconds

Text layer2D4 seconds

Text layer2D5 seconds

Text layer2D8 seconds