1 #ifndef __FBCHARACTERMANIPULATOR_H__
2 #define __FBCHARACTERMANIPULATOR_H__
48 #define FBSDK_DLL K_DLLIMPORT
55 #ifdef FBSDKUseNamespace
207 virtual void TranslationStopManipulation () = 0;
242 virtual void RotationStopManipulation () = 0;
275 virtual void ScalingStopManipulation () = 0;
280 bool IsReleasePinPressed();
298 #define FBCharacterManipulatorCtrlSetDeclare( ClassName, Parent ) \
299 FBClassDeclare( ClassName, Parent ); \
301 ClassName(const char* pName):Parent(pName) { FBClassInit; } \
307 #define FBCharacterManipulatorCtrlSetImplementation( ThisComponent ) \
308 FBClassImplementation( ThisComponent )
335 virtual void AllocateState(
FBCharacter* pCharacter);
340 virtual void DeallocateState();
350 bool IsFullBodyNoPull();
360 bool IsReachOverride();
365 bool IsStiffnessOverride();
411 int GetDescendantEffectorCount(
FBEffectorId pEffectorId);
424 float GetEffectorReachTValue(
int pEffectorId);
429 void SetEffectorReachTValue(
int pEffectorId,
float pValue);
435 float GetEffectorPullValue(
int pEffectorId);
440 void SetEffectorPullValue(
int pEffectorId,
float pValue);
446 void TranslationSetGlobal(
FBTVector pVector,
int pEffectorId);
451 void TranslationSetLocal(
FBTVector pVector,
int pEffectorId);
461 void TranslationStopManipulation ();
470 virtual void RotationStopManipulation ();
479 virtual void ScalingStopManipulation ();
482 #ifdef FBSDKUseNamespace
FBEffectorSetID
Effector ID identifier.
#define __FBClassDeclare(Name, Parent)
For internal use only.
#define FB_DEFINE_COMPONENT(DllTag, Type)
Define a component and give it the ability to be a property.
FBManipulationGetResult
Manipulation Get Result.
Return this value when you have set the value.
Return this value when you don't want handle the request, another manipulator will try to handle it...
Do nothing with the value.
Four x Four (double) Matrix.
Set the XYZ components of the value.
Consider the rotation of the pivot.
FBManipulationStartResult
Manipulation Start Result.
AnimationNodeNotify evaluation information.
FBSetWhat
Specify what part of the provided value should be used.
Contains definitions for devices, boxes and models.
Set only the X component of the value.
Return this value to prevent other manipulator to handle the request.
MotionBuilder SDK base class.
FBEffectorId
All effector nodes.
This value means that the manipulation will be done, but the manipulation will not be undoable...
Manipulation will be skipped.
Set only the Z component of the value.
Three dimensional scaling vector.
Rotation Manipulation Mode.
FBBodyNodeId
All body nodes.
Translation Manipulation Mode.
FBManipMode
Manipulator Mode.
Return this value when you can provided the requested value.
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
Don't consider the pivot.
Character Manipulator class.
A character is the link between a motion source and a character model.
#define FBSDKNamespace
FBSDKNamespace define.
Set all components of the value.
FBManipulationSetResult
Manipulation Set Result.
This is the default value to return, means that you will handle the manipulation. ...
Do nothing with the value.
Unknown Manipulation Mode.
Set only the Y component of the value.
Referential is in global coordinate.
FBReferencialType
Specify the referential when a manipulation function is called.
Contains definitions for actors, characters, and marker sets In Development.
Add the provided value to the original value.
Scaling Manipulation Mode.
Global additive rotation.
Consider the translation of the pivot.
Referential is in local coordinate.
FBManipPivot
Specify how the pivot should be interpreted.
FBSetType
Specify what to do with the provided value.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
Consider the scaling of the pivot.
Return this value when you cannot provided the requested value, another manipulator will try to provi...