9
$\begingroup$

After importing a .bvh file from Motion Capturing, the object appears translated and its origin isn't in the objects geometric center. I've tried several options from the Set Origin menu (Shift + Ctrl + Alt + C).

However, I still couldn't find a way to have the object's center work in both Object Mode and Edit Mode. When I toggle between the two modes, the object jumps around.

How can I set the object's center for both modes?

Edit Mode:

enter image description here

Object Mode:

enter image description here

$\endgroup$
3
  • 1
    $\begingroup$ is this realy edit mode and not this other "pose mode" and so the offset in the translation is actually in the bvh data itself. It would be like animating an object via shapekeys and in a later frame the object center is offset from geometric position? $\endgroup$ Jun 3, 2013 at 9:55
  • $\begingroup$ @miceterminator Thanks, do you have an idea on how I could check whether the offset is in each key-frame? I don't know what you mean by other pose mode. $\endgroup$
    – stacker
    Jun 3, 2013 at 10:46
  • 1
    $\begingroup$ Unless you set the armature to show rest position, what's shown in Object Mode is the current pose in Pose Mode, i.e. the imported animation itself. (And I'm not sure if the knee and elbow should be detached like that...) $\endgroup$
    – Adhi
    Jun 3, 2013 at 11:15

2 Answers 2

13
$\begingroup$

In the Edit mode, the pose set in an armature is ignored. Because in your case the object is translated in an unwanted way in the Object mode but not in the Edit mode, it is possible that you have accidentally set a pose which translates the whole object.

To clear the translation of a pose, do the following.

  1. Select the armature and enter the Pose mode.
  2. Select a bone you want to reset the translation of (or select all bones by using shortcut A if you want).
  3. Press Alt+G (the shortcut for Pose > Clear Transform > Location).

In response to your comment, here is how to clear the keyframes for the bone translation (that is, remove the animation data of the bone location from all frames).

  1. Select the armature and enter the Pose mode.
  2. Select the bone, and open the Bone tab in the Properties window.
  3. Right-click any of the three coordinates in Location, and select Clear Keyframes.

After clearing the keyframes, you can use Alt+G to clear the translation.

However, because this works for only one bone, if you want to do this for many bones, you have to repeat steps 2 and 3 many times. Maybe there is a better way.

$\endgroup$
2
  • 1
    $\begingroup$ Thanks (+1) Alt+G helps temporary, when I move a keyframe forward and backward the offset re-appears do I have to 'apply' the new location? $\endgroup$
    – stacker
    Jun 3, 2013 at 20:08
  • $\begingroup$ LIFE SAVER!!! I have been trying to figure out why the origins in the model and armature are different in edit mode and object mode. Could not figure it out for days :( Then, you pointed out the pose...oi. Thanks! $\endgroup$ May 10, 2018 at 13:38
3
$\begingroup$

Even I am new to blender and was facing the same issue, what helped me was as follows: Go to Object Mode->Select the armature->Press N->Click on Tool->Expand Options->Expand Transform->Affect Only-> Select Origin.

enter image description here

Then you will be able to move the origin in the viewport. Hope that helps.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .