FBX SDK 2017

This topic lists the new features and improvements, changes and deprecations, fixes, and known issues in the 2017 release.

2017

New features and improvements

  • The FBX SDK now supports up to 5 HIK roll bones per limb for proper skin deformation based on the HumanIK 2016.5 roll bones improvements. See the new enumerators (eLeafLeftHipRoll1, eLeafLeftKneeRoll1, eLeafLeftShoulderRoll1, eLeafLeftElbowRoll1, eLeafRightShoulderRoll1, eLeafRightHipRoll1, etc) and their corresponding properties (FbxPropertyT<FbxDouble> LeafLeftUpLegRoll1; FbxPropertyT<FbxBool> LeafRightUpLegRoll1; etc) added to FbxCharacter to support the additional roll bones. Note that you can't have the old roll bones and new roll bones definitions together.
  • Added the new eRelativeRepetition flag to the animation curves extrapolation flags to export and import animation curves with relative repetition information . See FbxAnimCurveBase::EExtrapolationType.

Changes and deprecations

  • Removed these deprecated functions:
    • FbxObject::Is(const FbxClassId& pClassId)
    • FbxObject::DisconnectAllSrcObject(FbxClassId pClassId)
    • FbxObject::GetSrcObjectCount(FbxClassId pClassId)
    • FbxObject::GetSrcObject(FbxClassId pClassId, int pIndex=0)
    • FbxObject::FindSrcObject(FbxClassId pClassId, const char* pName, int pStartIndex=0)
    • FbxObject::DisconnectAllDstObject(FbxClassId pClassId)
    • FbxObject::GetDstObjectCount(FbxClassId pClassId)
    • FbxObject::GetDstObject(FbxClassId pClassId, int pIndex=0)
    • FbxObject::FindDstObject(FbxClassId pClassId, const char* pName, int pStartIndex=0)
    • FbxObject::DisconnectAllSrcObject(const FbxClassId& pClassId)
    • FbxObject::GetSrcObjectCount(const FbxClassId& pClassId)
    • FbxObject::GetSrcObject(const FbxClassId& pClassId, const int pIndex=0)
    • FbxObject::FindSrcObject(const FbxClassId& pClassId, const char* pName, const int pStartIndex=0)
    • FbxObject::DisconnectAllDstObject(const FbxClassId& pClassId)
    • FbxObject::GetDstObjectCount(const FbxClassId& pClassId)
    • FbxObject::GetDstObject(const FbxClassId& pClassId, const int pStartIndex=0)
    • FbxObject::FindDstObject(const FbxClassId& pClassId, const char* pName, const int pStartIndex=0)

Fixes

  • Fixed slow loading of .3ds file with a texture when using Python bindings.
  • Fixed crash when triangulating NURBS surfaces.
  • Fixed issue where in some cases shape normals are written beyond array boundaries.