Child of constraint and moving rig in Object mode I have a character wearing a belt that's giving some problems. Here is the setup:


Several Empties are the children of vertices on the character
Each Empty then has a bone attached to it via the Child Of bone constraint
The Child Of constraints needs Set Inverse pressed or it offsets away
The belt mesh is controlled by these bones


So as the character moves, the belt moves with it. This all works just fine in pose mode. However, if put the character's rig (which the belt bones are a part of) into Object mode and move it, then the belt mesh moves in the opposite direction. This is fixed if I hit Set Inverse on the Child Of constraints again.

Normally this isn't a problem because if I am moving the whole character, I am going to do it in pose mode via the root bone, or if I'm moving all the characters objects, I move an Empty that all of its objects, including the rig, are child of. This all works fine.

The problem arises when I Link the character into a new scene and proxy the rig. Normally what I do is make the Linked character group a Child Of the proxied rig Object so that I an conveniently move them around (if you make the proxied rig a child of the group object, it behaves strangely.) But when I do this, my belt starts flying away again.

I know this problem is something to do with the parent/child hierarchy and the rig's object origin moving away in relation to the Set Inverse, so I experimented with different ways to set these objects up. What I've found is that if I proxy the Character's empty that I mentioned above, and make it a child of the rig proxy, then I can move the rig and everything works. But the linked group object has to NOT be a child of either, otherwise the problem comes back.

I've also tried making the belt objects the child of the rig object in the character's file, and making them a child of an empty that is a child of the rig object, and making them the child of the body object, but none of that works.

If anyone can explain to me exactly what is going on, or let me know a better way to fix or do this, or another way to rig this belt that doens't need child of, that would be great.
I've always found that parenting gear such as clothes, etc. to an armature bone would be sufficient enough to handle animating the character, armour, belts, etc. and also moving the character around in Object Mode all the same. 

After testing the "Child Of" constraint on a simple mesh with a single armature and a "belt" (reshaped Sphere) I noticed the problem you described - the object always moves against the direction of the bone/armature.

All in all, I think it may be worth considering the option of directly parenting (Ctrl + P shortcut) the belt and other objects to the bone that controls them (i.e. via "Set Parent To" -> "Bone" option) and then other necessary parents (e.g. bone(s) to empty parent through "Set Parent To" option) and see if this method doesn't work better for you.