I'm having trouble figuring out a good way of getting sprites to alter their shape after interactions or triggers, which I need as a game mechanic for a puzzle game.
For example, I don't know how to make a circle get 'stamped/crushed' into a (smaller or equal-sized) square, or have a sprite generally act like play-dough when it comes to objects pressing into it (squished or pulled into a shape).
So far, my only idea is to manually make animations for each re-shaping, but that seems too clunky to work with, especially when interacting with other objects (barring tricks like hiding animation/sprites shifts behind other sprites), and doesn't allow for making the 'shaping' into a proper game mechanic.
Is there a better behavior/physics way of going about this 'morphing' of a sprite than just basic animations?
EDIT: Another idea I got would be that the morphing sprite treats instances of 'on overlap/on collision' by morphing its shape (not position!) so that it's no longer doing so. This should in theory make is so that it will get 'squished' by an object (until it stops moving), but I'm not sure how to make the actual morphing happen in such a case...