when i import an animation from blender to unreal this happens. can someone help me?


when i import the .fbx this happens. i have no idea what is happening.

here is the blend file https://drive.google/file/d/0B-fClBFq7HULZ3EwaDhoMlVldGs/view?usp=sharing

and here is the .fbx https://drive.google/file/d/0B-fClBFq7HULV0xzbzFHdkN2LWs/view?usp=sharing

Can someone please help me figure out whats wrong?

Seen it before and there are a few reasons.

The usual is you ununiform scaled the rig to fit the character and did not reset the transforms. Don’t use Blender but in 3ds if I select an object and it’s XYZ scale value does not read 100% your going t have a bad day.

  1. which blender version do you use?
  2. which UE4 version?
  3. before you export it, go to object-apply-scale/rotation/location
  4. check if you have probably assigned some vertices to a wrong bone
  5. I downloaded the blend file to check it, but this is what I get :slight_smile:

:

A couple releases ago, Blender added a security layer to prevent malicious Python scripts from doing things you don’t want. Rigify (and most sophisticated rigs) rely on Python for some of their drivers and controls. You need to re-open this file as “Trusted”. You can also go into the User Preferences and set folders that are trusted so that if you load a blender file from that location, it is automatically loaded as trusted. Make sure you don’t save the file after loading it untrusted, though - as that can cause problems.

T3nDucks:

The original problem is a little harder to diagnose, but the first thing I notice looking at your .blend is that the bones [FONT=Courier New]MCH-thigh.nostr.ik.R and [FONT=Courier New]MCH-thigh.nostr.ik.L have drivers on their scale property. This change in scale gets copied to the [FONT=Courier New]ORG-thigh-nostr.ik.[RL] bones through bone constraints, and then over to the actual deform bones again through constraints.

There’s nothing inherently wrong with that, but my guess is it’s the source of the problem. A few things to look at -

– Are you exporting only deform bones?
– Are you baking your animations?

Rigify (or is this the MHX2 rig?) is a considerably more sophisticated rig than most games use, with a large assortment of tweak bones that you don’t typically find in game models (though you’re starting to see them used in high-end AAA games). Getting it to work properly is probably going to take some effort and a lot of trial and error.

It looks like you might be using MakeHuman. If so, you might want to consider using one of the alternative rigs. The nightly betas will export a UE4 compatible rig, though I haven’t had much luck getting that to import onto the Epic skeleton yet. There’s also a “game rig” that may give you better results.

Sorry I don’t have a silver bullet for you, but I hope this helps some.

Thx for the info :slight_smile:

: Now I can check what you might have done wrong

Thank you for the replies so far. We have been googling and trying to figure out what we are doing wrong for about 2 and a half weeks now. Any help is appreciated!

  1. Blender version is 2.73
  2. Unreal engine version is 4.5.1
  3. Just tried that with no luck.
  4. We are using MakeHuman for our bone structure, everything looks fine to me, but I am new to this so I may be missing something.

Yes we I export I am checking Only deform bones and bake animations. Is there something else I am supposed to be doing baking animations?

I am indeed using rigify. I use MakeHuman for quick modeling of the character then export to Blender exchange(mhx) for rigify. I am using the HumanIK skeleton in makehuman as I read somewhere saying to use that and it may solve my problems.

The only problem I see with the game skeleton in MakeHuman is the lack of control over the fingers. I suppose if the game skeleton works, I may have to settle for it.

EDIT: I thought I would mention before I export the character from MakeHuman I am setting the scale units to centimeters. I am also setting the scale in Blender.

Again thank you for the replies. I have been trying to solve this issue for quite some time.

Hello, please check this new feature

://www.makehuman.org/blog/new_rigging_library.html

It works almost perfect, only when you play the animation the mesh collapses.

near impossible to say why, but the anims must be made for the rig , to me thats a classic case of the wrong anim

I opened your FBX file and Maya with the Epic Blue Man FBX for comparison and found your character 100 times larger and set to be scaled x100 according to the asset manager. I would start by exporting a skeletal mesh from Blender, get the scaling correct, and then work on animating that asset. (I don’t know if it works the same in blender, but if I had to do the same thing in Maya, I would scale it up to 100 and reset the transformation so that it read 0 in scale value field.)

