Fix #105045: Error importing FBX custom properties on placeholder PoseBones #105052

Member

Caused by not understanding an uncommon import case in 716702b97e where
a bone can be created without an FBX Node to import custom properties
from.

A bone in Blender is always created from an FBX Node, so it seemed like
all bones should have an FBX Node that custom properties can be imported
from. However, FBX allows bone and non-bone Nodes to be parented to one
another, which Blender cannot represent exactly due to Armatures only
containing bones. In such cases, the non-bone Node is imported as an
Object, but a bone with the same name is also created (which the Object
is parented to). The newly created bone doesn't have a Node to import
custom properties from because the Node belongs to the imported Object
instead.


This is a request to backport f21b90cbab for Blender 3.6 with the conflicts in bl_info resolved.

Caused by not understanding an uncommon import case in 716702b97e where a bone can be created without an FBX Node to import custom properties from. A bone in Blender is always created from an FBX Node, so it seemed like all bones should have an FBX Node that custom properties can be imported from. However, FBX allows bone and non-bone Nodes to be parented to one another, which Blender cannot represent exactly due to Armatures only containing bones. In such cases, the non-bone Node is imported as an Object, but a bone with the same name is also created (which the Object is parented to). The newly created bone doesn't have a Node to import custom properties from because the Node belongs to the imported Object instead. --- This is a request to backport f21b90cbab for Blender 3.6 with the conflicts in `bl_info` resolved.
Thomas Barlow added 1 commit 2023-12-09 03:14:12 +01:00
0db38ad102 Fix #105045: Error importing FBX custom properties on placeholder PoseBones
Caused by not understanding an uncommon import case in 716702b97e where
a bone can be created without an FBX Node to import custom properties
from.

A bone in Blender is always created from an FBX Node, so it seemed like
all bones should have an FBX Node that custom properties can be imported
from. However, FBX allows bone and non-bone Nodes to be parented to one
another, which Blender cannot represent exactly due to Armatures only
containing bones. In such cases, the non-bone Node is imported as an
Object, but a bone with the same name is also created (which the Object
is parented to). The newly created bone doesn't have a Node to import
custom properties from because the Node belongs to the imported Object
instead.
Thomas Barlow requested review from Bastien Montagne 2023-12-09 03:30:41 +01:00
Bastien Montagne approved these changes 2023-12-19 12:05:35 +01:00
Member

@Mysteryem PR is ready to merge :)

@Mysteryem PR is ready to merge :)
Author
Member

Because this is a backport, I think someone on the team that handles backports needs to be the one to merge this. I can't update the backports list anyway.

Because this is a backport, I think someone on the team that handles backports needs to be the one to merge this. I can't update the backports list anyway.
Member

@lichtwerk @ThomasDinges does the backporting. AFAIK they cherry pick the commit from main branch to LTS in other cases.
Since PR is created on 3.6 branch, it can be merged directly. Anyways, let's wait for Philipp's/Thomas's reply 🙂

@lichtwerk @ThomasDinges does the backporting. AFAIK they cherry pick the commit from main branch to LTS in other cases. Since PR is created on 3.6 branch, it can be merged directly. Anyways, let's wait for Philipp's/Thomas's reply 🙂
Philipp Oeser merged commit bd37c9b0fd into blender-v3.6-release 2024-01-10 09:23:23 +01:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-addons#105052
No description provided.