Metaballs are rendered using ray marching in a fragment shader on a surface that is slightly larger than the radius of the metaball itself. You can enable _ShowPadding in the UI top right to see all the pixels that are ray marched. Metaballs that don't interact with each other are rendered using a sphere mesh for optimization.
The rendering loop is running in a separate worker using an OffscreenCanvas.