I’d either use a simple method like parenting a grabbed object to the camera, or a physics based method like having a grab point permanently parented to the camera, then when the player tries to grab it creates a spring constraint (I assume UE4 has these too) with a spring strength based off of the weight characteristic of some new class attached to the grabbed object and a max force based off of some kind of slipperiness value?
e.g. An ice cube would have a high spring strength (because it’s small and doesn’t weigh much) and a low max force (because it’s ice) before breaking the spring,
Whereas a heavy box with handles would have a low spring force (to make it feel like it has inertia) but a high max force (because it’s easy to keep a grip of the handles).