Troubleshooting PHAT

I don’t know if it’s just me, but I’ve always found the Physics Asset Tool to be buggy as all get out.
I’m trying to create a simple setup for my mech skeletal mesh. I’ve got the legs separated from the torso, so the number of bones is really limited. I’ve got 5 capsules on the pelvis, thighs, and calves and then 2 boxes for the feet. Everything looks like it should work fine:

Then I set up my constraints and I notice some odd behavior… when I parent the thighs to the pelvis, the constraint marker is placed in the center of the pelvis instead of where the two capsules meet… then I parent the calves to the thighs and the market is placed where the thighs meet the pelvis. Weird. I set up some simple limits to the swing motion leaving 1 set to limited 45 for every constraint and swing 2 and twist locked. This is what happens when I simulate:

How the heck am I supposed to troubleshoot this? lol

I always do this step by step bone by bone and never had this kind of issues.

Try it step by step

Sorry? Try what step by step? Building the physics asset? Yeah, that’s what I did and these are the results I got. How else can you do it? I’m not aware of a way to automate physics assets.

Here’s another example. I deleted all of my collision and re-built it again, this time I didn’t use the copy and paste properties that I used the first time.

Inside PHAT my collision looks fine (though the constraint locations are still messed up)

but if I turn on collision in the editor, this is what it looks like:

The leg capsules and the foot on the left side are all in different places than they show in the editor.
I’m not exaggerating when I say the PHAT is ALWAYS buggy like this for me. Since the Rocket Beta.

OMG, it keeps getting weirder. So I was trying to update the collision positions to get them into the right place, and apparently, their movement direction is inverted? I had to move the foot box up to get it to go down… Here’s a dual monitor recording:

The movement of the collision boxes and constraints is all locally from the rotation of your bones. So when your bones are off the system can not automatically align it perfectly. Constraints should be one the position of the actual knee or place where the constraint should happen.

Furthermore make sure that the collision between overlapping capsules is inactive.

Make sure that your rig has no weired scaling which can make problems. Best is to apply your rig and object scales in your 3d creation tool (like Blender) on export.

Yeah, I hear you. But how would my bones get off? I just made this as a clean rig in 3ds max yesterday. Far as I know, there’s nothing special you have to do with making bones in Max aside from drawing them in the viewport you want them to rotate in. Everything is fine in max.
The one thing I did do is I scaled the mesh down to 0.5 on import, but I don’t see how that would cause bone translation issues.

Maybe the better question is how do you detect bones that are wonky and how do you fix them?

So I imported my rig into Blender, and discovered that it looks like all the bone rotations are off. I barely know how to use the program, but I’m guessing the bones aren’t supposed to be running perpendicular to how they do in Max…

If I figure out a fix I’ll post it, but most likely I’ll re-rig in Blender.

I rebuilt everything from scratch inside Blender this time and basically the same issues. The constraint positions are placed really oddly and the collision shapes jump to weird positions when I simulate. If this happens with a rig from 3DSmax and Blender, I think the problem is with PHAT and not what I’m doing.

Would love it if anyone else could give some insight into what’s happening and why.

Basically, all the bones must have a x1 scale, everything in general should have a x1 scale in your model, apply it to the meshes and to everything, if on the contrary there is any bone in a different or inverse scale, it will break everything inside unreal.

I recommend you to do it in Maya, blender does not export FBX correctly, although there are some plugins that fix it

I hope this helps you.

I used to use 3D studio max exclusively and I’ve always had this problem. I never scale bones. This is why I’ve always felt like the problem is with PHAT and not the 3D program I’m using. In almost a decade of using Unreal I haven’t got a physics asset from a custom character rig to work. I never noticed issues with constraints until after 4.20