How would I go about creating a deforming viscous blob that could interact and absorb

I’ve been toying with the idea of creating a katamari damacy style of game but with a blob and some added physics combat. I wanted the blob to start out simple but the player must build up forward momentum and crash into walls, glass, and other large objects in order to pick them up (essentially momentum breaks the wall and fragments get absorbed by the blob).

As the blob picks up objects it can use the added weight and heft of what its picked up in order to smash tougher walls or swat at enemies. Different objects have different weights to them so picking up things like paper don’t add much of anything. The blob doesn’t grow infinitely though, it constantly sheds weight as it moves and swings at things.

The momentum is easy enough but I’m not sure what path to take in order to create a believable blob where the mesh deforms based on what its touching. I thought it would be awesome if the blob could slowly squeeze through tight spaces such as doorways, deforming as it goes. Objects to big stuck to the blob get “scrapped” off.

The project is in C# btw.

Also this is my first Unity project on my own (up till now I’ve been following a book/tutorials).

Ragespline in the asset store could do this. Just grab a blob object then animate it. Scale it up when you want it to get bigger and scale it down to get smaller. As it gets smaller generate small sub blobs.

Thats a 2D solution though. I wanted to go with something 3D where you can survey the scenery from an overview perspective.