Skip to content
Snippets Groups Projects
  • Bastien Montagne's avatar
    f5f7b1df
    Fix T45171: FBX importer can't handle mesh bound to multiple armatures. · f5f7b1df
    Bastien Montagne authored
    There were two issues here:
    
    I) Since an object can only have *one* parent, it it gets created only during its parent's creation,
       we could end in situation where we would be creating an armature that would need its 'fake' children
       mesh objects, before we have actually created this mesh object (which would only happen during creation
       of the only armature that would be its *real* parent).
       This was solved by decoupling object creation/instancing and creation of objets' relationships.
    
    II) We were only storing one set of binding data (matrices) per mesh, which obviously failed when
        binding several armatures to a single mesh.
        Simply fixed by storing one set of binding data per mesh per armature.
        FBX can store on set of binding matrices per mesh per bone, but this is not supported by Blender!
    f5f7b1df
    History
    Fix T45171: FBX importer can't handle mesh bound to multiple armatures.
    Bastien Montagne authored
    There were two issues here:
    
    I) Since an object can only have *one* parent, it it gets created only during its parent's creation,
       we could end in situation where we would be creating an armature that would need its 'fake' children
       mesh objects, before we have actually created this mesh object (which would only happen during creation
       of the only armature that would be its *real* parent).
       This was solved by decoupling object creation/instancing and creation of objets' relationships.
    
    II) We were only storing one set of binding data (matrices) per mesh, which obviously failed when
        binding several armatures to a single mesh.
        Simply fixed by storing one set of binding data per mesh per armature.
        FBX can store on set of binding matrices per mesh per bone, but this is not supported by Blender!