Disabling Physics for Skeletal mesh Bugs Transform

Hi,

Just check out the Sample project at

I tried to debug this for quite a few hours… It appears that Meshes with uncommon Bone hierarchy get their Transform altered somehow to the root of the bones while the world or relative rotations of the Component stay the same.

Hi aWinter,

Could you explain the expected behavior a little better. Everything seems to be working as I would expect it to in your project.

-Matt W.

The Behavior is:

The Mesh falls down, stays there. after 4 Seconds Simulation Physics is disabled the Mesh snaps to some weird Transform.

The Expected Behavior is: The Mesh falls down, stays there. After 4 Seconds Simulation Physics is disabled the Mesh STAYS at it’s location and doesn’t snap to a random Transform.

Hey aWinter,

There isn’t a way to lock skeletal meshes into their simulated positions by disabling physics. When you disable physics, it goes back to playing the animinstance pose. However, since you’ve simulated the entire skeleton, the root has moved. This is why it appears in a random location. To see what is happening, try adding the skeletal mesh to your player pawn and using the “showdebug bones” console command.

So, your best option here is to modify your constraints in the Physics Asset (might I also suggest using a box or convex body instead of a sphyl). You’ll want to set the linear limits for the head to “free”. Then you’ll want to use “Set All Bodies Below Simulate Physics” using the mixamorig_Head bone instead of enabling physics from the component details. You can use the “Put Rigid Body to Sleep” node to manually sleep the simulated asset, but it should sleep on it’s own after settling. It can then be set to awake by anything colliding with it.

-Matt W.

Thank you for your effort Matt. While your suggestion didn’t really change the result I’ve got a solution!

If you set Component Tick to disabled, add a short delay and then disable physics it will work as expected!