Blender imported animation is smaller than the mesh

@Goonley I published a 15 step tedious process to.make a custom rig a few days ago its here on the forum in the BoneBreaker topic. Its painful, but it does work. Less painful without feet and a face, but still kinda painful.

@Agln

if you have no issue when importing both, import both. The. Try to re-import using the newly created skeleton.
of that causes shrinking too something is wrong somewhere in the import.
If not, then the original Skelton is bad/not scaled or something…

1 Like

I have tried this solution on an example animation i’ve put together quickly and it works but i found that the “apply transforms” messes up my more complex rig i needed to export.

I’ve found a workaround however. If you export the fbx and in the exporter setting you set the “Scale” to 0.01 and then in the UE import setting you set “Import uniform scale” to 100 the animation will be the same scale as the mesh and you won’t get the “Imported bone transform is different form the original” message.

2 Likes

Hi, I had the exactly same problem.
Changing the scale in the fbx export to 00.1 and “Import Uniform Scale” to 100 in unreal worked.
Beware though that you should apply all transforms to the skeleton or else the "FBXImport: Warning: Imported bone transform is different from original. Please check Output Log to see detail of error. " will still pop up.

Let me just add the following to this conversation:
If you rename the armature in blender to something else then “Armature”, Unreal will create a root bone with the name given to the armature in Blender and this will be the root of the skeleton. If you do this, the transform error will not popup even without adjusting the scale values as described above. The problem with this, is that if you want to use “apply root motion” it will not work because this root node is not animated in blender. You need to create a root bone in blender and animated there and leave the armature in blender with the name “Armature”.

If this error pops up:
"FBXImport: Error: Multiple roots are found in the bone hierarchy. We only support single root bone. "

It’s because your armature in blender is named “Armature” (so unreal will not create a root node) and the bone hierarchy does not have a single parent node. Just add a parent bone at the origin and make all other bones a child of it.

1 Like

In blender the armature object is your “root”.
It’s not a separate bone.
You can animate the armature just like you would a bone - which is how you do root motion correctly.

As far as scaling goes. Beware that animations can and often do have Scale as a keyed value.
To make it work when scaling up and down you have to either delete the scale keys or re-key them with the proper value.

In either case, once you have it sorted in engine, export it back and re-rig it or keep a properly scaled copy.

1 Like

You know what? I think you’re right. I am having a lot of trouble while animating my root bone. In fact is better to not have the a root bone but animate the armature in object mode…
■■■■, I wasted countless hours to get this to work, and know I think I will have to remove by root bone. Some problems in unreal ahead when I reimport…

1 Like

Well, after wasting a few more hours around this, I ended up with the solution I proposed.
Having a root bone in blender and keep the name “Armature”.
The reason I kept this setup, is because I need root animation in one of my animation actions. If I don’t have this root bone, and animate the armature instead in object mode, I can’t have multiple animation actions. Well, at least I didn’t managed to get it to work.

1 Like

If you aren’t working off an epic skeleton, it shouldn’t much matter what you call things and how the hierarchy is setup.

If you leave the name to Armature, then the object is the root bone you need to animate.

If you rename the armature to something different, then the bone inside should be used as the root.

Do some tests with a simple bone chain to figure out what works best for your use case when you import the animations.

Working with the mannequin i just make different files for different root motion animations.

1 Like

“f you leave the name to Armature, then the object is the root bone you need to animate.”
Well, it does matter inside blender. That’s because if I use the armature as the root bone and animate it, then it will not be part of an animation action. If I use a bone inside the armature as the root, then I can go into pose mode and animate the root, and it will be part of the action.

1 Like

It’s kind of a non problem.

There’s about a thousand ways to keep the object animated in an action.
You should look into those options.

Or just animate the root bone with a hierarchy that’s able to import with out the armature being called Armature…

1 Like

Thanks, man. Fixed my problem.