I am rigging a quadruped character and I cannot get the front feet to stop going through the floor.
There is no problem with the back feet but the front feet just will not stop going through. I have tried several methods to stop this, including creating an empty and assigning that and the corresponding bones with a ‘floor’ value as instructed by a tutorial I found but that still did nothing.
I also tried turning off inherit rotation on the bones to see if that would stop it but that didn’t help either.
Is there a way to stop this from happening? Any info would be great.
The floor constraint should work. You can target the floor object (though it will be treated as a plane lined up with the upper face of its bounding box) or an empty, or even another bone.
Ok, I create the empty, apply the floor constraint and then select the bone and then apply the constraint to it. I’ve also tried selecting the empty and the correct bones at the same time and pressing CTRL+ SHIFT+ C and selecting floor from the menu but it still does not have any effect… Is this the correct way to do this?
It’s a little hard to follow that sentence. The floor constraint prevents the root of the bone from passing whatever target you’ve set for it. So make sure that whatever bone you’re trying to constrain has its root at the level where you want the rig to stop (so in this case, probably the sole of the foot). Put the floor constraint on that bone, and target it to your empty. I assume the empty is sitting at exactly the level of the floor.
Ah. Right. So, the floor constraint will only apply to root bones, correct? And the root bone is the one at the top of the hierarchy? (Please correct me if I am wrong- rigging has never been my strongest skill)
I have tried applying this to the sole of the foot but it does not work. It is not the root bone, but I do not know how to change it to be the root bone without messing up everything else as I would have to move it to the top of the hierarchy and then it becomes disconnected and doesn’t function as it should.
When I DO apply the constraint to the current root bone (which is his back hips/ spine area) it works correctly. Is it possible to add more than one root bone without affecting the rig as I would need several to stop both feet from going through the floor.
I’m sure I am either doing something wrong or not understanding how root bones work. Or is it not possible to have more than one root bone?
Thanks for your patient responses. They really are helpful and I’m sorry to be a pain!
You should just put it on the foot bones. I don’t know why it doesn’t work for you. Post your .blend file to www.pasteall.org/blend/ and share the link here. There’s no way to diagnose “it just doesn’t work.”
Unfortunately, I cannot put the file up as it is for a company project and cannot be shared right now. But I appreciate what you are saying and I apologise for not being able to explain the issue properly.
Here’s a leg rig with a floor constraint on the foot. Works just fine. Do what I’ve done here. Ignore the weird rigging in the knee and thigh; I’m reusing a leg rig I made for another purpose. The only important part to you is the foot bone and the IK target bone. Should be dirt simple to set up. Just put a floor constraint on your foot bone with the floor object as the target. Done. FloorExample.blend (487 KB)