New Functionality
- Stereo camera rig now enables 3D in MotionBuilder, and interoperability with Maya. This is implemented with the new classes
FBCameraStereo, FBCameraStereotype, and FBStereoDisplayMode, and with extensions to FBVideoGrabOptions. Some of this functionality
requires specific hardware: check the release notes.
- Any webcam that Windows recognises can be used as a device. The FBVideoIn class has been extended. The new functionality is
demonstrated in the new sample Python script: VideoInput.py.
- FBTake class now includes the MergeLayers function. The new functionality is demonstrated in the new Python script MergeAnimationLayer.py.
- Extended exposure of optical data to Python: FBOpticalGap, FBModelOpticalAdvance, FBOpticalSegment, FBRigidBody, FBModelMarkerOptical,
FBPropertyListMarkerSegment, FBPropertyListOpticalSegement, FBPropertyListOpticalGap, FBModelOpticalAdvanced.
- Vertex color display is now exposed. Parameter changes have been made to FBGeometry VertexInit and VertexAdd, and there have
been many changes to FBGeometry. Look for objects including the name "color", for example VertexColorSet. New functionality
is demonstrated in VertexColor.py.
- New class exposure to Python gives functions for matrix, T,R,S to matrix, matrix to T,R,S, local/global conversions, vector
operations, vertex operations, rotation utilities, and others. New classes in Python are FBVector2d, FBVector3d, FBVector4d,
FBSVector, FBNormal, FBVertex, FBUV, FBColor, FBColorAndAlpha, and FBMatrix. Functionality is demonstrated in MathUtilities.py,
Matrix.py, and Vectors.py.
- Hybrid motion capture device: it is now possible to record with both optical and bones data at the same time. A new function
is FBAnimationNode::WriteGlobalData. Functionality is demonstrated in two new C++ sample projects deviceopticalhybrid (the
device) and opticalhybriddevicetester (a server to output test data).
- TimeWarp curve is now exposed in the new class FBTimeWarpManager. The new sample TimeWarp.py shows the usage of FBTimeWarpManager
by creating a model and its animation, then creating and merging a TimeWarp onto its animation node.
- Time code property support: in the FBEvaluateInfo class the functions GetLocalTime and GetSystemTime replace GetLocalStart,
GetLocalStop, GetSystemStart, and GetSystemStop.
- You can now create an auxiliary effector. The FBCharacter class includes two new functions CreateAuxiliary and GetEffectorModel.
The new functionality is demonstrated in the new Python script MatchAuxiliaryEffectors.py.
- FBTreeNode has a new boolean attribute, checked, that you can use to set the state of CheckBoxes created with FBTree.
- It is now possible to program the pressing of a button in the Properties window, for example the Solid Look property on a
control rig.
- Geometry cache recording and playback:
New classes
- FBPointCacheManager
- FBDeformer
- FBDeformerType
- FBPointCacheFile
New functions
- FBCharacter::GetSkinModelList
- FBModel::NoFrustumCullingRequire
- FBModel:: NoFrustumCullingRelease
- FBModel::UseFrustrumCulling
- FBModel::Deformers
- FBModel::SkeletonDeformable
- FBModel::BlendShapeDeformable
- FBModel::ConstrainDeformable
- FBModel::PointCacheDeformable
- CharacterPointCache.py: shows the character point cache workflow.
Software Dependencies
- Changes to the Open Reality (C++) SDK necessitates recompilation of plugins.
- Qt 4.7.
- HIK 4.7.
- Changes to some accessor functions: to get or set a value you now use the property instead of the function.
- The default location of configuration was the Program Files directory, but to be compliant with Windows post XP, they have
been moved to My Documents.
- MB_CONFIG_DIR: new environment variable which you can optionally set to override the default location of the MotionBuilder
configuration files.
- User help and learning materials are now located on the web, and are no longer included with the installer.
- You can now see profiling for evaluation, devices, and rendering. When profiling a scene you can now see what tasks are being
performed by MotionBuilder, when, and for how long. This is implemented via the new classes FBProfileTaskCycle, FBProfileTimeEven,
FBProfiler, and FBProfilerHelper. A new UI window Profile Center provides a visualization.
- New functions FBBeginChangeAllModels and FBEndChangeAllModels allow you to control scene refresh. This could be used to improve
performance.
- FBFbxManager is deprecated. Functionality is moved to FBApplication.
- Unchanged from MotionBuilder 2011 are the use of Visual Studio 2008 SP1 and Python 2.6.4.
Bug Fixes and Enhancements
- Setting FBSpreadCell::Style to kFBCellStyle: view no longer crashes.
- Performance with scenes containing a large number of models is improved. May apply to scenes containing more than 1000 models.
The following samples were updated:
- ortoolcharacter
- ortoolcluster
- ortoolconstraint
- orstretchdeformer
- orpositionfromposition
- ortoolimportexport
- ortoolbatch
- ortoolpose
- orvideodevice
- FBConstraintManager.py
- BlendShape_Editor.py
- Keyboardmapper.py
The help system is no longer installed on your computer with the MotionBuilder installer. Instead, it is available online
at: www.autodesk.com/motionbuilder-sdkdoc-2012-enu.