FBX Importer bug: object names cannot contain accents

When you import a FBX file without the “Combine Meshes” option, that contains multiple objects (meshes), and those objects have accented characters (áéóãÿ etc.), these accented characters get replaced with two ‘??’ when imported into UE4. For example, “canos_gás” becomes “canos_g??s”. This causes all sort of problems, for instance, you cannot assign or duplicate assets that contain a ‘?’, or move between streaming levels.

I tried to fix this problem myself and found out the problem. In FBXMainImporter.cpp, function FFbxImporter::MakeNameForMesh(), line FCStringAnsi::Sprintf(Name, "%s", FbxObject->GetName());. It seems that FbxObject->GetName() is returning invalid stuff, for example:

18704-untitled.png

Source text was “Áççênts”.

Maybe FbxObject->GetName() is returning unicode (there are 2 bytes per accented character there), and you’re trying to convert to ansi? (I don’t know how to fix that, or even if asset names with accents is desirable / supported)

Hi Lxiguis,

I’ve just tried to replicate this but have been unable to do so.

I setup a couple of meshes in my 3Ds Max scene and and exported with a saved name as you used above. Everything on my end imported using accents with no issue. I’ve tested this using the 4.5.0 build of the engine.

Here is an image with my results.

18895-accents.png

Can you tell me what engine version you’re using and your detailed repro steps to get the results you’re seeing?

Thank you!

Tim

Hmm, that’s weird. Could be a bug in the FBX exporter then. I hadn’t thought about that.

I am using 4.5.0 as well (downloaded from the launcher). My 3d studio is the 2015 SP1, and I am exporting as FBX 2014 binary. I am attaching a .max and .fbx for you to test. Let me know if this file works and thank you very much for investigating this issue.

Okay, I got it figured out what I did wrong. I had named my FBX file with the accents and not the individual assets in the FBX scene.

So I was able to get the issue you are seeing. I’ve submitted a bug report for it (UE-4635).

Thank you!

Tim