Using Materials to 'morph' objects into eachother?

How would I go about creating a material that uses the World Position Offset to move verts that are close to another object towards said object? Essentially morphing the 2 into a single ‘blob’.
Like shown below.

103850-diagram_01.png

This is to be used for globby dirt that will be cleaned up by deleting one of the ‘globs’, and having multiple globs blending into each other.

What we’re trying to achieve would work perfectly if we could get a similar effect as with the DepthFade node (if it worked for opaque materials), and use that information as black and white for the WPO.

We’ve been experimenting with distance fields, and the “DistanceToNearestSurface” node, which has been fairly close, but there seem to artefacts in a kind of 3d grid around the world in the distance field which causes the globs to go towards them. There’ also the issue of scale, the globs will be quite small, so the distance field resolution doesn’t seem to be enough for it.

It would also work if the morphing only happened when they intersect and morph along that point

It will have a similar effect to some kinds of voxels, however we wish to avoid using voxels if necessary

the thing closest to mind is perhaps metaballs: Custom Material Node: How to use and create Metaballs | Live Training | Unreal Engine - YouTube (1h+ stream about it)