Skip to content

Conversation

@aaronfranke
Copy link
Member

Based on the request here #106537 (comment)

This is the same as the system introduced in PR #84271 and is important for preserving compatibility due to changes introduced in PR #104184, PR #106537, and PR #80270.

This PR implements the same naming version system found in glTF in the UFBX, FBX2glTF, and Blend editor scene format importers, with UFBX getting a new _naming_version field, and FBX2glTF/Blend forwarding this to GLTFDocument.

This should make FBX and Blender files imported in Godot <= 4.4 behave the same in Godot 4.5 and later, because they will automatically have this naming version set for compatibility. This only applies to files imported in older Godot versions with existing .import files. Any brand new files without .import files will be given the latest version.

In FBXDocument, I am using the same naming version numbers as glTF. There is no behavior difference between version 0 (Godot 4.0 and 4.1) and version 1 (Godot 4.2 to 4.4). For version 2, there is one difference in a call to SkinTool introduced by PR #104184, which will collapse non-joint leaf bones with version 0 or 1, and not collapse them in version 2 or later. There will also be a difference with PR #106537 when it is updated to use this option.

For both UFBX and FBX2glTF, we are forced to pick just one name for both, so I went with fbx/naming_version, even though FBX2glTF's one is better described as gltf/naming_version. It doesn't really matter, though.

Copy link
Contributor

@lyuma lyuma left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Merge this after #106537

Once that is merged, change the last argument of _create_skeletons in fbx_document.cpp line 2228 to pass _naming_version instead of 2

@aaronfranke aaronfranke force-pushed the blend-fbx-naming-version branch from 029a381 to a56b3a9 Compare June 10, 2025 16:43
@akien-mga akien-mga merged commit c455d81 into godotengine:master Jun 11, 2025
20 checks passed
@akien-mga
Copy link
Member

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants