Character rest position in bvh import from motionbuilder

Hello,
I have a problem with rest position of my character after importing bvh from motionbuilder.
my workflow:
-i have a character in blender set in T-pose, and fitting animation.
-export from blender to motion builder using fbx.
-apply characterize and plot character
-change animation
-export from motionbuilder to bvh (content: hierarchy, position: local)
-import to blender
As a result i get proper animation but rest position (armature edit) is strange.

Have anyone encountered such a problem?

best regards

Attachments



Have you seen this? Script to change rest position of bvh files

I have, but i wasn’t sure it’s applicable in my situation. Those two strange root bones confused me… I will try to remove them and then apply the script. Thanks for pointing it out.

You might have to change things around… Are you using BVHacker It lets you make changes to the rest position…

Unfortunately im not familiar with bvhacker and all i managed to do was changing rest position but those changes were also applied to the animation. Is there a possibility to change stance so that whole animation stayed unchanged?
I will try mr. batFINGER’s script…

Hi

Not sure how that’s going to go with that weird rest pose. Got my nose in modelling atm and haven’t done much with that one since i posted… got it to where it served my needs… It also assumes you have quaternion rotations. Ultimately I’m “gunner” tie all the scripts into a “mocap madness” addon … but for now i’m chasing triangles.

Not sure whether bvhacker changes rest pose…maybe when you retarget to secondlife… but it does let you put a T-pose in (as a pose) which gives the offsets to change the animation to match what will ultimately be the rest pose… which is pretty much why i wrote the script. Oh change the rest pose to the pose in first pos after running the script… it makes a copy of the action.

You definitely should download BVHacker… a great (free) tool if you are working with BVH files…

Hmm another problem that i’ve noticed is lack of head, hands and feet bones in bvh export from motionbuilder…

Ok can anyone tell me how to set t-pose as stance in bvhacker?
In official tutorial it stands as follows:
In a sentence: Essential! Set the reference stance (T-Pose) for Second Life upload

Do a final scrub through the animation using the slider at the bottom of bvhacker’s interface. If you are happy with what you see, hit the ‘Set T’ button to set the reference frame for Second Life.

What i do is i set my T-position. When i hit “Set T” it jumps to the previous rest position that i wanted to change. When i change this rest position it affects whole animation. Is there a possibility to change rest stance to t-position so that animation itself would stay unchanged?

or maybe that’s possible in blender?

is it possible to change matrix[‘ARMATURESPACE’] ?

Here’s how i think it works. The T-pose in bvhacker is a posed T pose as opposed to a rest position T-pose. Some programs use this pose inserted at frame 1 as a reference.

The quick script I put together (see post #2) uses this T-pose in frame 0, and changes the animation as though this was the rest pose. Then use the UI to change rest pose to the T-pose in frame 0. (In pose mode pose menu > apply > apply pose as rest position) I thought I could probably append the following to the code.

bpy.context.scene.frame_set(0)
bpy.ops.pose.armature_apply()

to apply the pose in frame 0 as the rest pose but it doesn’t work. Doing it from the UI works fine

im afraid it works only on b2.5 causeon 2.49 i get python err on arature_apply() :confused:

in blender 2.5 it’s simple as clicking “apply pose as rest pose”:slight_smile: that’s what i wanted to achieve but in old blender or i will have to rewrite my export scripts:/

edit: yeeea it apllies current pose as rest pose but it also affects animation so it’s worthless:(