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
Don't consider the pivot.
#define __FBClassDeclare(Name, Parent)
For internal use only.
Return this value when you can provided the requested value.
#define FB_DEFINE_COMPONENT(DllTag, Type)
Define a component and give it the ability to be a property.
FBManipMode
Manipulator Mode.
Do nothing with the value.
Three dimensional scaling vector.
Four x Four (double) Matrix.
Set all components of the value.
FBReferencialType
Specify the referential when a manipulation function is called.
This is the default value to return, means that you will handle the manipulation. ...
FBManipulationSetResult
Manipulation Set Result.
Unknown Manipulation Mode.
Set only the Y component of the value.
Global additive rotation.
Referential is in global coordinate.
Contains definitions for devices, boxes and models.
FBManipPivot
Specify how the pivot should be interpreted.
FBSetType
Specify what to do with the provided value.
Consider the translation of the pivot.
Referential is in local coordinate.
Add the provided value to the original value.
Scaling Manipulation Mode.
FBEffectorSetID
Effector ID identifier.
FBManipulationGetResult
Manipulation Get Result.
Consider the scaling of the pivot.
Return this value when you cannot provided the requested value, another manipulator will try to provi...
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
Return this value when you have set the value.
#define FBSDKNamespace
FBSDKNamespace define.
Consider the rotation of the pivot.
Return this value when you don't want handle the request, another manipulator will try to handle it...
Do nothing with the value.
MotionBuilder SDK base class.
Set the XYZ components of the value.
FBEffectorId
All effector nodes.
Contains definitions for actors, characters, and marker sets In Development.
Character Manipulator class.
FBManipulationStartResult
Manipulation Start Result.
A character is the link between a motion source and a character model.
This value means that the manipulation will be done, but the manipulation will not be undoable...
AnimationNodeNotify evaluation information.
Set only the X component of the value.
FBSetWhat
Specify what part of the provided value should be used.
Return this value to prevent other manipulator to handle the request.
FBBodyNodeId
All body nodes.
Rotation Manipulation Mode.
Translation Manipulation Mode.
Manipulation will be skipped.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
Set only the Z component of the value.