[SOLVED] Collision Shape to match a Skinned Mesh?

I’m having an issue where I want to raycast to the surface of a character (composed of a bunch of skinned meshes).
I can figure out how to get a regular mesh collision working by simply assigning the Render Asset attribute appropriately and then having a sort of shadow character which is a bunch of rigid bodies + meshColliders who are transformed by the animations in scripts.

The issue is these mesh colliders aren’t skinned and so don’t match their visuals perfectly.

Is there support for collision skinned meshes in playcanvas?

If not, is there support in ammo.js? Could someone point me to the relevant documentation in Ammo/Bullet as I’m having a hard time parsing it myself currently.

Thanks!

Hello @charles.yanmiller,

As far as I’m aware, Ammo.js does not support Skinned Mesh collision, and by extension nor does PlayCanvas. I recommend you instead put various primitive colliders in place of the limbs, which would have a similar effect.

Thanks for the quick reply.
When posting this I didn’t realize skinned mesh collision was still not a real-time feature that most physics solutions supported.

Unfortunately primitives colliders will not work for me as the casts have to be perfect, but I think I can do the raycasts and all proceeding logic in un-skinned-space and then just modify the transforms of the skinned-mesh accordingly.
Thank-you!

1 Like