Download

Detect precisely which bone is hit

Hey, I’m trying to wrap my mind around a collision system that would allow me to pinpoint which bones of 2 skeletal meshes are colliding. I’ve tried with hit events, but no hit events are generated when 2 animated skeletal meshes, both with a physical asset, are colliding.
Then I tried overlap, but I can’t find the point of impact, the hit event it returns always show 0,0,0 . Any idea on how I would make such a system in UE4?

Couldn’t you do a line trace to the location of the hit and break the hit result to get the bone?

The hit event isn’t happening when my 2 skeletal mesh are colliding against each other. I use the physic asset themselves so I can get a more precise result than a capsule. I use the capsule for world interactions, and physic assets for character interactions. They both have a physic asset that interact with static meshes and are both set to trigger hit events but the physic assets aren’t interacting with each other. The mesh are set to “block all” too. How would I get that hit event? The overlap sweep result, when I try overlap instead of hit, only returns a position of 0,0,0. Also, if I use the overlap system on the mesh as a whole (because physic assets are not using the overlap system), I might miss some collision events if two collision happens at the same time on the same body. I could place different invisible shape as components on my character body parts,assign the different bones to a shape, and check when these shapes hit something , but the physic asset is already setup and usable. It would be kind of disapointing to use another system to interact with other skeletal meshes.