Open Reality Reference Guide
|
|
Go to the documentation of this file.
45 #include <kaydaradef.h>
50 #define FBSDK_DLL K_DLLIMPORT
55 #include <fbxsdk/fbxsdk_nsbegin.h>
56 class FbxAnimCurveNode;
61 #include <fbxsdk/fbxsdk_nsend.h>
66 #define ANIMATIONNODE_TYPE_NUMBER "Number"
67 #define ANIMATIONNODE_TYPE_TIME "Time"
68 #define ANIMATIONNODE_TYPE_TIMECODE "TimeCode"
69 #define ANIMATIONNODE_TYPE_VECTOR "Vector"
70 #define ANIMATIONNODE_TYPE_VECTOR_4 "Vector4"
71 #define ANIMATIONNODE_TYPE_OBJECT "Object"
72 #define ANIMATIONNODE_TYPE_REFERENCE "Reference"
73 #define ANIMATIONNODE_TYPE_EVENT "Event"
74 #define ANIMATIONNODE_TYPE_STRING "String"
77 #define ANIMATIONNODE_TYPE_ACTION "Action"
78 #define ANIMATIONNODE_TYPE_BOOL "Bool"
79 #define ANIMATIONNODE_TYPE_ENUM "Enum"
80 #define ANIMATIONNODE_TYPE_INTEGER "Integer"
81 #define ANIMATIONNODE_TYPE_OCCLUSION "Occlusion"
82 #define ANIMATIONNODE_TYPE_FIELDOFVIEWX "FieldOfViewX"
83 #define ANIMATIONNODE_TYPE_FIELDOFVIEWY "FieldOfViewY"
84 #define ANIMATIONNODE_TYPE_OPTICALCENTERX "OpticalCenterX"
85 #define ANIMATIONNODE_TYPE_OPTICALCENTERY "OpticalCenterY"
86 #define ANIMATIONNODE_TYPE_IKREACHTRANSLATION "IK Reach Translation"
87 #define ANIMATIONNODE_TYPE_IKREACHROTATION "IK Reach Rotation"
90 #define ANIMATIONNODE_TYPE_COLOR "Color"
91 #define ANIMATIONNODE_TYPE_LOCAL_TRANSLATION "Lcl Translation"
92 #define ANIMATIONNODE_TYPE_LOCAL_ROTATION "Lcl Rotation"
93 #define ANIMATIONNODE_TYPE_LOCAL_SCALING "Lcl Scaling"
94 #define ANIMATIONNODE_TYPE_TRANSLATION "Translation"
95 #define ANIMATIONNODE_TYPE_ROTATION "Rotation"
96 #define ANIMATIONNODE_TYPE_SCALING "Scaling"
99 #define ANIMATIONNODE_TYPE_COLOR_RGBA "ColorAndAlpha"
105 #include <fbxsdk/fbxsdk_nsbegin.h>
107 #include <fbxsdk/fbxsdk_nsend.h>
109 #ifdef FBSDKUseNamespace
110 namespace FBSDKNamespace {
129 kFBInterpolatorCurveLinearIn,
130 kFBInterpolatorCurveLinearOut,
131 kFBInterpolatorCurveSmoothIn,
132 kFBInterpolatorCurveSmoothOut,
133 kFBInterpolatorCurveSlowIn,
134 kFBInterpolatorCurveSlowOut,
135 kFBInterpolatorCurveFastIn,
136 kFBInterpolatorCurveFastOut,
137 kFBInterpolatorCurveLast
176 kFCurveExtrapolationConst = 1,
177 kFCurveExtrapolationRepetition = 2,
178 kFCurveExtrapolationMirrorRepetition = 3,
179 kFCurveExtrapolationKeepSlope = 4,
180 kFCurveExtrapolationRelativeRepetition = 5
227 DataFBFCurveKey* mLocalPtr;
228 void FBFCurveKeyInitProperties();
445 bool pInclusive =
true );
832 kFBEventAnimationNodeDataChange,
833 kFBEventAnimationNodeConstraintChange,
834 kFBEventAnimationNodeNone
855 FBPropertyEventAnimationNodeType
Type;
968 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
969 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
991 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
992 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
1006 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
1007 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
1021 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
1022 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
1036 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
1037 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
1411 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
1412 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
1426 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
1427 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
1699 FBTake(
const char* pName, HIObject pObject=NULL);
1776 #ifdef MERGE_PREVIEW
1784 bool CanDoMergePreview();
1789 bool IsInMergePreviewMode();
1794 bool DoMergePreview();
1798 void QuitMergePreview();
2009 bool pInclusive =
true,
2011 bool pOnLockedProperties =
false );
2029 bool pInclusive =
true,
2031 bool pOnLockedProperties =
false );
2050 bool pInclusive =
true,
2052 bool pOnLockedProperties =
false,
2066 bool pInclusive =
true,
2068 bool pOnLockedProperties =
false );
2083 bool pInclusive =
true,
2085 bool pOnLockedProperties =
false );
2101 bool pInclusive =
true,
2103 bool pOnLockedProperties =
false,
2122 typedef void (*TimeWarpChangeCallback)(
void* pObject);
2285 FBSDK_DLL FBXSDK_NAMESPACE::FbxProperty
FBtoFBXProperty(
FBProperty* pSourceProperty,
FBTake* pSourceTake, FBXSDK_NAMESPACE::FbxObject* pDestinationObject, FBXSDK_NAMESPACE::FbxScene* pDestinationScene, FBXSDK_NAMESPACE::FbxAnimStack* pDestinationStack,
bool pCopyAnimation=
true);
2299 #ifdef FBSDKUseNamespace
FBPropertyFCurve Curve
Read Only Property: Curve with the key set to the custom tangent type.
bool KeyGetMarkedForManipulation(int pIndex)
Get the key manipulation state.
FBPropertyTangentConstantMode TangentConstantMode
Read Write Property: Tangent's constant mode
void DuplicateSelectedLayers()
Duplicate the selected layers.
void KeySetRightTangentWeight(int pIndex, float pValue)
Set the key right tangent weight at the specified index.
FBPropertyTime Time
Read Only Property: Time of the key.
bool SetCandidate(double *Data, bool pCheckLocked=false)
Set the current candidate values for current time.
@ kFBPropertyStateEventTypeDestroyed
Property connector was destroyed (property animation was deleted)
FBPropertyString Label
Read Write Property: Label (UI Name).
bool MoveCurrentLayerDown()
Move the current layer down, similar to using the button to move the layer in the Animation Layer too...
FBFCurveKey(const FBFCurveKey &pFCurveKey)
Constructor.
@ kFBTangentModeTimeIndependent
Time independent, is calculated based upon the slope between the previous and next key values....
void SetCurrentLayer(int pLayerIndex)
Set the current layer for the take.
@ kFBPropertyStateEventTypeDetached
Property connector was detached (property animation was delete from the scene, but it still keep in c...
virtual void FBDelete() override
Virtual FBDelete function.
FBPropertyBool MarkedForManipulation
Read Write Property: Is the key marked for manipulation.
int GetCurrentLayer()
Get the current layer for the take.
FBComponent * GetParentComponent()
Return the parent object holding the FBAnimationNode of the curve if possible.
@ kFBInterpolationCount
Number of interpolation types.
FBPropertyEventAnimationNodeType Type
Read Only Property: Type of selection event.
@ kFBAnimLayerMerge_AllLayers_AllProperties
Merge the animation of all properties of the selected models from all the layers to the BaseAnimation...
@ kFBLayerRotationModeEulerRotation
The rotation will be computed component by component.
bool operator==(const FBFCurveKey &pValue) const
Overloaded == operator.
PropertyEvent: Event when a key that doesn't have a custom tangent is added.
virtual int Add(FBComponent *pItem) override
Add a component to the list.
bool IsSelected()
Verify if the layer is selected.
@ kFBPropertyComponent1
Second component (e.g.: Y, Green, etc.).
@ kFBFCurveEventTypeKeyMassOperation
An operation affecting multiple keys was made.
@ kFBTangentCustomIndex0
First custom tangent type registered in the system.
@ kFBFCurveEventTypeKeyTensionChanged
A key tension was changed (only valid on TCB key)
FBPropertyTangentClampMode TangentClampMode
Read Write Property: Tangent's clamp method.
int GetTimeWarpNickNumberAtIndex(FBTake *pTake, kLong pIndex)
Get the Nick Number of one TimeWarp At specific index in a Take.
FBColor GetTimeMarkColor(int pIndex)
Returns the color associated with a time mark.
FBAnimationLayer * GetChildLayer(int pIndex)
Get the nth child layer of this layer.
void KeySetInterpolation(int pIndex, FBInterpolation pValue)
Set the key interpolation type at the specified index.
virtual void FBDelete() override
Virtual FBDelete function.
@ kFBAnimationNodeConnectorTypeNone
The animation node connector is not connected and doesn't have a constant value set to it.
static FBFCurveEventManager & TheOne()
Get the global object for this class.
This class is used when changing the interpolation type/custom tangent index of a key with a custom t...
#define FB_DEFINE_ENUM(DllTag, Type)
Define an enum and give it the ability to be a property.
@ kFBAnimationNodeConnectorTypeConnectedIn
The animation node input connector is connected to an animation node output connector (valid for inpu...
FCurve Event Manager Interface to the FBFCurveEventManager.
@ kFBPropertyComponentAll
All components.
FBPropertyFCurve Curve
Read Only Property: Curve to evaluate.
FBPropertyBool TangentBreak
Read Write Property: Tangent's break status
FBPropertyString CustomTangentName
Read Only Property: Name of custom tangent, will be displayed in the interface.
@ kFBFCurveEventTypeKeyInterpolationChanged
A key interpolation mode was changed.
bool SetTimeMarkName(int pIndex, const char *pName)
Sets a new name for an existing time mark.
void KeySetTangentConstantMode(int pIndex, FBTangentConstantMode pValue)
Set the key tangent's constant mode at the specified index.
FBAnimationNode * GetAnimationToRecord()
Get animation node to record to.
FBTangentClampMode
Different clamping modes for the tangents.
int GetPostExtrapolationCount()
Get count for post extrapolation.
FBPropertyString UserName
Read Only Property: Name of animation node.
@ kFBLayerModeAdditive
Layer value will be added to the other layers to computed the final value.
@ kFBPropertyComponent2
Third component (e.g.: Z, Blue, etc.).
FBAnimationLayer(const char *pName, int pLayerID, HIObject pObject=NULL)
Constructor.
FBPropertyFloat LeftDerivative
Read Write Property: Left derivative, in units/seconds.
class K_DLLIMPORT FBPropertyBase< kReference, kFBPT_kReference > FBPropertykReference
Property: kReference
FBAnimationNode * GetParentAnimationNode()
Return the parent FBAnimationNode of the curve if possible.
void KeyRemoveAt(FBTime pTime)
Remove key at the specified time.
FBPropertyFCurve Curve
Read Only Property: Curve that will receive the new key.
class K_DLLIMPORT FBPropertyBase< int, kFBPT_int > FBPropertyInt
Property: int
bool UnregisterProperty(FBPropertyAnimatable *pProperty)
Unregister a property from the FCurve Event Manager.
FBPropertyTangentWeightMode TangentWeightMode
Read Write Property: Tangent's weight mode. Setting the value for LeftTangentWeight/RightTangentWeigh...
void PlotTakeOnProperties(FBTime pPlotPeriod, FBArrayTemplate< FBProperty * > *pPropertiesToPlot)
Plot the animation on given properties.
The transform manipulator has begun doing modifications This event occurs every time a manipulator:
PropertyEvent: Event when a custom tangent that needs to be evaluated.
bool KeySetMarkedForManipulation(int pIndex, bool pValue)
Set the key manipulation state.
@ kFBTangentModeClampProgressive
Time independent, will flatten the tangent handles when the key value goes over or under the previous...
void SetParentLayer(FBAnimationLayer *pParentLayer)
Set the parent layer.
void SetPostExtrapolationCount(int pCount)
Set count for post extrapolation.
bool OffsetAnimation(FBTime &pOffsetTime, FBTime pStartTime=FBTime::MinusInfinity, FBTime pStopTime=FBTime::Infinity, bool pInclusive=true, int pLayerID=-1, bool pOnLockedProperties=false)
Offset the animation (FCurve keys) of this take object within a time range by a given offset time.
@ kFBTimeMarkAction_None
No action. The mark is just visual hint.
void TimeWarpAddToTake(FBTake *pTake, FBAnimationNode *pTimeWarp, int pNickNumber=0)
Add one TimeWarp to a Take.
FBPropertyString Comments
Read Write Property: Take comments.
@ kFBLayerModeInvalidIndex
Invalid value.
FBTake * operator[](int pIndex)
Get the take at pIndex.
FBPropertyStateEventType
This enum indicates what modification was made to the animation of a tracked property.
void PlotTakeOnSelectedProperties(FBTime pPlotPeriod)
Plot the animation on selected properties.
FBPropertyFloat Continuity
Read Write Property: Continuity (TCB).
FBPropertyEventAnimationNodeKeyAdd OnKeyAdd
Event: Called when adding a key that doesn't have a custom tangent, you can specify some of its param...
FBAnimationNode * GetParentAnimationNode()
Return the parent FBAnimationNode of the curve if possible.
@ kFBAnimationNodeConnectorTypeConstantIn
The animation node input connector has a constant value set to it (valid for input connector only).
A box is a fundamental building block in the application architecture.
@ kFBTangentClampModeClamped
The tangent will be flattened when the key is placed at the same value as an adjacent key.
FBAnimationNodeConnectorType
Different types for the animation node connectors.
PropertyEvent: Event when a key with a custom tangent that needs some of its parameters to be specifi...
void PlotTakeOnSelectedProperties(FBPlotOptions *pPlotOptions)
Plot the animation on selected properties.
FBPropertyInterpolation DefaultInterpolation
Read Write Property: Default type of interpolation.
FBInterpolatorCurveType
Types of interpolator for an FCurve.
@ kFBTangentModeUser
Used to represent all splines with no lost data (HERMITE, BEZIER, CATMUL, etc.)
~FBFCurveKey()
Destructor.
bool KeySetSelected(int pIndex, bool pValue)
Set the key selected state.
FBLayerRotationMode
Rotation mode for layer.
FBAnimationNode * Find(const char *pNodeName)
Find an animation node.
FBEventAnimationNodeType
Event based on animation node.
@ kFBTangentConstantModeNormal
The tangent will contain the value of the current keyframe until the next keyframe.
int GetNextTimeMarkIndex()
Returns the next time mark index, based on the current local time.
FBPropertyBool Mute
Read Write Property: If true, the layer is muted. A muted layer is not included in the result animati...
@ kFBInterpolationCustom
Custom interpolation.
@ kFBFCurveEventTypeKeyTangentBreakChanged
A key break mode was changed.
int AddCustomTangentType(const char *pTangentName, const char *pTangentFBXName)
Register a new custom tangent in the system.
float KeyGetRightDerivative(int pIndex)
Get the key right derivative value at the specified index.
FBPropertyComponents
Property Components Bit Field (XYZ, RGB, RGBA, UV, XYZW, etc.).
Option parameters for plotting.
static const FBTime Infinity
Time constant: Infinity, the largest time value.
void TimeWarpRegisterChangeEvent(TimeWarpChangeCallback pCallback, void *pObject)
Register a callback Called when some changes related to TimeWarp happen.
FBPropertyListFCurveKey Keys
List: Keys.
virtual void FBDelete() override
Virtual FBDelete function.
@ kFBPropertyStateEventTypeUnknownOperation
Invalid event.
Time Warp Manager Interface to the Time Warp Manager.
virtual int Remove(FBAnimationNode *pItem)
Remove an animation node from the list.
void KeyRemove()
Remove key at current time.
@ kFBFCurveEventTypeKeyContinuityChanged
A key continuity was changed (only valid on TCB key)
FBTimeWarpManager()
Constructor.
FBPropertyFloat RightTangentWeight
Read Write Property: Right tangent weight
float KeyGetLeftTangentWeight(int pIndex)
Get the key left tangent weight at the specified index.
void GetCompleteChildHierarchy(FBArrayTemplate< FBAnimationLayer * > *pChildArray)
Get the all the children hierarchy of the layer, including children not directly connected to this la...
FBPropertyString CurveName
Read Only Property: Name of curve.
@ kFBInterpolationCubic
Cubic interpolation.
FBPropertyEventAnimationNodeEvaluate OnEvaluate
Event: Called when evaluating the node, you must evaluate your curve and return the computed value.
FBPropertyAnimatableDouble Weight
Read Write Property: The weight value of a layer determines how much it is present in the result anim...
FBExtrapolationMode
Modes for pre / post extrapolation.
virtual void RemoveAt(int pIndex)
Remove an animation node from pIndex.
class K_DLLIMPORT FBPropertyBase< double, kFBPT_double > FBPropertyDouble
Property: double
void PlotAllTakesOnProperties(FBTime pPlotPeriod, FBArrayTemplate< FBProperty * > *pPropertiesToPlot)
Plot the animation on given properties for all takes.
@ kFBTangentWeightModeNextLeft
Next key left tangent weight active.
FBTangentCustomIndex KeyGetTangentCustomIndex(int pIndex)
Get the key tangent's custom index at the specified index.
FBPropertyListCustomTangent()
Constructor.
bool DeleteAnimationOnObjects(FBArrayTemplate< FBBox * > *pObjects, FBTime pStartTime=FBTime::MinusInfinity, FBTime pStopTime=FBTime::Infinity, bool pInclusive=true, int pLayerID=-1, bool pOnLockedProperties=false)
Delete animation (FCurve keys) of this take object on given objects within a time range.
FBCurveEvaluationEvent(HKEventBase pEvent)
Constructor.
FBInterpolation
Types of interpolation for an FCurve.
FBPropertyFCurveEventType EventType
Read Only Property: Type of fcurve event.
@ kFBFCurveEventTypeUnknownOperation
Invalid event.
void TimeWarpRename(FBTake *pTake, FBAnimationNode *pTimeWarp, const char *pNewName)
bool WriteData(double *Data, FBEvaluateInfo *pEvaluateInfo)
Write data to animation node.
FBPropertyFloat Tension
Read Write Property: Tension (TCB).
Used to access animation stack.
FBPropertyDouble Result
Read Write Property: Write the resulting value in that prorperty.
FBPropertyString CustomTangentFBXName
Read Only Property: Name of custom tangent, will be used in the FBX file to identify custom key type.
@ kFBPropertyStateEventTypeMassOperation
Property was heavily modified (switching to story tool, story clip deleted...)
FBEventAnimationNode(HKEventBase pEvent)
Constructor.
static FBTimeWarpManager & TheOne()
Get the global object for this class.
void KeySetLeftBezierTangent(int pIndex, float pValue)
Set the key left bezier tangent value at the specified index.
FBPropertyFloat LeftBezierTangent
Read Write Property: Left bezier tangent
FBComponent * GetParentComponent()
Return the parent object holding the property if possible.
FBTimeMarkAction GetTimeMarkAction(int pIndex)
Returns the action associated with a time mark.
FBPropertyCustomKeyChangeType ChangeType
Read Write Property: Indicate which setting of the key was/will be changed.
FBPropertyBool RecordMode
Read Write Property: Is the node in recording mode (device connectors)?
FBPropertyInt CustomTangentIndex
Read Only Property: Index of the custom tangent in the system. When you will evaluate a key with your...
FBPropertyPropertyStateEventType EventType
Read Only Property: Event type, please see the FBPropertyStateEventType for the possible types.
float KeyGetTCBContinuity(int pIndex)
Get the key continuity value at the specified index (TCB key).
FBTangentConstantMode
Different constant modes for the tangents.
int GetTimeWarpNickNumber(FBTake *pTake, FBAnimationNode *pTimeWarp)
Get the Nick Number of one TimeWarp in a Take.
@ kFBTangentClampModeNone
The tangent will act normally.
void KeySetTCBTension(int pIndex, float pValue)
Set the key tension value at the specified index (TCB key).
int GetLayerCount()
Get the layer count.
FBCurveCustomKeyAddEvent(HKEventBase pEvent)
Constructor.
bool ReadData(double *Data, FBTime pTime, bool pConvertGlobalToLocal=false)
Read data from animation node.
This class is used when an evaluation must be done on your custom tangents. It contains the necessary...
int GetPreExtrapolationCount()
Get count for pre extrapolation.
@ kFBPropertyStateEventTypeAttached
Property connector was added (can happen when undoing a delete operation, which set back the property...
@ kFBPropertyComponent0
First component (e.g.: X, Red, etc.).
FBPropertyTimeSpan LocalTimeSpan
Read Write Property: Local time span.
FBPropertyDouble KeyIndex
Read Only Property: Index of the key to evaluate, a decimal value indicates an evaluation between two...
FBTime ConvertNodeToGlobalTime(FBTime &pKeyTime)
Convert node time to global time.
FBFCurveKey(::KFCurve *pFCurve=NULL, int pKeyIndex=1)
Constructor.
bool SetTimeMarkColor(int pIndex, FBColor pColor)
Sets a new color for an existing time mark.
bool KeyGetSelected(int pIndex)
Get the key selected state.
PropertyEvent: Event when a property is modified, to be used with the FBFCurveEventManager.
bool IsKey()
Verifies if there is a key at the current.
K_DLLIMPORT FBProperty * FBXtoFBProperty(FBXSDK_NAMESPACE::FbxProperty *pSourceProperty, FBXSDK_NAMESPACE::FbxAnimStack *pSourceStack, FBComponent *pDestinationObject, FBTake *pDestinationTake, bool pCopyAnimation=true, FBTime pLimitStart=FBTime::MinusInfinity, FBTime pLimitEnd=FBTime::Infinity)
Convert a FbxProperty to a FBProperty, useful to extract some properties from a FBX file to a MotionB...
const char * GetCustomTangentTypeName(int pIndex)
Return the UI name of the custom tangent at the specified index.
bool IsEvaluationRecursive(FBEvaluateInfo *pEvaluateInfo)
Return true if the animation node had valid data for pEvaluateInfo and read from this connector cause...
void KeySetTangentWeightMode(int pIndex, FBTangentWeightMode pValue)
Change the tangent weight for a key.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
@ kFBInterpolationChange
The interpolation of the key was/will be modified (FBInterpolation).
FBAnimationLayer * GetLayer(int pLayerIndex)
Get the layer object that have the specified ID.
A take is a container for animation in a scene.
int KeyAdd(FBTime &pTime, double pValue, FBInterpolation pInterpolation=kFBInterpolationCubic, FBTangentMode pTangentMode=kFBTangentModeAuto)
Add a key at the specified time.
void PlotTakeOnSelected(FBTime pPlotPeriod)
Plot the animation on selected models.
void TimeWarpUnregisterChangeEvent(TimeWarpChangeCallback pCallback, void *pObject)
Unregister a call registered.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
Custom Tangent Manager Interface to the Custom Tangent Manager.
bool KeyRemove(int pIndex)
Remove key at index.
@ kFBTangentModeAuto
This is the equivalent to a cardinal spline with no parametrization. In the UI, it is identified as S...
FBPropertyBool IsPreCall
Read Only Property: True before the value is actually changed (allowing you to cache the current stat...
FBTangentCustomIndex
Custom tangent index for the tangents.
FBPropertyFloat LeftTangentWeight
Read Write Property: Left tangent weight
bool RemoveCustomTangentType(const char *pTangentName)
Remove a custom tangent from the system.
bool KeyDelete(FBTime pStart=FBTime::MinusInfinity, FBTime pStop=FBTime::Infinity, bool pInclusive=false)
Delete keys within a time range.
FBAnimationNode * GetTimeWarpFromNickNumber(FBTake *pTake, int pNumber)
Get the timeWarp of specific Nick Number in a Take.
void KeyReplaceBy(FBFCurve &pSource, FBTime pStart=FBTime::MinusInfinity, FBTime pStop=FBTime::Infinity, bool pUseExactGivenSpan=false, bool pKeyStartEndOnNoKey=true)
Replace keys within a range in current function curve with keys found in a source function curve.
void DeleteAllTimeMarks()
Delete all time marks from the take.
FBPropertyFloat RightDerivative
Read Write Property: Right derivative, in units/seconds.
This class is used when adding a key with a custom tangent to a curve. It contains the necessary info...
FBPropertyEventAnimationNodeCustomKeyAdd OnCustomKeyAdd
Event: Called when adding a key with a custom tangent, you must specify some of its parameters.
float KeyGetTCBBias(int pIndex)
Get the key bias value at the specified index (TCB key).
FBPropertyEventAnimationNode OnChange
Event: Called when the value of this property is modified
Animatable property base class.
FBAnimationLayer * GetParentLayer()
Get the parent layer.
float KeyGetTCBTension(int pIndex)
Get the key tension value at the specified index (TCB key).
FBProperty * GetParentProperty()
Return the parent FBProperty of the curve if possible.
@ kFBFCurveEventTypeKeyVelocityChanged
A key velocity was changed.
int GetChildCount()
Get the child layer count of this layer.
void TimeWarpClearTake(FBTake *pTake)
Clear all TimeWarp in a Take, and removed from the DataSet.
int SetTimeMarkTime(int pIndex, FBTime pTime)
Sets a new time for an existing time mark.
class K_DLLIMPORT FBPropertyBase< FBTime, kFBPT_Time > FBPropertyTime
Property: FBTime
FBXSDK_NAMESPACE::FbxAnimCurve * GetFBXCurve()
Get the FbxAnimCurve to evaluate, used in story tool for read-only clip.
float KeyGetRightBezierTangent(int pIndex)
Get the key right bezier tangent value at the specified index.
FBExtrapolationMode GetPostExtrapolationMode()
Get modes for post extrapolation.
static FBFCurve * CreateInterpolatorCurve(FBInterpolatorCurveType pCurveType)
Create and interpolator curve.
FBPropertyLayerRotationMode LayerRotationMode
Read Only Property: Layer rotation mode. Cannot be applied to the BaseAnimation Layer.
@ kFBTimeMarkAction_Loop
When reaching the mark, the playback loops to previous global mark (or start frame if any).
FBTime GetTimeMarkTime(int pIndex)
Returns the time associated with a time mark.
#define __FBClassDeclare(Name, Parent)
For internal use only.
class K_DLLIMPORT FBPropertyBaseAnimatable< double, kFBPT_double > FBPropertyAnimatableDouble
FBPropertyBaseAnimatableDouble type definition.
bool SetTimeMarkAction(int pIndex, FBTimeMarkAction pAction)
Sets a new action for an existing time mark.
static const FBTime MinusInfinity
Time constant: Minus Infinity, the lowest negative time value.
FBPropertyTime Time
Read Only Property: Time where the key will be added.
bool DeleteAnimationOnProperties(FBArrayTemplate< FBProperty * > *pProperties, FBTime pStartTime=FBTime::MinusInfinity, FBTime pStopTime=FBTime::Infinity, bool pInclusive=true, int pLayerID=-1, bool pOnLockedProperties=false, FBPropertyComponents pPropertyComponents=kFBPropertyComponentAll)
Delete animation (FCurve keys) of this take object on given properties within a time range.
@ kFBAnimLayerMerge_AllLayers_SelectedProperties
Merge the animation of the selected properties of the selected models from all the layers to the Base...
FBProperty * GetProperty()
Return the FBProperty related to the event.
This class is used when the state of a property tracked by the FBFCurveEventManager is changed.
@ kFBTangentCustomIndex1
Second custom tangent type registered in the system.
void TimeWarpMergeCurveNode(FBTake *pTake, FBProperty *pEvalProp, FBAnimationNode *pNode, FBAnimationNode *pTimeWarpNode)
Property: Base property class.
void CreateNewLayer()
Create a new layer.
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
bool OffsetAnimationOnObjects(FBArrayTemplate< FBBox * > *pObjects, FBTime &pOffsetTime, FBTime pStartTime=FBTime::MinusInfinity, FBTime pStopTime=FBTime::Infinity, bool pInclusive=true, int pLayerID=-1, bool pOnLockedProperties=false)
Offset the animation (FCurve keys) of this take object on given objects within a time range by a give...
@ kFBFCurveEventTypeKeyTangentChanged
A key tangent was changed.
FBPropertyInt RightCustomTangentTypeIndex
Read Only Property: FbxAnimCurveOnly - Type of the right key custom tangent type, -1 if not a custom ...
FBPropertyFloat Bias
Read Write Property: Bias (TCB).
FBTimeMarkAction
Time (Global & Take) Mark assigned action.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
void KeySetTCBBias(int pIndex, float pValue)
Set the key bias value at the specified index (TCB key).
void PlotAllTakesOnObjects(FBTime pPlotPeriod, FBArrayTemplate< FBBox * > *pObjectsToPlot)
Plot the animation on given objects for all takes.
int GetLayerIndex()
Get the layer index.
void TimeWarpInitTake(FBTake *pTake)
Allocate container for the TimeWarp in one Take.
FBCustomKeyChangeType
Indicate if the interpolation or the custom index of the key will be/was modified.
float KeyGetLeftBezierTangent(int pIndex)
Get the key left bezier tangent value at the specified index.
PropertyEvent: Event when a fcurve is changed.
void RemoveTimeWarpFromScene(FBAnimationNode *pTimeWarp)
Remove a TimeWarp from Scene.
@ kFBFCurveEventTypeKeyTimeChanged
A key time was changed.
@ kFBAnimLayerMerge_AllLayers_CompleteScene
Merge the animation of all properties from all the layers to the BaseAnimation layer.
int GetPreviousTimeMarkIndex()
Returns the previous time mark index, based on the current local time.
void AddChildLayer(FBAnimationLayer *pAnimationLayer)
Add a child to the layer.
FBAnimationNode * GetTimeWarpAtIndex(FBTake *pTake, kLong pIndex)
Get the TimeWarp in a Take At specific Index.
@ kFBFCurveEventTypeKeyAdded
A new key was added.
const char * GetTimeMarkName(int pIndex)
Returns the name associated with a time mark.
@ kFBAnimLayerMerge_SelectedLayers_CompleteScene
Merge the animation of all properties from the selected layers to the selected layer with the lowest ...
PropertyEvent: Event when a key tangent is changed to a custom tangent/changed to another type from a...
FBTime ConvertGlobalToNodeTime(FBTime &pKeyTime)
Convert global time to node time.
FBFCurveCustomTangent * operator[](int pIndex)
Get the custom tangent at pIndex.
FBTangentMode
Methods of tangent calculation.
bool DeleteAnimation(FBTime pStartTime=FBTime::MinusInfinity, FBTime pStopTime=FBTime::Infinity, bool pInclusive=true, int pLayerID=-1, bool pOnLockedProperties=false)
Delete animation (FCurve keys) of this take object within a time range.
FBPropertyInt KeyIndexStart
Read Only Property: Index of the first key which is involved in the event.
FBTangentWeightMode KeyGetTangentWeightMode(int pIndex)
Get the tangent weight mode for a key.
void SetPreExtrapolationCount(int pCount)
Set count for pre extrapolation.
void ClearAllPropertiesOnCurrentLayer()
Clear all the animation on the current layer.
FBPropertyBool Solo
Read Write Property: If true, the layer is soloed. When you solo a layer, you mute other layers that ...
FBPropertyAnimationNodeConnectorType ConnectorType
Read Only Property: Animation node connector type.
@ kFBTangentModeBreak
Like USER but left slope may differ from right.
bool Evaluate(double *Data, FBTime pTime, bool pEvaluateCandidate=true)
Evaluate the animation node data for a given time.
FBPropertyChanged OnPropertyEvent
Event: Called when a registered property state is modified (detached, destroyed......
@ kFBFCurveEventTypeKeyPreExtrapolationChanged
A curve pre-extrapolation value was changed.
@ kFBFCurveEventTypeKeyBiasChanged
A key bias was changed (only valid on TCB key)
@ kFBTangentWeightModeBoth
Right tangent and next key left tangent weight are active.
bool KeyGetTangentBreak(int pIndex)
Get the key tangent's break status at the specified index.
@ kFBFCurveEventTypeKeyValueChanged
A key value was changed.
FBPropertyInt KeyIndexStop
Read Only Property: Index of the last key which is involved in the event.
FBPropertyInt CurveIndex
Read Only Property: Index of curve.
FBPropertyBool Selected
Read Write Property: Is the key selected.
int GetCustomTangentTypeCount()
Return the number of tangent currently registered in the system.
FBPropertyListAnimationNode Nodes
List: List of animation nodes.
void ClearAllProperties(bool pOnSelectedObjectsOnly, bool pOnLockedProperties=false)
Clear the animation on all the properties.
@ kFBLayerRotationModeInvalidIndex
Invalid value.
void KeySetLeftDerivative(int pIndex, float pValue)
Set the key left derivative value at the specified index.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
void SelectLayer(bool pValue, bool pExclusiveSelect)
Select the layer.
FBInterpolation KeyGetInterpolation(int pIndex)
Get the key interpolation type at the specified index.
FBPropertyStateEvent(HKEventBase pEvent)
Constructor.
void KeySetLeftTangentWeight(int pIndex, float pValue)
Set the key left tangent weight at the specified index.
@ kFBAnimLayerMerge_SelectedLayers_AllProperties
Merge the animation of all properties of the selected models from the selected layers to the selected...
FBTangentMode KeyGetTangentMode(int pIndex)
Get the key tangent mode at the specified index.
void PlotTakeOnObjects(FBTime pPlotPeriod, FBArrayTemplate< FBBox * > *pObjectsToPlot)
Plot the animation on given objects.
FBPropertyLayerMode LayerMode
Read Write Property: Layer mode. By default, the layer is in kFBLayerModeAdditive mode....
void KeySetTangentBreak(int pIndex, bool pValue)
Set the key tangent's break status at the specified index.
int GetTimeMarkCount()
Returns the number of time marks on the take.
bool OffsetAnimationOnProperties(FBArrayTemplate< FBProperty * > *pProperties, FBTime &pOffsetTime, FBTime pStartTime=FBTime::MinusInfinity, FBTime pStopTime=FBTime::Infinity, bool pInclusive=true, int pLayerID=-1, bool pOnLockedProperties=false, FBPropertyComponents pPropertyComponents=kFBPropertyComponentAll)
Offset the animation (FCurve keys) of this take object on given properties within a time range by a g...
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
void KeySetTangentCustomIndex(int pIndex, FBTangentCustomIndex pValue)
Set the key tangent's custom index at the specified index.
PropertyEvent: Base event class.
bool ReadData(double *Data, FBEvaluateInfo *pEvaluateInfo, bool pConvertGlobalToLocal=false)
Read data from animation node.
FBTime KeyGetTime(int pIndex)
Get the key time value at the specified index.
class K_DLLIMPORT FBPropertyBase< float, kFBPT_float > FBPropertyFloat
Property: float
bool GetLayerRealSelection()
Real selection for layer.
This class represents a custom tangents object in the system.
FBPropertyAnimationNode Parent
Read Only Property: Parent animation node.
FBPropertyInterpolation Interpolation
Read Write Property: Type of interpolation.
@ kFBLayerRotationModeQuaternionRotation
The rotation will be computed using quaternion.
bool MoveCurrentLayerUp()
Move the current layer up, similar to using the button to move the layer in the Animation Layer tool.
FBComponent * GetParentComponent()
Return the parent object holding the FBAnimationNode of the curve if possible.
FBAnimationNode * GetParentAnimationNode()
Return the parent FBAnimationNode of the curve if possible.
void KeySetTangentMode(int pIndex, FBTangentMode pValue)
Set the key tangent mode at the specified index.
void DisableIfNotWritten(FBEvaluateInfo *pEvaluateInfo)
AnimationNodeNotify is called on FBBox for every animation node that data was pulled by system.
FBExtrapolationMode GetPreExtrapolationMode()
Get modes for pre extrapolation.
class K_DLLIMPORT FBPropertyBase< bool, kFBPT_bool > FBPropertyBool
Property: bool
FBPropertyBool Lock
Read Write Property: If true, the layer is locked. You cannot modify keyframes on a locked layer.
kLong GetTimeWarpCount(FBTake *pTake)
Get the count of TimeWarp in a Take.
virtual void FBDelete() override
Deletion method.
void TimeWarpCopyTake(FBTake *pDstTake, FBTake *pSrcTake)
Copy all the TimeWarp in one Take, add to another Take.
@ kFBPropertyComponent3
Fourth component (e.g.: W, Alpha, etc.).
@ kFBFCurveEventTypeKeyWeightChanged
A key left/right weight was changed, please note that this event can affect the key specified in the ...
@ kFBCustomTangentChange
The custom tangent value was/will be modified (FBTangentCustomIndex).
FBAnimationNode * Find(FBBox *pOriginalOwner, const char *pDataType)
Find an animation node.
FBAnimationNode * FindByLabel(const char *pNodeLabel)
Find an animation node by label name.
FBPropertyTimeSpan ReferenceTimeSpan
Read Write Property: Reference time span.
void SetPreExtrapolationMode(FBExtrapolationMode pExtrapolationMode)
Set modes for pre extrapolation.
bool RegisterProperty(FBPropertyAnimatable *pProperty)
Register a property to the FCurve Event Manager.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
@ kFBFCurveEventTypeKeyRemoved
A key was removed.
FBPropertykReference Reference
Read Write Property: User-defined reference.
void PlotAllTakesOnSelectedProperties(FBTime pPlotPeriod)
Plot the animation on selected properties for all takes.
FBPropertyFCurve Curve
Read Only Property: Curve that will receive the new key.
FBFCurveEvent(HKEventBase pEvent)
Constructor.
#define FB_DEFINE_LIST(DllTag, Type)
Define a component list.
void PlotTakeOnSelected(FBPlotOptions *pPlotOptions)
Plot the animation on selected models.
void EditBegin(int pKeyCount=-1)
Setup function to begin adding keys.
@ kFBAnimationNodeConnectorTypeConnectedOut
The animation node output connector is connected to at least one animation node input connector (vali...
FBPropertyTime Time
Read Write Property: Time of key.
bool ReadData(double *Data)
Read the last data evaluated for this animation node ...
@ kFBMergeLayerModeOverride
The resulting layer will be in override mode, if possible.
@ kFBTangentWeightModeNone
Tangent weight disabled.
float Evaluate(FBTime &pTime)
Evaluate FCurve at pTime.
void KeySetRightDerivative(int pIndex, float pValue)
Set the key right derivative value at the specified index.
int GetDataDoubleArrayCount()
If the DataPtr is of numeric value type ...
@ kFBTimeMarkAction_Stop
When reaching the mark, the playback stops.
FBPropertyFloat RightBezierTangent
Read Write Property: Right bezier tangent
void SetBufferType(bool pGlobal)
Set buffer type for ANIMATIONNODE_TYPE_LOCAL_TRANSLATION, ANIMATIONNODE_TYPE_LOCAL_ROTATION and ANIMA...
PropertyList: Concrete class for PropertyList of component
void PlotAllTakesOnSelected(FBTime pPlotPeriod)
Plot the animation on selected models for all takes.
void KeyCandidate(FBTime pTime=FBTime::Infinity)
Keys the current candidate values if no time is specified, at current time.
@ kFBAnimLayerMerge_SelectedLayers_SelectedProperties
Merge the animation of the selected properties of the selected models from the selected layers to the...
bool(* kFBDataHandler)(void *pBuffer, FBEvaluateInfo *pEvaluateInfo, FBAnimationNode *pAnimationNode, void *p1, void *p2)
kFBDataHandler
void RemoveLayer(int pLayerIndex)
Remove a layer.
void MergeLayers(FBAnimationLayerMergeOptions pMergeOptions, bool pDeleteMergedLayers, FBMergeLayerMode pMergeMode, bool pMergeLockedProperties=false)
Merge the selected layers.
FBMergeLayerMode
Merge layer mode for animation layers. This will specify the mode of the resulting merged layer,...
@ kFBFCurveEventTypeKeyTangentClampModeChanged
A key clamping mode was changed.
Template class to contain an array of items.
FBPropertyInt LeftCustomTangentTypeIndex
Read Only Property: FbxAnimCurveOnly - Type of the left key custom tangent type, -1 if not a custom t...
float KeyGetRightTangentWeight(int pIndex)
Get the key right tangent weight at the specified index.
virtual int GetCount()
Get a count of the number of animation nodes in list.
void KeySetTime(int pIndex, FBTime pValue)
Set the key time value at the specified index.
bool DeleteTimeMark(int pIndex)
Delete a time mark from the take.
FBAnimationStack(const char *pName, HIObject pObject=NULL)
Constructor.
void KeySetRightBezierTangent(int pIndex, float pValue)
Set the key right bezier tangent value at the specified index.
#define FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
FBAnimationLayerMergeOptions
Merge option for animation layers.
FBAnimationNode(const char *pName=NULL, HIObject pObject=NULL)
Constructor.
FBPropertyTime Time
Read Only Property: Time to evaluate.
bool SetTimeWarpNickNumber(FBTake *pTake, FBAnimationNode *pTimeWarp, int pNumber)
Set the Nick Number of one TimeWarp in a Take.
FBComponent * GetParentComponent()
Return the parent object holding the FBAnimationNode of the curve if possible.
K_DLLIMPORT FBXSDK_NAMESPACE::FbxProperty FBtoFBXProperty(FBProperty *pSourceProperty, FBTake *pSourceTake, FBXSDK_NAMESPACE::FbxObject *pDestinationObject, FBXSDK_NAMESPACE::FbxScene *pDestinationScene, FBXSDK_NAMESPACE::FbxAnimStack *pDestinationStack, bool pCopyAnimation=true)
Convert a FBProperty to a FbxProperty, useful to extract some properties to a FBX file.
This class is used when a modification is made on a FCurve. It contains the necessary information to ...
virtual int GetCount()
Get a count of the number of keys in list.
void SetPostExtrapolationMode(FBExtrapolationMode pExtrapolationMode)
Set modes for post extrapolation.
float KeyGetLeftDerivative(int pIndex)
Get the key left derivative value at the specified index.
@ kFBLayerModeOverride
Layer value will override the value of the other precedent layers.
@ kFBTangentModeTCB
TCB spline (3 parameters: TENSION, CONTINUITY, BIAS)
@ kFBInterpolationLinear
Linear interpolation.
void RemoveTimeWarp(FBTake *pTake, FBProperty *pEvalProp)
Undo apply a timeWarp in a Take to an evaluation property, just disconnect the evaluation property fr...
FBPropertyEventAnimationNodeCustomKeyChange OnCustomKeyChange
Event: Called when the interpolation/tangent of a key is changed to/from a custom tangent or custom t...
FB_DEFINE_COMPONENT(K_DLLIMPORT, AnimationNode)
Animation node class.
@ kFBFCurveEventTypeDerivativedChanged
A key left/right/both derivative was changed, please note that this event can affect the key specifie...
@ kFBFCurveEventTypeKeyTangentConstantChanged
A key constant mode was changed.
void KeySetTCBContinuity(int pIndex, float pValue)
Set the key continuity value at the specified index (TCB key).
FBPropertyFloat Value
Read Write Property: Value of Key
@ kFBMergeLayerModeAdditive
The resulting layer will be in additive mode, if possible.
bool KeyOffset(FBTime &pOffsetTime, FBTime pStartTime=FBTime::MinusInfinity, FBTime pStopTime=FBTime::Infinity, bool pInclusive=true)
Offset keys within a time range by a given offset time.
class K_DLLIMPORT FBPropertyBase< FBTimeSpan, kFBPT_TimeSpan > FBPropertyTimeSpan
Property: FBTimeSpan
float KeyGetValue(int pIndex)
Get the key value at the specified index.
void SetLayerRealSelection(bool pValue)
Set real selection for layer.
int GetSizeOfData()
Get sizeof void Data Ptr.
virtual void RemoveAt(int pIndex)
Remove an FCurveKey.
@ kFBTangentCustomIndex2
Third custom tangent type registered in the system.
void PlotTakeOnObjects(FBPlotOptions *pPlotOptions, FBArrayTemplate< FBBox * > *pObjectsToPlot)
Plot the animation on given objects.
bool KeyOffset(FBTime &pOffsetTime, int pStartIndex, int pStopIndex)
Offset keys within an index range by a given offset time.
virtual int Add(FBAnimationNode *pItem)
Add an animation node to the list.
static FBFCurveCustomTangentManager & TheOne()
Get the global object for this class.
FBTangentConstantMode KeyGetTangentConstantMode(int pIndex)
Get the key tangent's constant mode at the specified index.
@ kFBTangentConstantModeNext
The tangent will contain the value of the next keyframe.
void TimeWarpTakeChange()
Call registered callbacks when changes related to TimeWarp happen.
void KeyAdd(double *pData, FBInterpolation pInterpolation=kFBInterpolationCubic, FBTangentMode pTangentMode=kFBTangentModeAuto)
Add a key to the animation node at current time.
@ kFBNoChange
No change to the key.
PropertyEvent: UI idle event.
FBPropertyInt KeyCount
Read Only Property: Number of keys.
int AddTimeMark(FBTime pTime, const char *pName=NULL)
Add a time mark to the take.
bool ApplyTimeWarp(FBTake *pTake, FBProperty *pEvalProp, FBAnimationNode *pTimeWarp)
Apply the TimeWarp in a Take to an evaluation property, just connect the storing property for the Tim...
AnimationNodeNotify evaluation information.
FBAnimationNode * GetAnimationToPlay()
Get animation node to play from.
virtual FBFCurveKey operator[](int pIndex)
Overloaded [] operator.
FBFCurveChanged OnFCurveEvent
Event: Called when a registered FCurve is modified.
@ kFBTangentWeightModeRight
Right tangent weight active.
Property class: const char * (String).
void KeySetTangentClampMode(int pIndex, FBTangentClampMode pValue)
Set the key tangent's clamp method at the specified index.
virtual void RemoveAt(int pIndex) override
Remove the component at pIndex from list.
MotionBuilder SDK base class.
virtual void FBDelete() override
Virtual FBDelete function.
FBTake * CopyTake(const char *pNewTakeName)
Copy the take.
void KeyInsert(FBTime &pTime, FBInterpolation pInterpolation=kFBInterpolationCubic, FBTangentMode pTangentMode=kFBTangentModeAuto)
Insert a key without affecting the curve shape.
FBFCurve(HIObject pObject=NULL)
Constructor.
void KeySetValue(int pIndex, float pValue)
Set the key value at the specified index.
FBFCurveCustomTangent(HIObject pObject=NULL)
Constructor.
FBTake(const char *pName, HIObject pObject=NULL)
Constructor.
FBPropertyFCurve FCurve
Read Write Property: FCurve for animation.
void KeyAdd(const FBTime &pTime, double *pData, FBInterpolation pInterpolation=kFBInterpolationCubic, FBTangentMode pTangentMode=kFBTangentModeAuto)
Add a key to the animation node.
FBPropertyInt KeyIndex
Read Only Property: Index of the new key that will be added
FBAnimationLayer * GetLayerByName(const char *pName)
Get the layer object that have the specified name.
FBTangentClampMode KeyGetTangentClampMode(int pIndex)
Get the key tangent's clamp method at the specified index.
int FindTimeWarpNickNumberGlobal(FBAnimationNode *pTimeWarp)
FBPropertyExtrapolationMode ExtrapolationMode
Read Write Property: Extrapolation mode
void DestroyTimeWarpFromTake(FBTake *pTake, FBAnimationNode *pTimeWarp)
Destroy the TimeWarp in a Take, and removed from the DataSet.
void EditEnd(int pKeyCount=-1)
End key adding sequence.
@ kFBLayerModeOverridePassthrough
If the layer has a weight of 75%, the precedent layers will have a combined effect of 25% on the fina...
FBPropertyInt KeyIndex
Read Only Property: Index of the key with the custom tangent type.
FBAnimationNode * TimeWarpCreateNew(const char *pName)
FBPropertyTangentMode TangentMode
Read Write Property: Tangent calculation method.
void EditClear()
Empty FCurve of all keys.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
FBFCurveEventType
This enum indicates what modification was made to a tracked FCurve.
bool KeyDelete(int pStartIndex, int pStopIndex)
Delete keys within an index range.
@ kFBMergeLayerModeAutomatic
The resulting layer will be in override mode if one of the source layer is in override,...
Used to access animation layer properties and modify them.
bool WriteGlobalData(double *Data, FBEvaluateInfo *pEvaluateInfo)
Write global data to animation node.
virtual FBAnimationNode * operator[](int pIndex)
Overloaded [] operator.
FBCurveCustomKeyChangeEvent(HKEventBase pEvent)
Constructor.
@ kFBFCurveEventTypeKeyPostExtrapolationChanged
A curve post-extrapolation value was changed.
@ kFBInterpolationInvalid
Invalid interpolation.
FBPropertyTangentCustomIndex TangentCustomIndex
Read Write Property: Tangent's custom index
@ kFBInterpolationConstant
Constant interpolation.
FBTangentWeightMode
Active tangent weight, no/one/both side are active on a key.
FBPropertyBool Live
Read Write Property: Is animation live?