← Gallery № 57 · webgl

Bioluminescence

Deep sea jellyfish pulsing with bioluminescent glow and drifting plankton.

What is Bioluminescence?

Bioluminescence puts glowing plankton into night water. A drifting flow field carries the plankton, a pulse term makes them flare rather than glow steadily, and fbm shapes the wave bands they ride, so the light arrives in soft swells instead of a uniform haze. Glow intensity and wave speed are the live parameters, and the file accepts ?p= to render at reduced resolution. It requests an alpha-enabled WebGL context, so it can be layered over your own dark background, and it honours prefers-reduced-motion. Most of the frame stays dark water, which makes it one of the few backgrounds here that body text can sit directly on top of.

Bioluminescence is a free WebGL web effect in the TappyPrism library. Deep sea jellyfish pulsing with bioluminescent glow and drifting plankton. It is rendered on the GPU by a fragment shader, so it costs almost nothing on the CPU and works well as a full-screen background. It ships as a single self-contained HTML file (bioluminescence.html) with zero dependencies — no npm package, no framework, no build step. It exposes 2 live parameters — Glow Intensity, Wave Speed — adjustable in the browser or at runtime.

Parameters

ParameterKeyRangeDefault
Glow IntensityGLOW_INTENSITY0.3 – 21
Wave SpeedWAVE_SPEED0.2 – 21

How to add Bioluminescence to your page

  1. Download the standalone file bioluminescence.html and copy its source into your project.
  2. Or embed it as a background iframe:
    <iframe src="https://prism.tappypotato.com/fx/bioluminescence.html" style="position:fixed;inset:0;width:100%;height:100%;border:0;z-index:-1" title="Bioluminescence"></iframe>
  3. Tune it at runtime with postMessage:
    iframe.contentWindow.postMessage({ type: 'param', name: 'GLOW_INTENSITY', value: 1 }, '*');

Frequently asked questions

What is Bioluminescence?

Bioluminescence puts glowing plankton into night water. A drifting flow field carries the plankton, a pulse term makes them flare rather than glow steadily, and fbm shapes the wave bands they ride, so the light arrives in soft swells instead of a uniform haze. Glow intensity and wave speed are the live parameters, and the file accepts ?p= to render at reduced resolution. It requests an alpha-enabled WebGL context, so it can be layered over your own dark background, and it honours prefers-reduced-motion. Most of the frame stays dark water, which makes it one of the few backgrounds here that body text can sit directly on top of. Bioluminescence is a free WebGL web effect in the TappyPrism library. Deep sea jellyfish pulsing with bioluminescent glow and drifting plankton. It is rendered on the GPU by a fragment shader, so it costs almost nothing on the CPU and works well as a full-screen background. It ships as a single self-contained HTML file (bioluminescence.html) with zero dependencies — no npm package, no framework, no build step. It exposes 2 live parameters — Glow Intensity, Wave Speed — adjustable in the browser or at runtime.

How do I add Bioluminescence to my website?

Download the standalone file at https://prism.tappypotato.com/fx/bioluminescence.html and copy its source into your page, or embed it as a background iframe: <iframe src="https://prism.tappypotato.com/fx/bioluminescence.html" style="position:fixed;inset:0;width:100%;height:100%;border:0;z-index:-1" title="Bioluminescence"></iframe>. Tune it live with postMessage, e.g. iframe.contentWindow.postMessage({ type: 'param', name: 'GLOW_INTENSITY', value: 1 }, '*').