How to build a physics-based grabbing mechanism without arm stretching issues

I’m working on a physics grabbing system similar to wobbly character games. My current setup allows the character to grab objects successfully, which works fine for picking up items. However, I’m running into a major issue when the character grabs onto surfaces like walls or ledges. When I try to move the character while maintaining the grip, the arms get unnaturally extended and stretched out. This creates an unrealistic and broken-looking animation. I’ve been troubleshooting this problem for several days now, trying different approaches to maintain proper arm proportions while keeping the grab functionality intact. Has anyone dealt with similar physics constraints in character controllers? I’m looking for suggestions on how to prevent the limb stretching while still allowing natural grabbing interactions. Any help would be greatly appreciated.

IK constraints work great for this. Set max reach distance and let the solver handle the rest.

Physics joints can mess with grabbing. Instead of letting the arms stretch too far, try moving the character’s body closer to the grab point. It keeps things looking more natural.

Try checking distance before you grab to make sure the object’s close enough to look natural. Two-bone IK works great too since it clamps the elbow and gives you proper arm bends instead of that weird stretchy look.

Try a spring joint instead of a rigid connection between the hand and grab point. The character gets pulled toward the surface when they’re too far but can still move naturally. Also, check the hand-to-shoulder distance each frame and break the grab if it exceeds your arm length limit.

I had that problem too. You might want to limit the distance the grab point can be from the shoulder. It helps keep the arms from looking all stretched out.