Play an actual .riv, turn its live image into oil paint, vector splats, phosphor traces or an orbitable time volume, then export the entire player. The source stays a Rive document throughout.
Choose a timeline, or use state-machine inputs and pointer interaction.Drag the right view to orbit · wheel to zoomContinuous contour traversal; dim travel between disconnected contours01 / Official Rivejellyfish.riv02 / Custom WebGL2RGB time volume
256² × 64/64 frames · 64 steps · 576px output · x / y / time · 144 presented fps
A real x/y/time texture stack, raymarched front-to-back with Beer–Lambert opacity. The newest frame is at one end of the volume. Orbit around it to inspect the recent animation.
KEEP THE WHOLE WORKFLOW
Export a working browser player.
The HTML carries the original .riv, official runtime, WASM, pipeline settings and captured history. Open it directly in a browser. The layered-splat snapshot exports actual ordinary Rive ellipses.
Self-contained player: source, runtime, pipeline and captured image history.
RIVE → TEXTURE → RIVE
The final marks can be Rive too.
Compare fitted Gaussian shader splats with eight concentric translucent ellipses per mark, drawn by the official Rive renderer. Adaptive image patches put smaller marks around color changes; edge-aligned ellipses follow local gradients. Both routes use the same fitted marks and widths; very dark marks are omitted. A fixed ordinary Rive shape pool updates every display frame. It uses 24 or fewer source-derived colors and a bounded mark budget; the static snapshot export keeps full sampled color. This is per-frame 2D image fitting, not a trained 3D Gaussian scene. This illustrates an approximation with a real vector cost, not an arbitrary Gaussian feather feature in vanilla Rive.
IMAGE HISTORY AS A VOLUME
Time becomes the third axis.
Studio mode stores 128 actual 512 × 512 frames and raymarches up to 192 samples per ray. RGB, motion density and iso-sheets share that history. STM uses luminance as height; it is an image relief, not recovered scene depth. Beam traces ordered extracted contours into a decaying phosphor buffer.
RUNTIME OWNERSHIP
A working hybrid, with clear boundaries.
The imported artboard, timelines and state machines use official Rive. Oil, Gaussian splats, beam and space-time use custom WebGL2. The browser extracts image contours; the desktop beam also has original path access. Hybrid HTML is self-contained, but is not a native .rivx or GPU Canvas .riv export. GPU Canvas export status →