FBX Character always has inverted normal's.


I am using Unity4 and Max2009 (it’s all I have a license for). I have a rigged character that looks and animates just fine in Max, however when I export it to an FBX (using the latest 2009 compatible FBX exporter) and import that asset into Unity4, all the normals of the character are inverted. In unity, it looks like the culling mode is backwards. If I were using pure DirectX, I could just switch the culling mode and it wouldn’t be a big deal. But I can’t find a reason for this problem, nor can I find a way to flip the culling in Unity.

I’m also having issues getting animations to work on this character, but I think that’s another question.

Is Max2009 not compatible with Unity4? Hopefully not, I’m afraid I can’t afford to buy the latest version of Max just to use Unity.

Thank you in advance.

You have to flip the faces in 3dsmax. I’m not an artist so i can’t give you detailed instructions, but it’s usually called “Flip Face Normals” or just “Flip Normals”. Also make sure you don’t have negative scaling in max. There is an option to reset the object transformations. This should be done before you export.

On the Unity side also make sure you don’t have nagative scaling values.

Make sure the model has the right orientation in 3ds Max. Since a couple of versions (not sure how many), Max disables backface cull by default, so that might be the problem.

Another possible source of the problem is the transformation matrix. Is it possible that you mirrored the object sometime in the past? Mirroring is essentially just a scale to negative 1. The model has flipped normals after that, but Max hides that. Do a Reset X-Form and see if the models normals are still correct in Max. If not, add a Normals Modifier or select all faces in edit Poly and hit ‘Flip Normals’