Page MenuHome

FBX exporter uses Mesh Datablock to name exported objects instead of object names
Closed, InvalidPublic

Description

System Information
Operating system: Windows 10
Graphics card: GTX1080Ti

Blender Version
Broken: 2.8 latest master
Worked: Probably never

Short description of error
FBX exporter uses Mesh Datablock names to name exported objects instead of object names, so any application FBX from Blender is imported to has bad object names, such as sphere.001, cube.002,etc... This doesn't make any sense, especially since multiple objects can reference the same mesh datablock (instances), and people generally do not bother to name mesh datablocks. FBX exporter needs to use object names for naming, not mesh datablocks.

Exact steps for others to reproduce the error
1, In a new scene, create a few mesh objects.
2, Rename them in the outliner.
3, Export them using FBX.
4, Reimport them and notice wrong names.

Result: Names of objects in the exported FBX are wrong - named after mesh datablocks.

Expected: Names of the objects in the exported FBX match names of the objects in the scene.

Details

Type
Bug

Event Timeline

Bastien Montagne (mont29) triaged this task as Needs Information from User priority.

Please follow our submission template and guidelines, also read these tips about bug reports, and make a complete, valid bug report, with required info, precise description of the issue (only ONE issue per report!), precise steps to reproduce it, small and simple .blend and/or other files to do so if needed, etc.

Cannot confirm here, and FBX code certainly uses Object name for the Model node, not its geometry…

Please follow our submission template and guidelines, also read these tips about bug reports, and make a complete, valid bug report, with required info, precise description of the issue (only ONE issue per report!), precise steps to reproduce it, small and simple .blend and/or other files to do so if needed, etc.
Cannot confirm here, and FBX code certainly uses Object name for the Model node, not its geometry…

Uh, what? I think this is as valid bug reports as it gets. Maybe you are seeing something else than me?

Anyway, this is a bit more complicated problem indeed. Blender has this unique weird concept of datablock being something user can explicitly name. It works in case of Blender:


But it doesn't work in case of Unreal Engine 4:

Bastien Montagne (mont29) claimed this task.

Well, report was missing two crucial pieces actually:

  1. A .blend file to reproduce the issue (given incomplete info I had, I though that it might have been a specific set-up triggering the issue).
  2. More important than anything, complete info with detailed steps to reproduce it (since it's not reimporting FBX file into Blender that is the issue, it’s importing it into UE4).

Now am sorry, but if UE4 decides to use the geometry part of FBX data's name as its object name, we cannot do anything about it. Blender's FBX exporter export Model FBX nodes with object name, and Geometry FBX nodes with obdata (mesh) names, as it's expected.

Well, report was missing two crucial pieces actually:

  1. A .blend file to reproduce the issue (given incomplete info I had, I though that it might have been a specific set-up triggering the issue).
  2. More important than anything, complete info with detailed steps to reproduce it (since it's not reimporting FBX file into Blender that is the issue, it’s importing it into UE4).

Now am sorry, but if UE4 decides to use the geometry part of FBX data's name as its object name, we cannot do anything about it. Blender's FBX exporter export Model FBX nodes with object name, and Geometry FBX nodes with obdata (mesh) names, as it's expected.

I guess that is a fair point, but in may DCC software packages, users can't even name the geometry data, so they probably share the name with object. Blender allows it, but that means user will now have to go through the entire scene and name every single mesh datablock using the object name, with further limitation that datablocks in blender can't share the identical name. Surely this can be handled better.