Thank you for the reply.

After not finding a solution I signed up for a 15 day trial for Maya Lt(still trying to convert from blender, very different programs). I also found that it was really huge in Maya, I have been scaling blender according to others on the forum. Just for testing I just imported my animation into Maya and immediately exported it to be imported into the engine, and oddly enough the all worked perfectly. So I don’t know if it is a bug with blenders exporting and when I bring it into Maya it fixes it, or something else.

Also could you possibly give me a very quick rundown on how to scale in Maya, I am most likely going to be using that from now on since I have had less problems with it so far.

Thank you all again!

I’m not exactly sure what you mean, but to scale press the R key to bring up the widget then scale like any other 3D program. In the asset editor make sure to go to Modify >reset Transformation> so it reads 1, 1, 1 in the asset editor (as shown) before exporting as an fbx for UE4. I’ve seen a lot of reported issues about exporting from Blender, but in my experience, it’s flawless exporting from Maya. (-aside from some glitches reported about using the ART tool in Maya 2015).

Scale.jpg

Regarding the funky Blender load, is correct. A simple solution is simply to set your file preferences in “User Preferences” to in the File tab to “Auto run Python Scripts”. If you set this once to open up the file it will revert back to being unchecked when you load Blender again unless you save your prefs. So there is usually no harm in doing this if you are worried about getting malicious scripts in the future.

Once you do that you’ll see the Rigify file load properly.

Other notes in Maya. Not sure hat has been done with the file that was uploaded above since then, but it loads into Maya as a big fur ball! lol.

At least for me. So my guess is that it had to do with the export from Blender.

The Rigify rigs are very specialized. And you don’t want to export things that don’t need to be there. Just selecting only deform bones is not enough. You should also make sure and uncheck appply modifiers (the armature is a modifier) so this would apply the deformations. You don’t want that because the rig will just try and deform it again from the new shape of the mesh rather than the rest pose.

And you also want to uncheck everything but Mesh and Armature. With these settings it imports into Maya at the proper scale setting because stats read file and system as Centimeter.

However it does not import properly into Unreal as the animation is messed up.

I think it is just a rigify thing. It is a very specialized rig. There is an addon to bake the animation:

://blenderaddonlist.blogspot/2014/05/addon-bake-rigify-rig.html

://www.wikihow/Add-an-Addon-in-Blender

I think that would work better than just the export option.

But that all said, Maya LT is a good choice. However, just a note, I am sure you can figure out the Rigify thing. But just understand that he did not design the rig for use with game engines. So exporting can be very tricky.

A note on the scale thing in Maya though, It is fairly normal depending on the size and setting in Blender. If it is coming in as a scale of 100 check the FBX import settings. Likely it will be converting from Meters in Blender to Centimeters in Maya.

I use Both apps and see this all the time.

Ok, so after taking a good two weeks working with Blender FBX export, Rigify, looking at your rig from MakeHuman, I’ve finally found the issue has either to do something with how Blender exports the FBX file or how Unreal imports the FBX file. I’m not sure if one, or both, or perhaps neither are at fault.

Basically, when the FBX exported from Blender into Unreal has any bones that do not have change, for some reason, the bones become distorted, taking on the transforms of the parent bone. I have a AnswerHub bug report here that has some discoveries with my own custom rigs. Any bone that doesn’t have any local transform ends up just taking some of the parent’s transforms. I’m not completely sure which channels the child bones will take, but I have seen time where the transforms are isolated to certain axes even when the bone has local animation on other channels.

In truth, in my internet searches for this problem, I’ve found some people who had similar issues going back months. Their solution was to either stop using Blender, or force keyframes to have some token delta. For my rig, I wrote a quick script to iterate through all the pose bones and change the rotation and translation a trivial amount (micrometers distance and fractions of a degree). Using the same script, I applied the novel keyframes to your rig and managed to fix the animation.

I’ll also include a file of the fixed animation here.

If you look at the file, the first keyframe has some very small changes to the translation and rotation. Those are the very small transforms I made via my script, and those are what seem to fix the animation at import. Hopefully, the bug gets fixed, but for now, those who are still using Blender will have to go with the hack of adding token transforms. You could also modify the FBX exporter from Blender if you had some experience with animation file formats and are willing to read up on the FBX documentation.