Share

What's New in the MotionBuilder 2027 SDK

Software Dependencies

The following operating systems, compilers, and languages are required:

Linux:

  • RHEL 8.10/9.7, or Rocky Linux 8.10/9.7
  • gcc-toolset-14

Windows:

  • Windows 11
  • Microsoft Visual Studio 2022, with the "Desktop development with C++" and "C++ CMake tools for Windows" Visual Studio components installed

Common:

  • CMake 3.19 or higher
  • Ninja build
  • Python 3.13.9
  • FBX SDK 2020.3.9

Common (optional):

  • QT 6.8.3
  • PySide2 6.8.3
  • Boost 1.88.0
  • USD 0.25.11

MotionBuilder now requires CMake and Ninja to compile samples and new plugins. See Using C++ with MotionBuilder for details.

Changes to the API

New methods

  • TransactionAddPropertyRename() and TransactionAddObjectRename() added to FBUndoManager: TransactionAddPropertyRename adds a property rename operation in the undo stack and TransactionAddObjectRename adds an object rename operation in the undo stack.
  • GetPanesLayoutMode() and SetPanesLayoutMode() added to FBRenderer: returns and sets the panes layout mode in the Viewer.
  • GetPaneSizeRatio() and SetPaneSizeRatio() added to FBRenderer: returns and sets the size (width and height) ratio of a pane in a pane layout in the Viewer.
  • IsKeySelected(), GetKeySelectionTimeSpan(), SetKeySelectionTimeSpan() and ClearKeySelection() added to FBPlayerControl: IsKeySelected() returns if at least one key is selected in the Transport Control, GetKeySelectionTimeSpan() gets the time span of the selected keys in the Transport Controls, SetKeySelectionTimeSpan() sets the time span of the keys to select in the Transport Controls and ClearKeySelection() clears the key selection in the Transport Controls.
  • GetSelectedAnimationNodes() added to FBPlayerControl: returns the animation nodes associated to the selected keys in the Transport Controls.
  • FieldWriteR() and FieldReadR() added to FBFbxObject: lets you write and read raw data to/from an FBX object.

New enums

  • FBPanesLayoutMode: Panes layout mode in the Viewer.
  • FBPlugMoveSrcLocation: Source location when moving a plug.

New properties and enums values

  • MultiLoadNamespaceList added to FBFbxOptions: lets you specify a list of namespaces separated by '~' that will be used when merging multiple scenes.
  • OwnerObject added to FBAnimationNode: returns the owner object of the property related to an animation node.
  • Reference added to FBEventDblClick: returns the reference associated with an element double-clicked.
  • OnPreEditNode added to FBTree: new callback called before node edition.

Changes made to existing methods

  • MoveSrcAt() of the FBPlug: lets you now specify where the source plug should be moved to compared to another plug.

Deprecated methods

From FBRenderer:

  • void SetPaneCount( unsigned int pPaneCount )
  • unsigned int GetPaneCount()

From FBFbxOptions:

  • void SetNamespaceList(const FBStringList& pNamespaceList)
  • FBStringList GetNamespaceList()
  • void SetMultiLoadNamespaceList( const FBStringList& pMultiLoadNamespaceList )
  • FBStringList GetMultiLoadNamespaceList()

Back to top

Changes specific to the Python API

  • Parent added to FBAnimationNode: returns the parent animation node of an animation node.

From FBNamespace:

  • ContentCount property deprecated.

From FBLight:

  • ConeAngle property deprecated.

Was this information helpful?