🧪 Lava Lamp Simulation in 3D
The same metaball buoyancy, heating and viscosity physics as the 2D lava lamp — now a real raymarched fluid inside a 3D glass you can orbit around.
This 3D companion runs the exact same droplet physics as the 2D lava lamp — bottom heating, top cooling, temperature-driven buoyancy, gravity and a viscosity-controlled drag — but instead of a flat canvas of merging circles, each "blob" is a real point in 3D space inside a cylindrical glass, and the fluid surface itself is drawn with a genuine metaball raymarcher: a fragment shader marches a ray through the scene for every pixel, evaluating a smooth-minimum union of sphere signed-distance fields around every blob position so that nearby droplets visibly melt into and separate from one another in true 3D, exactly like the classic 2D metaball threshold did on the flat canvas, just with real depth, specular highlights and a rim light instead of a flat-shaded blob.
The color of the fluid is still driven by each droplet's temperature the same way — a field-weighted average of nearby blobs' temperatures shifts the hue and lightness toward the hot end of the palette as blobs rise from the heater and cool back down near the cap — and the live readout panel exposes the same state you'd have to infer from the 2D version by eye: the average temperature across all blobs, and how many are currently rising versus sinking, updated in real time from the identical velocity integration used by the visuals.
3D companion to the 2D lava lamp: the same bottom-heating/top-cooling buoyancy, gravity and viscosity-drag physics driving a real raymarched metaball fluid inside a 3D cylindrical glass, with a live temperature/rising/sinking readout.
3D · WebGL / Three.js r128 · 60 FPS target · runs fully client-side, no install