Is it possible to let all the bones fall to the ground? i.e. bones = rigid bodies?

I wanna make an animation of a skeleton breaking apart and falling to the ground. I have to use an existing armature because I wanna export the animation for Unity’s Humanoid rig. Is it possible? I’ve been searching for an answer for quite a while.

Say Bone2 is parented but not connected to Bone 1. I “child of” constrain them to rigid cubes. The cubes fall, and Bone 1 is obviously copying its cube, but Bone 2 isn’t behaving the way I want (its not only being affected by the cube, but by Bone 1 as well).

As a “workaround”, I’d even manually animate the bones falling, except it’s going to be very difficult since they’re all parented to each other and no way to independently move them. Or is there?

1 Like

Child-of acts after parenting, so what its parent does still affects it. You want to Copy Transforms from something instead.

1 Like

That’s a great suggestion and allows me to manually animate the bones falling independently of each other. I can simply Copy transform them each to a cube of their own (although creating and placing cubes is a bit tiresome… they also weirdly have to have -90 degree rotation to align properly with the bone… but whatever), then animate the cubes, then Bake action (with Clear constraints and Visual keying checked) on the bones.

1 Like

Even though I was able to create a Rigid body sim of an exploding skeleton with this method - WHILE keeping all my bones’ proper parenting to each other - I was unable to make Unity humanoid rig understand this animation. (generic works just fine) I guess Humanoid just doesn’t understand when bones become that far apart from each other.

Yeah, a lot of it would be easier scripted. I would expect there to be some addons somewhere that would do it.

If you don’t want to place by eye, you could always use a copy transforms going the other way (object copies bones transform), apply visual transform, clear object constraints.

It’s pretty easy to do world->world copy transforms constraints, since those are the defaults. I get a lot of use out of shift-ctrl-c hotkey, which constrains actively selected to selected. It’s something I’m comfortable enough with that making a copy transforms constraint is easy. (If working with objects + armatures, disabling “lock object modes” in main menu is worthwhile.)

Blender makes bones’ tails be their Y axis. So the default bone is Y up instead of Z up.

1 Like

I was able to create a setup where I can run a rigid body sim on the bones (using the above method) while keeping the bone hierarchy:

Now struggling with making Unity understand it properly.