Destructible has Buggy PhysX Location

I’ve made a video recording of this issue to help illustrate the problem.

I have a destructible mesh object that I am attaching a UPhysicsConstraintComponent to.

If the destructible hasn’t yet moved or been fractured in the scene, I can attach the rope to the destructible and pull it around and everything works exactly as expected.

If however the destructible is moved (via physics) and then I try to attach my constraint, the constraint ends up snapping to an odd offset that seems to be relative to the distance the destructible has traveled. It feels like the physics representation of the mesh location is incorrect.

I’ve validated that FHitResult’s Location parameter on collision and can verify that it is correct. So this seems somehow related to the joint creation. This is how I create the constraint:

// Attach segment to the thing we hit
// hitResult is a FHitResult
UPhysicsConstraintComponent* ballSocket = NewObject<UPhysicsConstraintComponent>(hitResult.GetActor()->GetRootComponent());
ballSocket->ConstraintInstance = RopeSegmentConstraint;
ballSocket->SetWorldLocation(hitResult.Location);
//ballSocket->AttachTo(hitResult.GetActor()->GetRootPrimitiveComponent(), NAME_None, EAttachLocation::KeepWorldPosition);
ballSocket->SetConstrainedComponents(dest, NAME_None, segment->GetRootPrimitiveComponent(), NAME_None);

I have the same problem, have you solved this issue?

I never found a solution, we removed this feature from the game.

Maybe my codes in this question might help you, but probably this solution will cause new problems. Seems like UE4’s physics constraint system is very full of bugs.