Jump to content

Mixamo bvh distorting after a littile edit in blender


Recommended Posts

This issue is littile complicate or i am totally doing some thing wrong .

i have downloaded one sample animation from mixamo as bvh and i have also followed all the steps over here 

Animation works well .

But i needed some tweak in hand position  and some leg movement ..i did them in blender and blender plays well after that  i again exported the animation and just everything doomed . 

dont know what i am doing wrong .

tried with other animation from mixamo works well , but if a single frame edited by blender everything distorting 

distorted image.jpg



Link to comment
Share on other sites


6 minutes ago, gryff said:

@biswazr : Well I downloaded both your files and tested them - and yes the extra animation frames do produce the "spaghetti monster" .

I will investigate this evening

cheers, gryff :)

Thank you @gryff i am waiting for your reply

Edited by biswazr
just missed name
Link to comment
Share on other sites

Well 2biswazr, now that I have looked at your files,  some answers for you.

But first a comment. The reason your untweaked animation looks ok is it only has two frames - and they are both the same!

So an answer on how to fix your tweaked animation. I took the following steps all done in Blender's "Object Mode" and mouse over the 3D window.

1. Shift + C  - to set the 3D cursor to 0,0,0 .
2. The N key - to open the 3D window "Properties" panel.
3. With the armature selected - put it into the "Rest Pose".

Now I could look at the armature and the mesh properties. See image below.

So here are my observations:

1. With the armature selected - the origin is at the 3D cursor and the rotation is 0,0,0. - area A in the image.
2. With the mesh selected - the origin is not at the 3D cursor and the rotation is 90,0,0 - area B in the image.

That has to be changed with following steps. Make sure the mesh is still selected and the 3D cursor is at the origin:

1. Object->Transform->Origin To 3D Cursor.
2. Object->Apply->Rotation.

Now export to BJS.

Here is what I get (had to use a simple sand texture as there was no texture packed into file, and I added a hemi light in Blender) - Riya

So it is not your animation editing in Blender - but rather an issue with the rig setup :)

cheers, gryff :)







Link to comment
Share on other sites

@biswazr -

@gryff is the Blender Master, and @JCPalmer the brain who writes the Blender exporter. So in getting a reponse directy from @gryff, I expect that everything is working correctly for you now. However, if this is not the case, or his advice only partially fixes the issue; if there is still any unexpected behavior, then I might point you to some issues with the various .bvh file formats - as there are vast incompatabilities in using some of these in babylon.js. However, if your problem is solved, then rack this up to @gryff's briliance and unique experience. Otherwise, I can most likely help you solve any problems generated by using the .bvh format, as I avoid using this format at all costs - especially since I was forced to use this myself for many years before better formats came into play. And always be aware of the specifics of your motion capture (and animation) files, as many of these such as .bvh is far older than most users on this forum, and far more compatible, robust, and reasonable file formats have been created since .bvh was introduced by the University of Wisconsin - Madison - over 40 years ago.

However, I hope your problems are completely fixed now.



Link to comment
Share on other sites

@biswazr -

@gryff provided, I forgot to inform you of an essential step in using keyframe animation for characters (meshes bound to a skeleton hierarchy) and also using any motion capture animation as well. This is to always parent your root bone (joint) to a seperate object or objects depending on how you intend on animating your character(s). What @gryff recommends will work, however, I find myself severly limted in many animations if I don't have at least one parent object or bone at the base of the character (generally the origin where hopefully the feet are placed and touching the "ground" position at (0,0,0) to make contact with a ground plane at 0 in the global Y axis.                                                                                                                                  

In addition, it is invaluable to freeze all transforms of this parent null or bone to allow as much flexability for animating the character in world space. I also recommend adding additional objects (nulls or bones) for each unique transform the character might make in world space such as a seperate parent under the translation parent object for rotations which will allow a great deal more freedom to rotate your character and avoid gimble lock, as well as increased rotational flexability. And having the top parent null or bone only for world translation, this allows your character to easily move up and down inclines, on uneven terrian, and up stairs and ladders; whereas attempting to do this using only the character's local skeleton transforms in addition to a world transform on the root joint will severly limit you in the ability for our character to freely translate as well as accomplish "flying" and/or jumping high in world space. And please always try and freeze ALL skeleton transforms prior to attaching any animation (for every bone in the skeleton hierarchy before animating a single key) especially motion capture animations, as this will always provide the greatest range of motion for any character skeleton.                                                                                                                                                                                                                                                      

I hope this advice helps you and others, as these are rules to follow 100% of the time, and lessons I learned the hard way through my personal involvement in developing many of the current motion capture hardware and software - including most every one on the market today as well as may of the retargetting tools found in MotionBuilder and Autodesk aplications today. If you have any further questions concerning mocap, character animation, and chracter rigging and retargetting, this is where I generally made my mark on animation for film, games, and real-time performance animation and have many examples I can share with anyone looking for general answers. Although, the process in babylon.js shares very few differences with the concerns for animating characters for any media - game or otherwise, and regardless of which application you're exporting from; with the exception of a few specifics to some applications, and of course Z-up world coordinate systems.  




Link to comment
Share on other sites

@dbawel Thank you DB for your explanation on how to use it i am trying to use the way you advised and it works pretty well  . Currently i am not getting any further issue with animations ,after reading thoroughly yours and gryff's suggestion.  Thank you both of you .


Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...