3Ds Max animation import issue - Root Joint scaling

So hey there ya’ll! I’m Traggey, first post here on the new forums.

I’ve been an UE4 user for a about a year now and I’ve just now with the new verision run into an issue that is causing my head to explode.

Making some new first person arms, they are going to need animations obviously so I set up a quick test skeleton just to make sure everthing was working properly.
Made a 100 frame idle animation and exported both as separate FBX’s.

So let’s import it! YAY.

BOOP, upon importing I am wrestling with text in the error log.
No material set, well yeah that’s not a problem.
No bind poses found, that’s strange, I have a bindpose in max and it works fine there.
And here’s the strange one, ‘‘Warning: A bone or bones with a non-identity scale factor was found for skeleton (skeleton root name: ‘B_Root’).
Unreal does not support scale on bones so the FBX importer will attempt to apply the scale to the bone’s translation. if the results are not as intended, please use identify scale for all skeletons in the original scene.’’

Now that error blows my mind, because I’ve deleted, recreated and switched root joints around about 9 times now and re-imported into the engine, the result is always the same, it complains about the scale of the root joint, however no scaling is applied to it within max.

I place the mesh inside the editor to have a look, everything looks fine, I check it the editor, everything seems fine.

Okay, so let’s try importing the animation anyway.
I import the FBX, select the Player_Arm_Skeleton as my skeleton, everything looks good.
Untill the animation starts playing that is, now I am looking upon a shrunken down verision of my mesh reenacting a smeagol scene from LOTR.

Been at it for a good 4 hours trying to get it to work now but I ain’t getting nowhere.

Any clues as to what I’m buggering up here? It seems quite obvious to me that it’s the whole root joint scaling issue, but no scaling is applied in max and even with completely new fresh untouched joints simply set as the root it gives me this error.

https://dl.dropboxusercontent.com/u/63462053/UE4_BrokenAnimations.jpg

This is a fairly common error. Did you use the Scale tool in Max to resize your bones? If so, use the Bone Tools instead.

The error usually comes from scaling after skinning or settings keyframes, but Max and FBX have a few disagreements over skins and bind pose data sometimes. Best to test exports early and regularly to make sure you’ve not broken something accidentally, as it can be a pain to fix a fully rigged & animated character with broken bone & bind data, without writing tools to do it automagically.

No, I did not. All bones were created with the bone tools, no scaling has been applied at all.

to be very honest i wouldn’t touch max bones with a barge pole they are nothing but problems, either use max object(do a xref after deform) or use something like the old ut3 rig but cut down.

ps use the xref from the tools tab and not the modifer

M’yeah that sounds like a plan, I’ll give it a shot, thanks Geodav.

So yeah little update, used the FPS example rig and it functions just fine, I guess Maxbones are really just terribly broken with UE4.

Would still very much like a method of getting that working though, seing as it’s the easiet method of doing this.

Seconded, would be very useful for transferring models over, and also for better workstream when collaborating with 3DSMax guys without UE4 experience.

If you can post your .fbx either here or in a private message it will help us debug the issues.

Sorry for the slow response! Yes here’s another test mesh for animations which has the same issue, created normally like I would any animation. Just a deforming box.

https://dl.dropboxusercontent.com/u/63462053/Test_Anim%2BMesh.zip

Hi Traggey,

I loaded up your FBX and found a scale of 2.54 on B_Root. The other joints have a scale of 1. This is caused by using 1inch = 1 unit. UE4 uses centimeters. Since there are 2.54 centimeters in an inch, it looks like you’re using a setting that is converting inch units to centimeter units. In Max, set your units to 1 unit = 1 cm. This is under Customize > Units Setup > System Unit Setup

i have the same problem with 3ds max 2014 and Cat system. solution for me was uncheck in Deformations “morphs” in fbx export. after this i recieved message about wrong scale, but all work good in editor.