0 votes
asked in General Help by (120 points)
edited by

Video showing the issue (somewhat NSFW).

I'm adding PuppetMaster to my game, and I'm currently "porting" the modular armor system to work with PM. I'm adding the props, and creating/removing prop muscles in runtime, which seem to be working perfectly fine. I'm seeing that when the PuppetMaster.Mode is set to Active, the props start moving in an unwanted way, like if they weren't connected properly to the bones they were supposed to. In the video, the NPC to the left (purple) shows this problem. The second NPC (orange) is set to kinematic, and it shows no "armor dancing". I'd like to have zero dancing, like the orange one, but when the Mode is set to Active. Also, the armor pieces seem to be lagging behind when interacting with the ragdoll. That is also undesirable.

There's also a second issue. When I ragdoll the NPCs wearing armor, they contort unnaturally. This is shown more clearly in the orange NPC. The 3rd and 4th NPCs (without armor) show how the ragdolls should behave. My first thought was that might be the armor pieces' colliders messing with the ragdoll's, but it isn't the case since they are in non-interacting layers.

Thanks in advance.

1 Answer

0 votes
answered by (22.8k points)

You should not use the prop system to add armor like that. The added rigidbodies will change the physics too much and would also be too much of a drain on performance.

Instead, in case of a helmet, just parent the collider to the head rigidbody and parent the mesh to the head bone. The collider will then serve as a compound collider for the head rigidbody. It can be on a different layer, no problem with that.
commented by (22.8k points)
...just make sure the head collider doesn't have a Rigidbody of it's own. When you shoot someone, check for the layer of the raycastHit.collider to know if you hit the head or if you hit the helmet.

Welcome to RootMotion Q&A, where you can ask questions and receive answers from the developer of Final IK and PuppetMaster and other members of the community.

Post as a guest, create an account or login via Facebook.

Please use the correct category when you post your questions.