Armature/Bone collisions with other objects in scene?

I have modeled a character and created an associated rig/Bone structure for it. I want the rig/mesh(s) to interact with other passive rigid bodies in the scene. (feet to touch but not pass through the ground/walls) I also want the ability to have the rig “ragdoll” and be able to collapse if left to “dynamic” and not being controlled by “animation”. How do I accomplish this?

1 Like

Blender has the ‘magnet’ tool, where you can align a selected object (face, edge, vertex) to another object.

But if you are using Blender physics, then you need to mark physics objects active and or passive.

The rag doll is the active object, which has speed, weight, friction
Other parts (walls) are passive. To understand this better, you could do the GameDev bowling challenge.

Note: i must say, this is a difficult matter. You probably need to configure your armature bone setup also. Fixating arm and leg rotations. Start with a simple object like a bouncing sphere.

Have fun.

1 Like

To me it sounds like you want a game engine not Blender…
It’s not that what you’re asking is impossible to do, but it is quite complicated to pull off.

I think this video could be of use to you, it goes over how to do a simple ragdoll (though I would advise using primitive shapes in rigidbody constraints instead of convex hull like he does for better performance). It’s a good starting point imo.

To switch between ragdoll and armature animation you would likely have to keyframe some of the rigid body contains to be active/inactive during specific parts of the animation. An easier way to do this might be to simply have two versions of the model, one rigged for armature animation and one for ragdoll physics then substitute in the armature one for the ragdoll one at a specific frame. That wouldn’t work though if you wanted partial ragdoll.

What you’re asking to do could probably be turned into some 1-2h mini-course, it’s in my opinion too complex to go over in a comment. Not only would we have to do the legwork of figuring it out for you but also write a whole article on how to do this…


Thanks for the responses, it certainly seems like I would need to get another system of “hitbox” meshes in order for it to function as I was envisioning. For the scope of my project that probably is something I would have to do later on if I wanted it work that way.

1 Like

Privacy & Terms