Open Reality Reference Guide
fbcharacter.h
Go to the documentation of this file.
1 #ifndef __FBCHARACTER_H__
2 #define __FBCHARACTER_H__
3 /**************************************************************************
4  Copyright (c) 1994 - 2009 Autodesk, Inc. and/or its licensors.
5  All Rights Reserved.
6 
7  The coded instructions, statements, computer programs, and/or related
8  material (collectively the "Data") in these files contain unpublished
9  information proprietary to Autodesk, Inc. and/or its licensors, which is
10  protected by Canada and United States of America federal copyright law
11  and by international treaties.
12 
13  The Data may not be disclosed or distributed to third parties, in whole
14  or in part, without the prior written consent of Autodesk, Inc.
15  ("Autodesk").
16 
17  THE DATA IS PROVIDED "AS IS" AND WITHOUT WARRANTY.
18  ALL WARRANTIES ARE EXPRESSLY EXCLUDED AND DISCLAIMED. AUTODESK MAKES NO
19  WARRANTY OF ANY KIND WITH RESPECT TO THE DATA, EXPRESS, IMPLIED OR
20  ARISING BY CUSTOM OR TRADE USAGE, AND DISCLAIMS ANY IMPLIED WARRANTIES
21  OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR
22  PURPOSE OR USE. WITHOUT LIMITING THE FOREGOING, AUTODESK DOES NOT
23  WARRANT THAT THE OPERATION OF THE DATA WILL BE UNINTERRUPTED OR ERROR
24  FREE.
25 
26  IN NO EVENT SHALL AUTODESK, ITS AFFILIATES, PARENT COMPANIES, LICENSORS
27  OR SUPPLIERS ("AUTODESK GROUP") BE LIABLE FOR ANY LOSSES, DAMAGES OR
28  EXPENSES OF ANY KIND (INCLUDING WITHOUT LIMITATION PUNITIVE OR MULTIPLE
29  DAMAGES OR OTHER SPECIAL, DIRECT, INDIRECT, EXEMPLARY, INCIDENTAL, LOSS
30  OF PROFITS, REVENUE OR DATA, COST OF COVER OR CONSEQUENTIAL LOSSES OR
31  DAMAGES OF ANY KIND), HOWEVER CAUSED, AND REGARDLESS OF THE THEORY OF
32  LIABILITY, WHETHER DERIVED FROM CONTRACT, TORT (INCLUDING, BUT NOT
33  LIMITED TO, NEGLIGENCE), OR OTHERWISE, ARISING OUT OF OR RELATING TO THE
34  DATA OR ITS USE OR ANY OTHER PERFORMANCE, WHETHER OR NOT AUTODESK HAS
35  BEEN ADVISED OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE.
36 
37 **************************************************************************/
38 
46 #include <kaydaradef.h>
47 #ifndef FBSDK_DLL
51  #define FBSDK_DLL K_DLLIMPORT
52 #endif
53 
54 #include <fbsdk/fbconstraint.h>
55 #include <fbsdk/fbcycleanalysisnode.h>
57 
58 #ifdef FBSDKUseNamespace
59  namespace FBSDKNamespace {
60 #endif
61 
62 class FBCharacterSolver;
63 
66 {
67  kFBSkeletonInvalidIndex = -1,
68  kFBSkeletonHipsIndex = 0,
69  kFBSkeletonLeftHipIndex,
70  kFBSkeletonLeftKneeIndex,
71  kFBSkeletonLeftAnkleIndex,
72  kFBSkeletonLeftFootIndex,
73  kFBSkeletonRightHipIndex,
74  kFBSkeletonRightKneeIndex,
75  kFBSkeletonRightAnkleIndex,
76  kFBSkeletonRightFootIndex,
77  kFBSkeletonWaistIndex,
78  kFBSkeletonChestIndex,
79  kFBSkeletonLeftCollarIndex,
80  kFBSkeletonLeftShoulderIndex,
81  kFBSkeletonLeftElbowIndex,
82  kFBSkeletonLeftWristIndex,
83  kFBSkeletonRightCollarIndex,
84  kFBSkeletonRightShoulderIndex,
85  kFBSkeletonRightElbowIndex,
86  kFBSkeletonRightWristIndex,
87  kFBSkeletonNeckIndex,
88  kFBSkeletonHeadIndex,
89  kFBSkeletonLeftThumbAIndex,
90  kFBSkeletonLeftThumbBIndex,
91  kFBSkeletonLeftThumbCIndex,
92  kFBSkeletonLeftIndexAIndex,
93  kFBSkeletonLeftIndexBIndex,
94  kFBSkeletonLeftIndexCIndex,
95  kFBSkeletonLeftMiddleAIndex,
96  kFBSkeletonLeftMiddleBIndex,
97  kFBSkeletonLeftMiddleCIndex,
98  kFBSkeletonLeftRingAIndex,
99  kFBSkeletonLeftRingBIndex,
100  kFBSkeletonLeftRingCIndex,
101  kFBSkeletonLeftPinkyAIndex,
102  kFBSkeletonLeftPinkyBIndex,
103  kFBSkeletonLeftPinkyCIndex,
104  kFBSkeletonRightThumbAIndex,
105  kFBSkeletonRightThumbBIndex,
106  kFBSkeletonRightThumbCIndex,
107  kFBSkeletonRightIndexAIndex,
108  kFBSkeletonRightIndexBIndex,
109  kFBSkeletonRightIndexCIndex,
110  kFBSkeletonRightMiddleAIndex,
111  kFBSkeletonRightMiddleBIndex,
112  kFBSkeletonRightMiddleCIndex,
113  kFBSkeletonRightRingAIndex,
114  kFBSkeletonRightRingBIndex,
115  kFBSkeletonRightRingCIndex,
116  kFBSkeletonRightPinkyAIndex,
117  kFBSkeletonRightPinkyBIndex,
118  kFBSkeletonRightPinkyCIndex,
119  kFBSkeletonReferenceIndex,
120  kFBSkeletonLastIndex
121 };
122 
125 {
126  kFBInvalidNodeId = -1,
131  kFBLeftFootNodeId,
135  kFBRightFootNodeId,
138  kFBLeftCollarNodeId,
142  kFBRightCollarNodeId,
146  kFBNeckNodeId,
148  kFBLeftHipRollNodeId,
149  kFBLeftKneeRollNodeId,
150  kFBRightHipRollNodeId,
151  kFBRightKneeRollNodeId,
152  kFBLeftShoulderRollNodeId,
153  kFBLeftElbowRollNodeId,
154  kFBRightShoulderRollNodeId,
155  kFBRightElbowRollNodeId,
156  kFBSpine2NodeId,
157  kFBSpine3NodeId,
158  kFBSpine4NodeId,
159  kFBSpine5NodeId,
160  kFBSpine6NodeId,
161  kFBSpine7NodeId,
162  kFBSpine8NodeId,
163  kFBSpine9NodeId,
164  kFBLeftThumbANodeId,
165  kFBLeftThumbBNodeId,
166  kFBLeftThumbCNodeId,
167  kFBLeftIndexANodeId,
168  kFBLeftIndexBNodeId,
169  kFBLeftIndexCNodeId,
170  kFBLeftMiddleANodeId,
171  kFBLeftMiddleBNodeId,
172  kFBLeftMiddleCNodeId,
173  kFBLeftRingANodeId,
174  kFBLeftRingBNodeId,
175  kFBLeftRingCNodeId,
176  kFBLeftPinkyANodeId,
177  kFBLeftPinkyBNodeId,
178  kFBLeftPinkyCNodeId,
179  kFBRightThumbANodeId,
180  kFBRightThumbBNodeId,
181  kFBRightThumbCNodeId,
182  kFBRightIndexANodeId,
183  kFBRightIndexBNodeId,
184  kFBRightIndexCNodeId,
185  kFBRightMiddleANodeId,
186  kFBRightMiddleBNodeId,
187  kFBRightMiddleCNodeId,
188  kFBRightRingANodeId,
189  kFBRightRingBNodeId,
190  kFBRightRingCNodeId,
191  kFBRightPinkyANodeId,
192  kFBRightPinkyBNodeId,
193  kFBRightPinkyCNodeId,
194  kFBReferenceNodeId,
195  // -- New bones for 2.0 --
196  kFBLeftThumbInNodeId,
197  kFBLeftThumbDNodeId,
198  kFBLeftIndexInNodeId,
199  kFBLeftIndexDNodeId,
200  kFBLeftMiddleInNodeId,
201  kFBLeftMiddleDNodeId,
202  kFBLeftRingInNodeId,
203  kFBLeftRingDNodeId,
204  kFBLeftPinkyInNodeId,
205  kFBLeftPinkyDNodeId,
206  kFBRightThumbInNodeId,
207  kFBRightThumbDNodeId,
208  kFBRightIndexInNodeId,
209  kFBRightIndexDNodeId,
210  kFBRightMiddleInNodeId,
211  kFBRightMiddleDNodeId,
212  kFBRightRingInNodeId,
213  kFBRightRingDNodeId,
214  kFBRightPinkyInNodeId,
215  kFBRightPinkyDNodeId,
216 
227 
228  kFBLeftFootThumbInNodeId,
229  kFBLeftFootThumbANodeId,
230  kFBLeftFootThumbBNodeId,
231  kFBLeftFootThumbCNodeId,
232  kFBLeftFootThumbDNodeId,
233  kFBLeftFootIndexInNodeId,
234  kFBLeftFootIndexANodeId,
235  kFBLeftFootIndexBNodeId,
236  kFBLeftFootIndexCNodeId,
237  kFBLeftFootIndexDNodeId,
238  kFBLeftFootMiddleInNodeId,
239  kFBLeftFootMiddleANodeId,
240  kFBLeftFootMiddleBNodeId,
241  kFBLeftFootMiddleCNodeId,
242  kFBLeftFootMiddleDNodeId,
243  kFBLeftFootRingInNodeId,
244  kFBLeftFootRingANodeId,
245  kFBLeftFootRingBNodeId,
246  kFBLeftFootRingCNodeId,
247  kFBLeftFootRingDNodeId,
248  kFBLeftFootPinkyInNodeId,
249  kFBLeftFootPinkyANodeId,
250  kFBLeftFootPinkyBNodeId,
251  kFBLeftFootPinkyCNodeId,
252  kFBLeftFootPinkyDNodeId,
253  kFBRightFootThumbInNodeId,
254  kFBRightFootThumbANodeId,
255  kFBRightFootThumbBNodeId,
256  kFBRightFootThumbCNodeId,
257  kFBRightFootThumbDNodeId,
258  kFBRightFootIndexInNodeId,
259  kFBRightFootIndexANodeId,
260  kFBRightFootIndexBNodeId,
261  kFBRightFootIndexCNodeId,
262  kFBRightFootIndexDNodeId,
263  kFBRightFootMiddleInNodeId,
264  kFBRightFootMiddleANodeId,
265  kFBRightFootMiddleBNodeId,
266  kFBRightFootMiddleCNodeId,
267  kFBRightFootMiddleDNodeId,
268  kFBRightFootRingInNodeId,
269  kFBRightFootRingANodeId,
270  kFBRightFootRingBNodeId,
271  kFBRightFootRingCNodeId,
272  kFBRightFootRingDNodeId,
273  kFBRightFootPinkyInNodeId,
274  kFBRightFootPinkyANodeId,
275  kFBRightFootPinkyBNodeId,
276  kFBRightFootPinkyCNodeId,
277  kFBRightFootPinkyDNodeId,
278 
289 
290  kFBLeftHandNodeId,
291  kFBRightHandNodeId,
292  kFBNeck1NodeId,
293  kFBNeck2NodeId,
294  kFBNeck3NodeId,
295  kFBNeck4NodeId,
296  kFBNeck5NodeId,
297  kFBNeck6NodeId,
298  kFBNeck7NodeId,
299  kFBNeck8NodeId,
300  kFBNeck9NodeId,
301 
302  kFBHipsTranslationNodeId,
303 
304  // -- HIK 2016.5 new leaf roll nodes --
305  // this should be consistent with HipsNodeId defined in kernel\humanik.h
306  // so HIKNodeTypeFromNodeId & HIKNodeIndexFromNodeId could map to correct
307  // data.
308  // kFBLastNodeId_Old represent last id before introduction of new roll bone for
309  // previous solvers. First new roll bone id equals to ensure continuity
310  kFBLastNodeId_Old,
311  kFBLeftHipRollNode1Id = kFBLastNodeId_Old,
319 
328 
337 
346 
355 
356  kFBLastNodeId
357 };
358 
360 const int kFBLastActorNodeId = ( kFBHeadNodeId + 1 );
361 
364 {
365  kFBInvalidEffectorId = -1,
366  kFBHipsEffectorId = 0,
367  kFBLeftAnkleEffectorId,
368  kFBRightAnkleEffectorId,
369  kFBLeftWristEffectorId,
370  kFBRightWristEffectorId,
371  kFBLeftKneeEffectorId,
372  kFBRightKneeEffectorId,
373  kFBLeftElbowEffectorId,
374  kFBRightElbowEffectorId,
375  kFBChestOriginEffectorId,
376  kFBChestEndEffectorId,
377  kFBLeftFootEffectorId,
378  kFBRightFootEffectorId,
379  kFBLeftShoulderEffectorId,
380  kFBRightShoulderEffectorId,
381  kFBHeadEffectorId,
382  kFBLeftHipEffectorId,
383  kFBRightHipEffectorId,
384  // -- New effector for 2.0 --
385  kFBLeftHandEffectorId,
386  kFBRightHandEffectorId,
387  kFBLeftHandThumbEffectorId,
388  kFBLeftHandIndexEffectorId,
389  kFBLeftHandMiddleEffectorId,
390  kFBLeftHandRingEffectorId,
391  kFBLeftHandPinkyEffectorId,
392  kFBLeftHandExtraFingerEffectorId,
393  kFBRightHandThumbEffectorId,
394  kFBRightHandIndexEffectorId,
395  kFBRightHandMiddleEffectorId,
396  kFBRightHandRingEffectorId,
397  kFBRightHandPinkyEffectorId,
398  kFBRightHandExtraFingerEffectorId,
399  kFBLeftFootThumbEffectorId,
400  kFBLeftFootIndexEffectorId,
401  kFBLeftFootMiddleEffectorId,
402  kFBLeftFootRingEffectorId,
403  kFBLeftFootPinkyEffectorId,
404  kFBLeftFootExtraFingerEffectorId,
405  kFBRightFootThumbEffectorId,
406  kFBRightFootIndexEffectorId,
407  kFBRightFootMiddleEffectorId,
408  kFBRightFootRingEffectorId,
409  kFBRightFootPinkyEffectorId,
410  kFBRightFootExtraFingerEffectorId,
411  kFBLastEffectorId
412 };
413 
416 {
417  FBEffectorSetDefault = 0,
418  FBEffectorSetAux1,
419  FBEffectorSetAux2,
420  FBEffectorSetAux3,
421  FBEffectorSetAux4,
422  FBEffectorSetAux5,
423  FBEffectorSetAux6,
424  EFBffectorSetAux7,
425  FBEffectorSetAux8,
426  FBEffectorSetAux9,
427  FBEffectorSetAux10,
428  FBEffectorSetAux11,
429  FBEffectorSetAux12,
430  FBEffectorSetAux13,
431  FBEffectorSetAux14,
432  FBLastEffectorSetIndex
433 };
434 
437 {
438  FBLeftHandMemberIndex,
439  FBRightHandMemberIndex,
440  FBLeftFootMemberIndex,
441  FBRightFootMemberIndex,
442  FBLastCharacterMember
443 };
444 
447 {
461 };
462 
463 
464 
467 {
468  kFBCharacterInputActor,
469  kFBCharacterInputCharacter,
470  kFBCharacterInputMarkerSet,
471  kFBCharacterOutputMarkerSet,
472  kFBCharacterInputStance,
473  kFBCharacterInputMoCap
474 };
475 FB_DEFINE_ENUM( FBSDK_DLL, CharacterInputType );
476 
479 {
480  kFBCharacterKeyingFullBody,
481  kFBCharacterKeyingBodyPart,
482  kFBCharacterKeyingSelection,
483  kFBCharacterKeyingFullBodyNoPull,
484 };
485 FB_DEFINE_ENUM( FBSDK_DLL, CharacterKeyingMode );
486 
489 {
490  kFBCharacterResetPropertiesAll,
491  kFBCharacterResetPropertiesSolving,
492  kFBCharacterResetPropertiesDefinition
493 };
494 
497 {
498  kFBCharacterPlotOnControlRig,
499  kFBCharacterPlotOnSkeleton
500 };
501 FB_DEFINE_ENUM( FBSDK_DLL, CharacterPlotWhere );
502 
505 {
506  kFBParamHipsTranslationWorldRigid = 0,
507  kFBParamHipsTranslationBodyRigid,
508  kFBLastHipsTranslationMode
509 };
510 FB_DEFINE_ENUM( FBSDK_DLL, CharacterHipsTranslationMode );
511 
514 {
515  kFBParamRollSolver70 = 0,
516  kFBParamRollSolver75,
517  kFBLastRollSolver
518 };
519 FB_DEFINE_ENUM( FBSDK_DLL, CharacterRollSolver );
520 
523 {
524  kFBParamContactNeverSync = 0,
525  kFBParamContactSyncOnKey,
526  kFBParamContactAlwaysSync,
527  kFBLastContactBehaviour
528 };
529 FB_DEFINE_ENUM( FBSDK_DLL, CharacterContactBehaviour );
530 
533 {
534  kFBControlSetTypeNone = 0,
535  kFBControlSetTypeFKIK,
536  kFBControlSetTypeIKOnly
537 };
538 FB_DEFINE_ENUM( FBSDK_DLL, ControlSetType );
539 
542 {
543  kFBSkeletonNotTracked = 0,
544  kFBSkeletonPositionOnly,
545  kFBSkeletonTracked
546 };
547 FB_DEFINE_ENUM( FBSDK_DLL, SkeletonTrackingState );
548 
551 {
552  kFBSkeletonJointNotTracked = 0,
553  kFBSkeletonJointInferred,
554  kFBSkeletonJointTracked
555 };
556 FB_DEFINE_ENUM( FBSDK_DLL, SkeletonJointTrackingState );
557 
560 {
561  FBCalibrationNoRequest = 0,
562  FBCalibrationInProcessing,
563  FBCalibrationSuccessfully
564 };
565 FB_DEFINE_ENUM( FBSDK_DLL, CalibrationState );
566 
569 {
574 };
575 FB_DEFINE_ENUM( FBSDK_DLL, VisibilityState );
576 
582 
588 
590 // FBMarkerSet - Marker set for an actor
593 FB_DEFINE_COMPONENT( FBSDK_DLL, MarkerSet );
595 
598 
604 {
605  //--- Open Reality declaration.
607 public:
613  FBMarkerSet(const char* pName, HIObject pObject=NULL);
614 
619 
623  void SetReferenceModel( FBModel* pReferenceModel );
624 
630  FBModel* GetMarkerModel( FBSkeletonNodeId pNodeId, int pMarkerIndex );
631 
637  void SetMarkerModel( FBSkeletonNodeId pNodeId, int pMarkerIndex, FBModel* pModel );
638 
644 
650  const char* GetMarkerName( FBSkeletonNodeId pNodeId, int pMarkerIndex );
651 
657  void SetMarkerName( FBSkeletonNodeId pNodeId, int pMarkerIndex, const char* pMarkerName );
658 
660 
665  void GetMarkerTOffset( FBSkeletonNodeId pNodeId, int pMarkerIndex, FBTVector* pTOffset );
666  void SetMarkerTOffset( FBSkeletonNodeId pNodeId, int pMarkerIndex, FBTVector* pTOffset );
668 
670 
675  void GetMarkerROffset( FBSkeletonNodeId pNodeId, int pMarkerIndex, FBRVector* pROffset );
676  void SetMarkerROffset( FBSkeletonNodeId pNodeId, int pMarkerIndex, FBRVector* pROffset );
678 
684  bool GetMarkerOriented( FBSkeletonNodeId pNodeId, int pMarkerIndex );
685 
691  void SetMarkerOriented( FBSkeletonNodeId pNodeId, int pMarkerIndex, bool pIsOriented );
692 
698  bool GetMarkerUsed( FBSkeletonNodeId pNodeId, int pMarkerIndex );
699 
705  void SetMarkerUsed( FBSkeletonNodeId pNodeId, int pMarkerIndex, bool pUsed );
706 
711  int GetMarkerCount( FBSkeletonNodeId pNodeId = kFBSkeletonInvalidIndex );
712 
717  int GetUsedMarkerCount( FBSkeletonNodeId pNodeId = kFBSkeletonInvalidIndex );
718 
725  int AddMarker( FBSkeletonNodeId pNodeId, FBModel* pModel = NULL, bool pIsOriented = false );
726 
730  void SetMarkerSetVisibility(bool pVisibility);
731 
736 
741 
746 
750  void EndTransaction( );
751 
752 };
753 
755 // FBControlSet - Control set for an actor
758 FB_DEFINE_COMPONENT( FBSDK_DLL, ControlSet );
759 
765 {
766  //--- Open Reality declaration.
768 public:
774  FBControlSet(const char* pName, HIObject pObject=NULL);
775 
780 
784  const char* GetReferenceName( );
785 
796  FBModel* GetIKEffectorModel(FBEffectorId pEffectorIndex, int pPivotIndex = 0);
805  const char* GetIKEffectorName(FBEffectorId pEffectorIndex);
806 
807 
808 
813  int GetFKIndex(FBModel* pModel);
818  FBModel* GetFKModel(int pIndex);
823  const char* GetFKName(int pIndex);
824 
828  int GetFKCount();
829 
830 
831 
832  FBPropertyControlSetType ControlSetType;
835 };
836 
843 {
844 public:
849  void GetNodeMatrix(FBBodyNodeId pNodeId, FBMatrix &pNodeGlobalMatrix);
850 };
851 
858 {
859 public:
864  void GetEffectorMatrix(FBEffectorId pEffectorId, FBMatrix &pEffectorGlobalMatrix);
865 
871  void GetReach(FBEffectorId pEffectorId, double &pReachT, double &pReachR);
872 };
873 
875 // FBCharacterMarkerSet - Marker set for an character
878 FB_DEFINE_COMPONENT( FBSDK_DLL, CharacterMarkerSet );
879 
885 {
886  //--- Open Reality declaration.
888 public:
894  FBCharacterMarkerSet(const char* pName, HIObject pObject=NULL);
895 
902 
907 
912 
918 };
919 
926 {
927 public:
932  void GetNodeMatrix(FBSkeletonNodeId pSkeletonId, FBMatrix &pSkeletonGlobalMatrix);
933 };
934 
936 // FBActor - Representation of an actor
940 
943 {
946 };
947 
989 {
990  //--- Open Reality declaration.
992 public:
998  FBActor(const char* pName, HIObject pObject=NULL);
999 
1003  virtual void FBDelete() override;
1004 
1005  FBPropertyMarkerSet MarkerSet;
1006  FBPropertyMarkerSet OutputMarkerSet;
1007 
1013 
1038 
1043 
1048 
1053 
1058 
1063 
1068 
1073 
1078 
1083 
1086 
1089 
1092 
1095 
1098 
1101 
1104 
1107 
1110 
1113 
1116 
1119 
1122 
1125 
1128 
1131 
1134 
1137 
1140 
1143 
1146 
1153 
1160 
1167 
1174 
1181 
1188 
1195 
1202 
1209 
1216 
1218 
1220 
1224 
1228  virtual bool Snap( FBRecalcMarkerSetOffset pRecalcOffset );
1229 
1230 
1234  void UpdateValues( FBEvaluateInfo* pEvalInfo );
1235 
1241  void SetDefinitionScaleVector( FBSkeletonNodeId pSkeletonId, FBVector3d pScaleVector, bool pSymmetricUpdate = true );
1242 
1247  void GetDefinitionScaleVector( FBSkeletonNodeId pSkeletonId, FBVector3d &pScaleVector );
1248 
1254  void SetDefinitionRotationVector( FBSkeletonNodeId pSkeletonId, FBVector3d pRotationVector, bool pSymmetricUpdate = true );
1255 
1260  void GetDefinitionRotationVector( FBSkeletonNodeId pSkeletonId, FBVector3d &pRotationVector );
1261 
1267  void SetDefinitionTranslationVector( FBSkeletonNodeId pSkeletonId, FBVector3d pTranslationVector, bool pSymmetricUpdate = true );
1268 
1273  void GetDefinitionTranslationVector( FBSkeletonNodeId pSkeletonId, FBVector3d &pTranslationVector );
1274 
1278  void SetActorTranslation( FBVector3d pTranslationVector );
1279 
1284 
1290  FBSkeletonState* GetCurrentSkeletonState (bool pResetOrientation=false);
1291 
1296 
1300  void SetLeftGloveReferenceModel( FBModel* pReferenceModel );
1301 
1306 
1310  void SetRightGloveReferenceModel( FBModel* pReferenceModel );
1311 
1312 private:
1313  FBSkeletonState* mDefaultSkeletonState;
1314  FBSkeletonState* mCurrentSkeletonState;
1315 };
1316 
1323 {
1324 public:
1325 
1329  FBMocapJointsState(int pSkeletonJointsCount);
1330  ~FBMocapJointsState();
1331 
1339 };
1340 
1342 // FBCharacter - Representation of a character
1346 FB_DEFINE_COMPONENT( FBSDK_DLL, Character );
1347 
1388 {
1389  //--- Open Reality declaration.
1391 public:
1397  FBCharacter(const char* pName, HIObject pObject=NULL);
1398 
1399  IObject_Declare(override); // Interface to IObject.
1400 
1404  virtual void FBDelete() override;
1405 
1407  FBCharacter* Clone() override;
1408 
1409  FBPropertyCharacterInputType InputType;
1410  FBPropertyCharacterKeyingMode KeyingMode;
1411  FBPropertyActor InputActor;
1412  FBPropertyCharacter InputCharacter;
1414 
1416 
1421 
1426 
1431 
1436 
1440  FBModel* GetModel( FBBodyNodeId pBodyNodeId );
1441 
1446  void GetSkinModelList( FBModelList& pSkinModelList );
1447 
1452 
1457 
1462 
1468  FBModel* GetEffectorModel( FBEffectorId pEffectorId, FBEffectorSetID pEffectorSetID = FBEffectorSetDefault );
1469 
1475 
1480 
1481  /* Get The Translation Offset associated to the given BodyPart
1482  * \param pTVector The Translation Offset
1483  */
1484  void GetTOffset( FBBodyNodeId pBodyNodeId, FBTVector* pTVector );
1485 
1486  /* Get The Rotation Offset associated to the given BodyPart
1487  * \param pRVector The Rotation Offset
1488  */
1489  void GetROffset( FBBodyNodeId pBodyNodeId, FBRVector* pRVector );
1490 
1491  /* Get The Scaling Offset associated to the given BodyPart
1492  * \param pTVector The Scaling Offset
1493  */
1494  void GetSOffset( FBBodyNodeId pBodyNodeId, FBSVector* pSVector );
1495 
1496  /* Get The Transform Offset associated to the given BodyPart
1497  * \param pOffsetMatrix The Translation, Rotation and Scaling Offset
1498  */
1499  void GetTransformOffset( FBBodyNodeId pBodyNodeId, FBMatrix *pOffsetMatrix );
1500 
1501  /* Get The Parent Rotation Offset associated to the given BodyPart
1502  * \param pRVector The Rotation Offset
1503  */
1504  void GetParentROffset( FBBodyNodeId pBodyNodeId, FBRVector* pRVector );
1505 
1512  virtual bool PlotAnimation( FBCharacterPlotWhere pPlotWhere, FBPlotOptions* pPlotOptions );
1513 
1518 
1522  void Retarget( bool pOnBaseLayer );
1523 
1527 
1532 
1539  void SelectModels( bool pSelect, bool pApplyToCharacter, bool pApplyToRig, bool pApplyToExtensions );
1540 
1545  void GoToStancePose( bool pPushUndo = false, bool pIncludeCharacterExtensions = true );
1546 
1551 
1556 
1564  void SetupDeviceMocap(FBDevice* pDevice, int pSkeletonJointsCount, FBBodyNodeId* pSkeletonJointsOrder );
1565 
1570  void SetSensorFloorOffset(double pSensorFloorOffset);
1571 
1576  void PassDeviceMocapData(FBMocapJointsState* pDeviceMocapData);
1577 
1582  bool SetCharacterizeOn( bool pSetAsBiped );
1583 
1587  const char * GetCharacterizeError();
1588 
1592 
1597 
1602  bool CreateControlRig(bool pSetFKIK);
1603 
1609  void ConnectControlRig(FBControlSet* pControlSet, bool pUpdateLimit, bool pResetHierarchy);
1610 
1614 
1622  bool CreateAuxiliary(FBEffectorId pEffectorId, bool pPivot, double pAuxReachT=100, double pAuxReachR=100);
1623 
1628  FBControlSet * GetCurrentControlSet(bool pForce = false);
1629 
1634  bool CreateCharacterMarkerSet(bool pSetActive);
1635 
1641 
1647 
1652 
1656  void SetExternalSolver(int pIndex);
1657 
1662 
1666  void GetActiveBodyPart(bool* pActivePart);
1667 
1672  bool IsRotationPin(FBEffectorId pEffectorIndex);
1673 
1679  bool SetRotationPin(FBEffectorId pEffectorIndex, bool pValue);
1680 
1685  bool IsTranslationPin(FBEffectorId pEffectorIndex);
1686 
1692  bool SetTranslationPin(FBEffectorId pEffectorIndex, bool pValue);
1693 
1698 
1703 
1708 
1713 
1718 
1723 
1728  bool SetIKVisibility( bool pState );
1729 
1734 
1739  bool SetFKVisibility( bool pState );
1740 
1745 
1750  bool SetSkeletonVisibility( bool pState );
1751 
1754 
1756  // ParamModifier
1763  FBPropertyCharacterHipsTranslationMode HipsTranslationMode;
1770  FBPropertyCharacterRollSolver RollSolver;
1771  FBPropertyCharacterContactBehaviour ContactBehaviour;
1772 
1773  FBPropertyAnimatableDouble ScaleCompensation;
1774  FBPropertyAnimatableDouble HipsHeightCompensation;
1775  FBPropertyAnimatableDouble AnkleHeightCompensation;
1776  FBPropertyAnimatableDouble AnkleProximityCompensation;
1777 
1781 
1786 
1791 
1796 
1801 
1806 
1811 
1816 
1821 
1826 };
1827 
1828 
1830 // Property List: MarkerSet
1832 
1837 {
1838 public:
1844  FBMarkerSet* operator[](int pIndex);
1849  virtual int Duplicate(int pIndex);
1850 };
1851 
1853 // Property List: CharacterMarkerSet
1855 
1860 {
1861 public:
1868 };
1869 
1871 // Property List: ControlSet
1873 
1878 {
1879 public:
1885  FBControlSet* operator[](int pIndex);
1886 };
1887 
1889 // Property List: Actor
1891 
1896 {
1897  public:
1903  FBActor* operator[]( int pIndex );
1908  virtual int Duplicate( int pIndex );
1909 };
1910 
1911 
1913 // Property List: Character
1916 
1922 {
1923  public:
1929  FBCharacter* operator[]( int pIndex );
1934  virtual int Duplicate( int pIndex );
1935 };
1936 
1937 //Helpers
1938 
1943 
1949 
1955 
1961 
1966 
1971 
1976 
1981 
1986 
1992 
1997 FBSDK_DLL bool FBLoadCharacterPinningPreset( const char* pPresetName );
1998 
2004 FBSDK_DLL bool FBSaveCharacterPinningPreset( const char* pPresetName, bool pAllowOverwriting = false );
2005 
2010 FBSDK_DLL bool FBDeleteCharacterPinningPreset( const char* pPresetName );
2011 
2016 
2021 
2022 
2023 #ifdef FBSDKUseNamespace
2024  }
2025 #endif
2026 #endif /* _FB_CHARACTER_H_ */
FBActor is used to link motion data to a character.
Definition: fbcharacter.h:989
FBPropertyAnimatableDouble LeftHandPinkyPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1057
FBPropertyVector3d HipsPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1014
FBPropertyColor PivotColor
Read Write Property: The color of the pivot points of the actor.
Definition: fbcharacter.h:1010
FBPropertyBool SymmetryEditTranslation
Read Write Property: Symmetry Edit (Translation) mode state. Only effective when IKManip property is ...
Definition: fbcharacter.h:1221
FBPropertyAnimatableDouble RightHandIndexIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1059
FBPropertyAnimatableDouble RightHandPinkyRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1076
FBPropertyAnimatableDouble LeftHandMiddleMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1045
FBPropertyAnimatableVector3d RightThumbAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1183
FBPropertyAnimatableVector3d RightWristOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1115
FBPropertyVector3d NeckPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1033
FBSkeletonState * GetDefaultSkeletonState()
Return the Default Skeleton State.
FBPropertyAnimatableVector3d RightCollarOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1096
FBPropertyVector3d LeftShoulderPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1026
void UpdateValues(FBEvaluateInfo *pEvalInfo)
Update Internal Values to be corresponding to the Given Evaluate Information.
FBPropertyAnimatableVector3d LeftPinkyCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1180
void GetDefinitionScaleVector(FBSkeletonNodeId pSkeletonId, FBVector3d &pScaleVector)
Get Actor Scaling Definition.
FBPropertyAnimatableDouble LeftHandIndexRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1041
FBPropertyVector3d RightElbowPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1031
FBPropertyColor BodyColor
Read Write Property: The color of the body of the actor.
Definition: fbcharacter.h:1008
FBPropertyAnimatableVector3d RightIndexCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1193
FBPropertyAnimatableDouble RightHandPinkyMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1075
FBPropertyVector3d LeftKneePosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1016
FBPropertyBool SkeletonVisibility
Read Write Property: Show or Hide the Skeleton.
Definition: fbcharacter.h:1036
FBPropertyAnimatableDouble LeftHandIndexIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1039
FBPropertyAnimatableVector3d RightThumbBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1184
FBPropertyAnimatableVector3d RightPinkyAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1211
FBPropertyAnimatableVector3d RightMiddleBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1199
FBPropertyAnimatableVector3d RightPinkyBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1212
FBPropertyAnimatableVector3d RightKneeOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1132
FBPropertyAnimatableVector3d RightElbowOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1108
FBPropertyAnimatableDouble LeftHandRingPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1052
FBPropertyAnimatableDouble LeftHandIndexMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1040
FBPropertyAnimatableVector3d LeftPinkyBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1178
FBActor(const char *pName, HIObject pObject=NULL)
Constructor.
FBPropertyAnimatableDouble LeftHandMiddlePinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1047
FBPropertyAnimatableDouble LeftHandPinkyRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1056
FBPropertyAnimatableVector3d LeftAnkleOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1135
FBPropertyAnimatableVector3d LeftWristOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1112
FBPropertyAnimatableVector3d LeftIndexAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1154
FBPropertyBool SymmetryEditScaling
Read Write Property: Symmetry Edit (Scaling) mode state. Only effective when IKManip property is set ...
Definition: fbcharacter.h:1223
FBPropertyAnimatableVector3d LeftElbowOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1106
FBPropertyAnimatableVector3d RightIndexCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1194
virtual void FBDelete() override
Actual Actor destructor.
FBPropertyAnimatableDouble LeftHandPinkyMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1055
FBPropertyAnimatableVector3d LeftMiddleBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1164
FBPropertyAnimatableDouble RightHandIndexMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1060
FBPropertyAnimatableVector3d LeftMiddleCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1165
FBPropertyAnimatableVector3d LeftWristOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1111
FBPropertyAnimatableVector3d LeftKneeOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1130
FBPropertyAnimatableDouble RightHandPinkyIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1074
FBPropertyAnimatableVector3d HipsOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1121
FBPropertyAnimatableVector3d LeftIndexBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1157
FBPropertyAnimatableVector3d RightRingCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1208
FBPropertyVector3d RightHipPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1019
FBPropertyVector3d HeadPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1034
FBPropertyAnimatableDouble RightHandMiddleRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1066
FBPropertyAnimatableVector3d NeckOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1088
FBPropertyVector3d RightShoulderPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1030
FBPropertyAnimatableVector3d LeftShoulderOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1100
FBPropertyVector3d LeftHipPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1015
FBPropertyColor SkeletonColor
Read Write Property: The color of the skeleton of the actor.
Definition: fbcharacter.h:1009
FBModel * GetLeftGloveReferenceModel()
Get the reference model associated with left hand.
FBPropertyAnimatableVector3d LeftThumbCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1151
FBPropertyAnimatableVector3d RightAnkleOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1138
virtual bool Snap(FBRecalcMarkerSetOffset pRecalcOffset)
Snap the marker set of the actor.
FBPropertyAnimatableVector3d RightMiddleBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1198
FBPropertyAnimatableDouble RightHandMiddlePinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1067
FBPropertyAnimatableVector3d RightKneeOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1133
FBPropertyAnimatableDouble RightHandRingRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1071
FBPropertyAnimatableVector3d LeftPinkyAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1176
FBPropertyAnimatableVector3d RightMiddleAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1196
FBPropertyAnimatableVector3d HeadOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1084
FBPropertyAnimatableDouble LeftHandMiddleRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1046
FBPropertyAnimatableVector3d RightHipOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1126
FBPropertyAnimatableVector3d LeftRingAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1169
FBPropertyVector3d RightCollarPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1029
FBPropertyAnimatableDouble LeftHandRingIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1049
FBPropertyAnimatableVector3d RightPinkyCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1215
FBPropertyVector3d ChestPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1024
FBPropertyAnimatableVector3d RightHipOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1127
void SetRightGloveReferenceModel(FBModel *pReferenceModel)
Set a model to be the right glove reference.
FBPropertyAnimatableBool HumanFingerLimits
Read Write Property: Enables/Disables human finger limits during actor solve.
Definition: fbcharacter.h:1082
FBPropertyAnimatableDouble LeftHandIndexPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1042
FBPropertyAnimatableVector3d RightRingBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1206
FBPropertyAnimatableDouble RightHandRingIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1069
FBPropertyAnimatableDouble LeftHandPinkyIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1054
FBPropertyAnimatableVector3d LeftHipOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1124
FBPropertyAnimatableVector3d LeftIndexBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1156
FBPropertyAnimatableVector3d RightFootOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1144
FBPropertyAnimatableVector3d LeftRingBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1170
FBPropertyAnimatableVector3d LeftIndexCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1158
FBPropertyVector3d LeftElbowPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1027
FBPropertyBool Visibility
Read Write Property: Show or Hide the Actor Body.
Definition: fbcharacter.h:1035
FBPropertyBool PivotPointsVisibility
Read Write Property: Show or Hide the Pivot Points.
Definition: fbcharacter.h:1037
FBPropertyAnimatableVector3d LeftElbowOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1105
FBPropertyVector3d LeftFootPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1018
FBPropertyAnimatableVector3d LeftKneeOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1129
FBPropertyAnimatableVector3d LeftFootOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1141
FBPropertyDouble PivotSize
Read Write Property: The size of the pivot points of the actor.
Definition: fbcharacter.h:1012
FBPropertyAnimatableVector3d RightRingAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1204
FBPropertyAnimatableVector3d LeftShoulderOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1099
FBPropertyAnimatableDouble FKFingerTipMultiplier
Read Write Property: Used to augment the amount of FK propagation for unmarkered finger tip phalanges...
Definition: fbcharacter.h:1080
FBPropertyAnimatableVector3d LeftHipOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1123
FBPropertyAnimatableVector3d LeftPinkyCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1179
FBPropertyAnimatableVector3d ChestOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1091
FBPropertyAnimatableDouble RightHandRingPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1072
FBPropertyAnimatableDouble LeftHandMiddleIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1044
FBPropertyAnimatableVector3d RightRingBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1205
FBPropertyAnimatableVector3d RightPinkyBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1213
FBPropertyAnimatableVector3d RightAnkleOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1139
FBPropertyAnimatableVector3d RightThumbCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1186
void SetDefinitionScaleVector(FBSkeletonNodeId pSkeletonId, FBVector3d pScaleVector, bool pSymmetricUpdate=true)
Set Actor Scaling Definition.
FBPropertyAnimatableVector3d LeftMiddleCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1166
FBPropertyAnimatableDouble LeftHandRingRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1051
FBPropertyAnimatableDouble RightHandMiddleIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1064
FBPropertyBool SymmetryEditRotation
Read Write Property: Symmetry Edit (Rotation) mode state. Only effective when IKManip property is set...
Definition: fbcharacter.h:1222
FBPropertyAnimatableVector3d RightMiddleAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1197
FBPropertyAnimatableVector3d LeftThumbAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1148
FBPropertyAnimatableVector3d LeftRingBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1171
FBPropertyBool ManipulateOffsets
Read Write Property: Flag to compute offsets while manipulating. If it is set to false,...
Definition: fbcharacter.h:1217
FBPropertyAnimatableVector3d RightIndexAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1189
FBPropertyAnimatableVector3d RightRingCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1207
FBPropertyAnimatableVector3d LeftIndexAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1155
FBPropertyAnimatableVector3d RightMiddleCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1200
FBPropertyAnimatableVector3d LeftAnkleOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1136
FBPropertyAnimatableVector3d RightFootOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1145
FBPropertyVector3d RightAnklePosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1021
FBPropertyVector3d WaistPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1023
FBPropertyAnimatableVector3d LeftCollarOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1094
void GetDefinitionRotationVector(FBSkeletonNodeId pSkeletonId, FBVector3d &pRotationVector)
Get Actor Rotation Definition.
FBPropertyAnimatableVector3d RightIndexBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1192
FBPropertyAnimatableVector3d RightMiddleCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1201
FBPropertyAnimatableVector3d WaistOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1118
FBPropertyAnimatableDouble RightHandMiddleMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1065
FBPropertyAnimatableVector3d HeadOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1085
FBPropertyAnimatableVector3d RightRingAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1203
FBPropertyAnimatableVector3d LeftThumbAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1147
FBPropertyAnimatableVector3d RightElbowOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1109
FBPropertyAnimatableVector3d LeftMiddleAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1162
FBPropertyAnimatableDouble RightHandPinkyPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1077
FBPropertyDouble MarkerSetSize
Read Write Property: The size of the markers of the actor.
Definition: fbcharacter.h:1011
FBPropertyAnimatableVector3d RightThumbAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1182
FBPropertyAnimatableVector3d NeckOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1087
FBPropertyAnimatableVector3d RightCollarOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1097
FBPropertyAnimatableVector3d LeftPinkyAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1175
FBPropertyAnimatableVector3d LeftPinkyBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1177
FBPropertyAnimatableVector3d LeftCollarOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1093
FBPropertyAnimatableVector3d RightWristOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1114
FBPropertyBool IKManip
Read Write Property: Access to the IK Manip mode. This property is shared for all actors.
Definition: fbcharacter.h:1219
FBPropertyAnimatableVector3d WaistOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1117
FBPropertyAnimatableVector3d LeftThumbBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1149
FBPropertyAnimatableVector3d ChestOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1090
FBPropertyAnimatableVector3d RightIndexBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1191
FBPropertyAnimatableVector3d RightThumbCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1187
FBPropertyAnimatableDouble RightHandRingMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1070
void SetLeftGloveReferenceModel(FBModel *pReferenceModel)
Set a model to be the left glove reference.
FBPropertyAnimatableVector3d LeftMiddleAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1161
FBPropertyAnimatableVector3d RightPinkyCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1214
FBPropertyVector3d RightFootPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1022
FBPropertyAnimatableVector3d RightShoulderOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1102
FBSkeletonState * GetCurrentSkeletonState(bool pResetOrientation=false)
Return the Current Skeleton State.
FBPropertyAnimatableVector3d HipsOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1120
FBPropertyAnimatableVector3d LeftRingAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1168
FBPropertyAnimatableDouble RightHandIndexPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1062
FBPropertyVector3d LeftAnklePosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1017
FBPropertyAnimatableVector3d LeftMiddleBOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1163
FBPropertyAnimatableDouble LeftHandRingMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1050
FBPropertyAnimatableVector3d LeftFootOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1142
FBPropertyAnimatableDouble RightHandIndexRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1061
FBPropertyVector3d RightWristPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1032
FBPropertyAnimatableVector3d LeftThumbCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1152
FBModel * GetRightGloveReferenceModel()
Get the reference model associated with right hand.
FBPropertyVector3d RightKneePosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1020
void SetActorTranslation(FBVector3d pTranslationVector)
Translate Actor, similar to moving the hips of the Actor in the UI.
FBPropertyVector3d LeftWristPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1028
FBPropertyAnimatableVector3d RightThumbBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1185
FBPropertyAnimatableVector3d RightPinkyAOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1210
FBPropertyMarkerSet MarkerSet
Read Write Property: Associated marker set.
Definition: fbcharacter.h:1005
FBPropertyAnimatableVector3d RightIndexAOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1190
FBPropertyAnimatableVector3d LeftIndexCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1159
void SetDefinitionRotationVector(FBSkeletonNodeId pSkeletonId, FBVector3d pRotationVector, bool pSymmetricUpdate=true)
Set Actor Rotation Definition.
FBPropertyAnimatableVector3d LeftThumbBOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1150
void SetDefinitionTranslationVector(FBSkeletonNodeId pSkeletonId, FBVector3d pTranslationVector, bool pSymmetricUpdate=true)
Set Actor Translation Definition.
FBPropertyVector3d LeftCollarPosition
Read Write Property: Body part pivot of the actor.
Definition: fbcharacter.h:1025
void GetDefinitionTranslationVector(FBSkeletonNodeId pSkeletonId, FBVector3d &pTranslationVector)
Get Actor Translation Definition.
FBPropertyAnimatableDouble FKThumbTipMultiplier
Read Write Property: Used to augment the amount of FK propagation for unmarkered thumb tip phalanges.
Definition: fbcharacter.h:1081
FBPropertyMarkerSet OutputMarkerSet
Read Write Property: Associated output marker set.
Definition: fbcharacter.h:1006
FBPropertyAnimatableDouble FKFingerMultiplier
Read Write Property: Used to augment the amount of FK propagation for unmarkered intermediate finger ...
Definition: fbcharacter.h:1079
FBPropertyAnimatableVector3d LeftRingCOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1173
FBPropertyAnimatableVector3d LeftRingCOffsetT
Read Write Property: Local translation offset that is applied after the actor solve
Definition: fbcharacter.h:1172
FBPropertyAnimatableVector3d RightShoulderOffsetR
Read Write Property: Local rotation offset that is applied after the actor solve
Definition: fbcharacter.h:1103
Template class to contain an array of items.
Definition: fbarray.h:78
Objects Grouping class.
A character is the link between a motion source and a character model.
Definition: fbcharacter.h:1388
FBPropertyAnimatableDouble LeftHandPinkyPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1800
FBPropertyAnimatableDouble ShoulderCorrection
Read Write Property: shoulder correction values.
Definition: fbcharacter.h:1758
FBCycleAnalysisNode * GetCycleAnalysisNode()
Get the Cycle Analysis Node from the current character.
FBPropertyAnimatableDouble RightHandIndexIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1802
FBPropertyAnimatableDouble RightHandPinkyRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1819
FBPropertyAnimatableDouble LeftHandMiddleMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1788
void GoToStancePose(bool pPushUndo=false, bool pIncludeCharacterExtensions=true)
Set the character in stance pose.
FBPropertyBool RightKneeKillPitch
Read Write Property: is Pitch used for Right knee.
Definition: fbcharacter.h:1760
FBPropertyCharacterKeyingMode KeyingMode
Read Write Property: The current keying mode.
Definition: fbcharacter.h:1410
FBPropertyAnimatableDouble LeftHandIndexRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1784
FBPropertyBool LockY
Read Write Property: Lock character skeleton in place on Y axis.
Definition: fbcharacter.h:1779
bool ReadyForRetarget()
Test if character is ready for the Retarget operation (basically, is it in character input ?...
FBPropertyAnimatableDouble RightHandPinkyMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1818
FBPropertyBool ActiveInput
Read Write Property: Is the character input active?
Definition: fbcharacter.h:1413
FBPropertyAnimatableDouble LeftHandIndexIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1782
FBBodyNodeId GetCtrlRigIndexByModel(FBModel *pModel)
Get the index of the model associated with each body part in the Control Rig of the character.
FBPropertyBool MirrorMode
Read Write Property: is in mirror mode.
Definition: fbcharacter.h:1757
bool IsParentNodeOffset(FBBodyNodeId pNodeId)
Check if there is an offset on Parent.
const char * GetCharacterizeError()
Get error message for the previous SetCharacterizeOn operation.
FBPropertyBool InverseRightKnee
Read Write Property: Is right knee inverted.
Definition: fbcharacter.h:1767
FBPropertyAnimatableDouble LeftHandRingPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1795
FBPropertyAnimatableDouble LeftHandIndexMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1783
bool SetCharacterizeOn(bool pSetAsBiped)
Set the Characterize flag on.
FBPropertyBool LockX
Read Write Property: Lock character skeleton in place on X axis.
Definition: fbcharacter.h:1778
FBPropertyAnimatableDouble LeftHandMiddlePinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1790
FBPropertyAnimatableDouble LeftHandPinkyRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1799
bool GetCharacterize()
Get Characterize flag.
void CopyAnimation()
Copy the animation from the input character to us.
void SetSensorFloorOffset(double pSensorFloorOffset)
SetSensorFloorOffset.
virtual void FBDelete() override
Actual Character destructor.
FBPropertyAnimatableDouble LeftHandPinkyMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1798
FBPropertyAnimatableDouble RightHandIndexMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1803
void SetExternalSolver(int pIndex)
Set character external solver.
FBPropertyBool LeftKneeKillPitch
Read Write Property: is Pitch used for Left knee.
Definition: fbcharacter.h:1759
bool CreateControlRig(bool pSetFKIK)
Create the Control-Rig.
FBPropertyBool RightElbowKillPitch
Read Write Property: is Pitch used for Right elbow.
Definition: fbcharacter.h:1762
bool SetTranslationPin(FBEffectorId pEffectorIndex, bool pValue)
Set the object Pinned in Translation (Manipulation) status.
FBPropertyBool LockZ
Read Write Property: Lock character skeleton in place on Z axis.
Definition: fbcharacter.h:1780
FBPropertyAnimatableDouble RightHandPinkyIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1817
FBPropertyBool SyncMode
Read Write Property: is character in sync mode.
Definition: fbcharacter.h:1765
void ConnectControlRig(FBControlSet *pControlSet, bool pUpdateLimit, bool pResetHierarchy)
Connect a Control-Rig to the character.
FBModel * GetModel(FBBodyNodeId pBodyNodeId)
Get the model associated with each body part of the character.
bool IsPlottingActorToCtrlRig()
Return true if the Actor is currently being plot to the Control Rig.
FBBodyNodeId GetIndexByModel(FBModel *pModel)
Get the index associated with Given Model.
FBPropertyAnimatableDouble RightHandMiddleRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1809
bool SetFKVisibility(bool pState)
Set the FK visibility state.
void GetActiveBodyPart(bool *pActivePart)
Get the active body part array.
void SetExternalSolver(FBCharacterSolver *pSolver)
Set character solver.
FBPropertyAnimatableDouble RightHandMiddlePinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1810
FBEffectorSetState * GetEffectorEvaluationCache(FBEvaluateInfo *pEvaluateInfo)
Return pointer to evaluation cache that is dedicated for effector set and given pEvaluateInfo.
FBPropertyAnimatableDouble RightHandRingRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1814
bool SetIKVisibility(bool pState)
Set the IK visibility state.
FBPropertyAnimatableDouble LeftHandMiddleRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1789
bool CreateAuxiliary(FBEffectorId pEffectorId, bool pPivot, double pAuxReachT=100, double pAuxReachR=100)
Create auxiliary on effector.
FBPropertyBool WriteReference
Read Write Property: are we writing back on reference.
Definition: fbcharacter.h:1764
FBCalibrationState GetMocapCalibrationState()
Get Mocap calibration state.
FBPropertyAnimatableDouble LeftHandRingIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1792
FBModel * GetEffectorModel(FBEffectorId pEffectorId, FBEffectorSetID pEffectorSetID=FBEffectorSetDefault)
Get the model associated with each effector in the Control Rig of the character.
void CycleAnalysisCurrentCharacter()
Run Cycle Analysis on current character.
FBControlSet * GetCurrentControlSet(bool pForce=false)
Obtain Input ControlSet.
FBPropertyAnimatableBool HumanFingerLimits
Read Write Property: Enables/Disables human finger limits during actor solve.
Definition: fbcharacter.h:1825
void GetSkinModelList(FBModelList &pSkinModelList)
Get the skin model associated with character bones.
FBPropertyAnimatableDouble LeftHandIndexPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1785
FBModel * GetGoalModel(FBBodyNodeId pBodyNodeId)
Get the goal model associated with each body part in the Character Marker Set of the character.
FBPropertyAnimatableDouble RightHandRingIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1812
FBPropertyAnimatableDouble LeftHandPinkyIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1797
void PassDeviceMocapData(FBMocapJointsState *pDeviceMocapData)
PassDeviceMocapData.
bool SetRotationPin(FBEffectorId pEffectorIndex, bool pValue)
Set the object Pinned in Rotation (Manipulation) status.
FBPropertyBool InverseLeftKnee
Read Write Property: Is left knee inverted.
Definition: fbcharacter.h:1766
bool IsRotationPin(FBEffectorId pEffectorIndex)
Return true if the object is Pinned in Rotation (Manipulation).
void SelectModels(bool pSelect, bool pApplyToCharacter, bool pApplyToRig, bool pApplyToExtensions)
Select the objects that make a character.
FBString mCharacterizeError
Used to store SetCharacterizeOn errors and warnings.
Definition: fbcharacter.h:1753
FBPropertyAnimatableDouble FKFingerTipMultiplier
Read Write Property: Used to augment the amount of FK propagation for unmarkered finger tip phalanges...
Definition: fbcharacter.h:1823
FBPropertyAnimatableDouble RightHandRingPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1815
FBPropertyAnimatableDouble LeftHandMiddleIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1787
FBPropertyCharacterInputType InputType
Read Write Property: The input type for the character (ex: Actor).
Definition: fbcharacter.h:1409
void SetCharacterizeOff()
Set Characterize flag off.
FBModel * GetFloorContactModel(FBFloorContactID pMemberIndex)
Get the model associated with the floor contact ID.
FBPropertyAnimatableDouble LeftHandRingRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1794
FBPropertyAnimatableDouble RightHandMiddleIndex
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1807
bool SetSkeletonVisibility(bool pState)
Set the skeleton visibility state.
virtual bool PlotAnimation(FBCharacterPlotWhere pPlotWhere, FBPlotOptions *pPlotOptions)
Plot the animation of the character.
FBVisibilityState GetFKVisibility()
Get the FK visibility state.
void SetMocapCalibrationState(FBCalibrationState pState)
Set the Mocap calibration state.
FBCharacter * Clone() override
Clone the character.
void DisconnectControlRig()
Disconnect the Control-Rig from the character.
FBPropertyListCharacterExtension CharacterExtensions
List: Character Extensions in the character.
Definition: fbcharacter.h:1415
FBPropertyAnimatableDouble RightHandMiddleMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1808
void SetupDeviceMocap(FBDevice *pDevice, int pSkeletonJointsCount, FBBodyNodeId *pSkeletonJointsOrder)
SetupDeviceMocap.
FBModel * GetCtrlRigModel(FBBodyNodeId pBodyNodeId)
Get the model associated with each body part in the Control Rig of the character.
FBCharacter(const char *pName, HIObject pObject=NULL)
Constructor.
bool CreateCharacterMarkerSet(bool pSetActive)
Create the Character Marker Set.
FBPropertyCharacterRollSolver RollSolver
Read Write Property: Roll Solver selection.
Definition: fbcharacter.h:1770
FBPropertyAnimatableDouble RightHandPinkyPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1820
virtual void ResetProperties(FBCharacterResetProperties pType)
Reset the properties of the character.
void AddCharacterExtension(FBCharacterExtension *pExt)
AddCharacterExtension.
void Retarget(bool pOnBaseLayer)
Retarget the animation from the input character to us.
FBPropertyCharacterHipsTranslationMode HipsTranslationMode
Read Write Property: Hips Translation Mode.
Definition: fbcharacter.h:1763
FBPropertyAnimatableDouble RightHandRingMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1813
FBPropertyAnimatableDouble RightHandIndexPinky
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1805
FBPropertyAnimatableDouble LeftHandRingMiddle
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1793
FBPropertyActor InputActor
Read Write Property: The index of the actor used for the input.
Definition: fbcharacter.h:1411
FBVisibilityState GetSkeletonVisibility()
Get the skeleton visibility state.
FBPropertyBool LeftElbowKillPitch
Read Write Property: is Pitch used for Left elbow.
Definition: fbcharacter.h:1761
FBPropertyAnimatableDouble RightHandIndexRing
Read Write Property: Used to set blending coefficients. Each of the 4 fingers can be a blend of the 4...
Definition: fbcharacter.h:1804
FBPropertyCharacter InputCharacter
Read Write Property: The index of the character used for the input.
Definition: fbcharacter.h:1412
bool IsTranslationPin(FBEffectorId pEffectorIndex)
Return true if the object is Pinned in Translation (Manipulation).
FBPropertyCharacterContactBehaviour ContactBehaviour
Read Write Property: Contact Behavior selection.
Definition: fbcharacter.h:1771
FBControlSetState * GetControlSetEvaluationCache(FBEvaluateInfo *pEvaluateInfo)
Return pointer to evaluation cache that is dedicated for control set and given pEvaluateInfo.
FBVisibilityState GetIKVisibility()
Get the IK visibility state.
void MirrorCharacterExtensions(FBEvaluateInfo *pEvaluateInfo)
Mirror character extensions.
FBCharacterSolver * GetExternalSolver()
Get a pointer to the external solver of a character, or NULL is no external solver is used on the cha...
FBPropertyAnimatableDouble FKThumbTipMultiplier
Read Write Property: Used to augment the amount of FK propagation for unmarkered thumb tip phalanges.
Definition: fbcharacter.h:1824
void RemoveCharacterExtension(FBCharacterExtension *pExt)
Get the model associated with each body part of the character.
FBPropertyAnimatableDouble FKFingerMultiplier
Read Write Property: Used to augment the amount of FK propagation for unmarkered intermediate finger ...
Definition: fbcharacter.h:1822
FBPropertyBool InverseRightElbow
Read Write Property: Is right elbow inverted.
Definition: fbcharacter.h:1769
FBCharacterMarkerSet * GetCharacterMarkerSet(bool pForce=false)
Obtain Input CharacterMarkerSet.
FBPropertyBool InverseLeftElbow
Read Write Property: Is left elbow inverted.
Definition: fbcharacter.h:1768
bool IsCtrlSetReady()
Return true Ctrl Set is Ready to be used.
Character marker set class.
Definition: fbcharacter.h:885
FBProperty * GetSnapProperty(FBBodyNodeId pNodeId, FBModelTransformationType pWhat)
Get the snap property associated with each body part of the character for given transformation.
FBCharacterMarkerSet(const char *pName, HIObject pObject=NULL)
Constructor.
FBProperty * GetExtractionProperty(FBBodyNodeId pNodeId)
Get the extraction property associated with each body part of the character.
FBProperty * GetMarkersProperty(FBBodyNodeId pNodeId)
Get the marker property associated with each body part of the character.
void ReadCtrlSetAndEffectorState(FBControlSetState *pFKState, FBEffectorSetState *pIKState, FBEvaluateInfo *pEvaluateInfo)
Read FK and IK state from goals.
Constraint class.
MotionBuilder SDK base class.
Definition: fbcomponent.h:651
Base class for constraints.
Definition: fbconstraint.h:134
Control set class.
Definition: fbcharacter.h:765
int GetIKEffectorPivotCount(FBEffectorId pEffectorIndex)
return the number of IK Effector Slot
FBModel * GetFKModel(int pIndex)
Return the object associated to the given Index.
FBModel * GetIKEffectorModel(FBEffectorId pEffectorIndex, int pPivotIndex=0)
Return the object associated to the given Index.
int GetFKIndex(FBModel *pModel)
Return The Index of the Given Model.
const char * GetReferenceName()
Get the reference name associated with this Control Set.
const char * GetIKEffectorName(FBEffectorId pEffectorIndex)
return the name of IK Effector
FBPropertyDouble FKOpacity
Read Write Property: Opacity value used on FK (between 0 and 100).
Definition: fbcharacter.h:834
const char * GetFKName(int pIndex)
return the name of FK Effector at the given index
FBPropertyBool UseAxis
Read Write Property: is using axis.
Definition: fbcharacter.h:833
FBPropertyControlSetType ControlSetType
Read Property: the control Set Type (FKIK or IK).
Definition: fbcharacter.h:832
int GetFKCount()
return the number of FK Effector Slot
FBModel * GetReferenceModel()
Get the reference model associated with this Control Set.
FBControlSet(const char *pName, HIObject pObject=NULL)
Constructor.
int GetIKEffectorIndex(FBModel *pModel)
Return the Index of the Given Model.
void GetNodeMatrix(FBBodyNodeId pNodeId, FBMatrix &pNodeGlobalMatrix)
Returned global matrix associated to the given Index.
Cycle Analysis class.
Base Device class.
Definition: fbcore.h:805
void GetReach(FBEffectorId pEffectorId, double &pReachT, double &pReachR)
Returned translation and rotation reach associated to the given Index.
void GetEffectorMatrix(FBEffectorId pEffectorId, FBMatrix &pEffectorGlobalMatrix)
Returned global matrix associated to the given Index.
AnimationNodeNotify evaluation information.
Marker set class.
Definition: fbcharacter.h:604
void GetMarkerROffset(FBSkeletonNodeId pNodeId, int pMarkerIndex, FBRVector *pROffset)
Get/Set a marker rotation.
void EndTransaction()
Specify that you are done calling a group of functions.
const char * GetMarkerName(FBSkeletonNodeId pNodeId, int pMarkerIndex)
Get the name of marker at index pMarkerIndex.
int GetMarkerCount(FBSkeletonNodeId pNodeId=kFBSkeletonInvalidIndex)
Get the number of marker in the set.
FBMarkerSet(const char *pName, HIObject pObject=NULL)
Constructor.
bool GetMarkerOriented(FBSkeletonNodeId pNodeId, int pMarkerIndex)
Is marker orientated ?
void SetMarkerSetVisibility(bool pVisibility)
Set the marker set visibility.
void SetMarkerUsed(FBSkeletonNodeId pNodeId, int pMarkerIndex, bool pUsed)
Set marker to be used or not.
void GetMarkerTOffset(FBSkeletonNodeId pNodeId, int pMarkerIndex, FBTVector *pTOffset)
Get/Set a marker translation.
FBModel * GetMarkerModel(FBSkeletonNodeId pNodeId, int pMarkerIndex)
Get the model associated with a marker.
bool GetLinkToModelOk()
Get the marker set association correctness.
void SetMarkerName(FBSkeletonNodeId pNodeId, int pMarkerIndex, const char *pMarkerName)
Set the name of marker at index pMarkerIndex.
void BeginTransaction()
Specify that you are about to call a group of functions.
bool GetMarkerUsed(FBSkeletonNodeId pNodeId, int pMarkerIndex)
Is marker used ?
void SetMarkerModel(FBSkeletonNodeId pNodeId, int pMarkerIndex, FBModel *pModel)
Associate a model to a marker.
void SetMarkerOriented(FBSkeletonNodeId pNodeId, int pMarkerIndex, bool pIsOriented)
Set marker to be oriented or not.
int GetMarkerSetVisibility()
Get the marker set visibility.
FBModel * GetReferenceModel()
Get the reference model associated with this marker set.
int AddMarker(FBSkeletonNodeId pNodeId, FBModel *pModel=NULL, bool pIsOriented=false)
Add a marker to the marker set.
void SetReferenceModel(FBModel *pReferenceModel)
Associate a model to a marker.
bool SetMultipleMarkerModels(FBModelList *pModelList)
Associate multiple models to markers, matching them by name.
int GetUsedMarkerCount(FBSkeletonNodeId pNodeId=kFBSkeletonInvalidIndex)
Get the number of used marker in the set.
Four x Four (double) Matrix.
Definition: fbtypes.h:290
int mSkeletonJointsCount
Number of joints according to specific motion capture device.
Definition: fbcharacter.h:1332
FBMocapJointsState(int pSkeletonJointsCount)
Constructor.
FBMatrix * mSkeletonJointsGlobalOrientations
Global orientations of each bone.
Definition: fbcharacter.h:1337
FBSkeletonTrackingState mSkeletonTrackingState
State of the skeleton tracking.
Definition: fbcharacter.h:1334
FBTVector * mSkeletonJointsPositions
Positions of each joint.
Definition: fbcharacter.h:1336
FBTVector mSkeletonPosition
Position of the skeleton.
Definition: fbcharacter.h:1335
double mFloorClipPlaneW
Floor Clip Plane W value for camera reposition.
Definition: fbcharacter.h:1333
FBSkeletonJointTrackingState * mSkeletonJointTrackingState
State of the skeleton joint tracking.
Definition: fbcharacter.h:1338
Model class.
Definition: fbmodel.h:274
Option parameters for plotting.
Property: Base property class.
Definition: fbproperties.h:195
PropertyList: Actor.
Definition: fbcharacter.h:1896
virtual int Duplicate(int pIndex)
Duplicate an actor.
FBActor * operator[](int pIndex)
Get the actor at pIndex.
Character extension property list.
PropertyList: Character.
Definition: fbcharacter.h:1922
virtual int Duplicate(int pIndex)
Duplicate a Character.
FBCharacter * operator[](int pIndex)
Get the Character at pIndex.
PropertyList: CharacterMarkerSet.
Definition: fbcharacter.h:1860
FBCharacterMarkerSet * operator[](int pIndex)
Get the character marker set at pIndex.
PropertyList: Concrete class for PropertyList of component
Definition: fbcomponent.h:536
PropertyList: MarkerSet.
Definition: fbcharacter.h:1878
FBControlSet * operator[](int pIndex)
Get the marker set at pIndex.
PropertyList: MarkerSet.
Definition: fbcharacter.h:1837
FBMarkerSet * operator[](int pIndex)
Get the marker set at pIndex.
virtual int Duplicate(int pIndex)
Duplicate a marker set.
Three dimensional scaling vector.
Definition: fbtypes.h:566
void GetNodeMatrix(FBSkeletonNodeId pSkeletonId, FBMatrix &pSkeletonGlobalMatrix)
Returned global matrix associated to the given Index.
Basic string class.
Definition: fbstring.h:67
FBEffectorId
All effector nodes.
Definition: fbcharacter.h:364
K_DLLIMPORT bool FBSetActorMarkerSetVisibility(bool pShow)
Sets visibility of the marker set of the current actor.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
Definition: fbcharacter.h:51
K_DLLIMPORT bool FBGetActorMarkerSetVisibility()
Queries visibility of the marker set of the current actor.
FBEffectorSetID
Effector ID identifier.
Definition: fbcharacter.h:416
FBCharacterHipsTranslationMode
Character Hips Translation modes.
Definition: fbcharacter.h:505
K_DLLIMPORT bool FBGetCharacterFingerTipsVisibility()
Queries visibility of the finger-tips of the current character.
FBSkeletonJointTrackingState
Device Mocap skeleton joint tracking state.
Definition: fbcharacter.h:551
K_DLLIMPORT FBBodyPartId FBGetEffectorBodyPart(FBEffectorId pEffectorId)
return BodyPart ID from Effector.
FBVisibilityState
Visibility state.
Definition: fbcharacter.h:569
@ kFBVisibilityAny
Any object requested is visible.
Definition: fbcharacter.h:570
@ kFBVisibilitySome
Some objects (at least one, but not all) requested are visible.
Definition: fbcharacter.h:572
@ kFBVisibilityInvalid
Invalid visibility request.
Definition: fbcharacter.h:573
@ kFBVisibilityAll
All objects requested are visible.
Definition: fbcharacter.h:571
FBCharacterResetProperties
Character Reset Properties Type.
Definition: fbcharacter.h:489
FBCharacterInputType
Character Input/Output types.
Definition: fbcharacter.h:467
FBCharacterPlotWhere
Where to plot a character.
Definition: fbcharacter.h:497
K_DLLIMPORT bool FBLoadCharacterPinningPreset(const char *pPresetName)
Loads a pinning preset in the Character Controls Tool.
FBBodyPartId
Body part for character.
Definition: fbcharacter.h:447
@ kFBCtrlSetPartRightLeg
Right Leg Body Part.
Definition: fbcharacter.h:454
@ kFBCtrlSetPartHead
Head Body Part.
Definition: fbcharacter.h:455
@ kFBCtrlSetPartLeftLeg
Left Leg Body Part.
Definition: fbcharacter.h:453
@ kFBCtrlSetPartHips
Hips Body Part.
Definition: fbcharacter.h:449
@ kFBCtrlSetPartNone
No part selected.
Definition: fbcharacter.h:448
@ kFBCtrlSetPartRightFoot
Right Foot Body Part.
Definition: fbcharacter.h:459
@ kFBCtrlSetPartRightArm
Right Arm Body Part.
Definition: fbcharacter.h:452
@ kFBCtrlSetPartLeftHand
Left Hand Body Part.
Definition: fbcharacter.h:456
@ kFBCtrlSetPartLeftFoot
Left Foot Body Part.
Definition: fbcharacter.h:458
@ kFBCtrlSetPartLeftArm
Left Arm Body Part.
Definition: fbcharacter.h:451
@ kFBLastCtrlSetPartIndex
Part count.
Definition: fbcharacter.h:460
@ kFBCtrlSetPartChest
Chest Body Part.
Definition: fbcharacter.h:450
@ kFBCtrlSetPartRightHand
Right Hand Body Part.
Definition: fbcharacter.h:457
__FB_FORWARD(FBControlSetState)
Control Set State class.
K_DLLIMPORT bool FBSaveCharacterPinningPreset(const char *pPresetName, bool pAllowOverwriting=false)
Saves a pinning preset from the current pinning values in the Character Controls Tool.
K_DLLIMPORT const char * FBCharacterEffectorNameFromId(FBEffectorId pEffectorId)
Get the UI name associated with an effector.
K_DLLIMPORT void FBSetCharacterFingerTipsVisibility(bool pShow)
Sets visibility of the finger-tips of the current character.
K_DLLIMPORT bool FBGetCharacterFloorContactsVisibility()
Queries visibility of the floor contacts of the current character.
K_DLLIMPORT FBBodyPartId FBGetBodyNodeBodyPart(FBBodyNodeId pBodyNodeId)
return BodyPart ID from Bones.
FBCharacterKeyingMode
Character keying modes.
Definition: fbcharacter.h:479
K_DLLIMPORT const char * FBCharacterBodyNodeNameFromId(FBBodyNodeId pBodyNodeId)
Get the UI name associated with a body node.
FBCharacterContactBehaviour
Character Contact Behaviour.
Definition: fbcharacter.h:523
const int kFBLastActorNodeId
Last Actor NodeId.
Definition: fbcharacter.h:360
K_DLLIMPORT void FBSetCharacterFloorContactsVisibility(bool pShow)
Sets visibility of the floor contacts of the current character.
FBControlSetType
Character ControlSet type.
Definition: fbcharacter.h:533
K_DLLIMPORT FBCharacterKeyingMode FBGetCharactersKeyingMode()
return Character Manipulation/Keying Mode
FBFloorContactID
Floor contact for the given index.
Definition: fbcharacter.h:437
K_DLLIMPORT bool FBDeleteCharacterPinningPreset(const char *pPresetName)
Deletes a pinning preset from the Character Controls Tool.
FBCharacterRollSolver
Character Roll Solver version.
Definition: fbcharacter.h:514
class K_DLLIMPORT FBArrayTemplate< FBModel * > FBModelList
typedef class FBSDK_DLL FBArrayTemplate<FBModel*> FBModelList;
Definition: fbcharacter.h:597
K_DLLIMPORT FBCharacter * FBGetCharacterByAssociatedPart(FBComponent *pPart)
Get character by its associated IK/FK Marker or Bone.
FBBodyNodeId
All body nodes.
Definition: fbcharacter.h:125
@ kFBRightShoulderRollNode1Id
New leaf roll bone.
Definition: fbcharacter.h:317
@ kFBLeftKneeRollNode2Id
New leaf roll bone.
Definition: fbcharacter.h:321
@ kFBRightHipRollNode5Id
New leaf roll bone.
Definition: fbcharacter.h:349
@ kFBLeftWristNodeId
Required.
Definition: fbcharacter.h:141
@ kFBRightHipNodeId
Required.
Definition: fbcharacter.h:132
@ kFBLeftElbowRollNode5Id
New leaf roll bone.
Definition: fbcharacter.h:352
@ kFBLeftKneeNodeId
Required.
Definition: fbcharacter.h:129
@ kFBLeftHipNodeId
Required.
Definition: fbcharacter.h:128
@ kFBRightHipRollNode2Id
New leaf roll bone.
Definition: fbcharacter.h:322
@ kFBRightShoulderRollNode2Id
New leaf roll bone.
Definition: fbcharacter.h:326
@ kFBRightExtraFingerANodeId
New extra finger bone.
Definition: fbcharacter.h:223
@ kFBRightShoulderRollNode5Id
New leaf roll bone.
Definition: fbcharacter.h:353
@ kFBRightKneeNodeId
Required.
Definition: fbcharacter.h:133
@ kFBRightExtraFingerInNodeId
New extra finger bone.
Definition: fbcharacter.h:222
@ kFBHeadNodeId
Required.
Definition: fbcharacter.h:147
@ kFBRightElbowRollNode5Id
New leaf roll bone.
Definition: fbcharacter.h:354
@ kFBLeftKneeRollNode5Id
New leaf roll bone.
Definition: fbcharacter.h:348
@ kFBRightExtraFingerDNodeId
New extra finger bone.
Definition: fbcharacter.h:226
@ kFBLeftHipRollNode3Id
New leaf roll bone.
Definition: fbcharacter.h:329
@ kFBLeftKneeRollNode1Id
New leaf roll bone.
Definition: fbcharacter.h:312
@ kFBRightExtraFingerBNodeId
New extra finger bone.
Definition: fbcharacter.h:224
@ kFBRightKneeRollNode5Id
New leaf roll bone.
Definition: fbcharacter.h:350
@ kFBLeftExtraFootFingerCNodeId
New extra finger bone.
Definition: fbcharacter.h:282
@ kFBLeftShoulderRollNode1Id
New leaf roll bone.
Definition: fbcharacter.h:315
@ kFBRightWristNodeId
Required.
Definition: fbcharacter.h:145
@ kFBRightShoulderRollNode3Id
New leaf roll bone.
Definition: fbcharacter.h:335
@ kFBRightElbowRollNode2Id
New leaf roll bone.
Definition: fbcharacter.h:327
@ kFBRightKneeRollNode2Id
New leaf roll bone.
Definition: fbcharacter.h:323
@ kFBLeftKneeRollNode4Id
New leaf roll bone.
Definition: fbcharacter.h:339
@ kFBRightShoulderNodeId
Required.
Definition: fbcharacter.h:143
@ kFBLeftExtraFingerInNodeId
New extra finger bone.
Definition: fbcharacter.h:217
@ kFBLeftShoulderRollNode3Id
New leaf roll bone.
Definition: fbcharacter.h:333
@ kFBWaistNodeId
Required, Spine 0.
Definition: fbcharacter.h:136
@ kFBLeftElbowRollNode3Id
New leaf roll bone.
Definition: fbcharacter.h:334
@ kFBRightExtraFootFingerInNodeId
New extra finger bone.
Definition: fbcharacter.h:284
@ kFBLeftShoulderRollNode2Id
New leaf roll bone.
Definition: fbcharacter.h:324
@ kFBRightExtraFootFingerANodeId
New extra finger bone.
Definition: fbcharacter.h:285
@ kFBRightHipRollNode4Id
New leaf roll bone.
Definition: fbcharacter.h:340
@ kFBRightKneeRollNode3Id
New leaf roll bone.
Definition: fbcharacter.h:332
@ kFBLeftExtraFingerDNodeId
New extra finger bone.
Definition: fbcharacter.h:221
@ kFBLeftExtraFootFingerBNodeId
New extra finger bone.
Definition: fbcharacter.h:281
@ kFBLeftExtraFootFingerDNodeId
New extra finger bone.
Definition: fbcharacter.h:283
@ kFBLeftShoulderRollNode4Id
New leaf roll bone.
Definition: fbcharacter.h:342
@ kFBLeftElbowNodeId
Required.
Definition: fbcharacter.h:140
@ kFBLeftElbowRollNode4Id
New leaf roll bone.
Definition: fbcharacter.h:343
@ kFBRightElbowNodeId
Required.
Definition: fbcharacter.h:144
@ kFBHipsNodeId
Required.
Definition: fbcharacter.h:127
@ kFBLeftElbowRollNode1Id
New leaf roll bone.
Definition: fbcharacter.h:316
@ kFBRightElbowRollNode3Id
New leaf roll bone.
Definition: fbcharacter.h:336
@ kFBLeftExtraFingerANodeId
New extra finger bone.
Definition: fbcharacter.h:218
@ kFBLeftAnkleNodeId
Required.
Definition: fbcharacter.h:130
@ kFBLeftHipRollNode2Id
New leaf roll bone.
Definition: fbcharacter.h:320
@ kFBRightElbowRollNode4Id
New leaf roll bone.
Definition: fbcharacter.h:345
@ kFBRightHipRollNode1Id
New leaf roll bone.
Definition: fbcharacter.h:313
@ kFBLeftHipRollNode4Id
New leaf roll bone.
Definition: fbcharacter.h:338
@ kFBLeftKneeRollNode3Id
New leaf roll bone.
Definition: fbcharacter.h:330
@ kFBLeftExtraFingerCNodeId
New extra finger bone.
Definition: fbcharacter.h:220
@ kFBChestNodeId
Spine 1.
Definition: fbcharacter.h:137
@ kFBLeftShoulderRollNode5Id
New leaf roll bone.
Definition: fbcharacter.h:351
@ kFBLeftExtraFingerBNodeId
New extra finger bone.
Definition: fbcharacter.h:219
@ kFBRightAnkleNodeId
Required.
Definition: fbcharacter.h:134
@ kFBLeftHipRollNode1Id
New leaf roll bone.
Definition: fbcharacter.h:311
@ kFBRightHipRollNode3Id
New leaf roll bone.
Definition: fbcharacter.h:331
@ kFBRightShoulderRollNode4Id
New leaf roll bone.
Definition: fbcharacter.h:344
@ kFBLeftHipRollNode5Id
New leaf roll bone.
Definition: fbcharacter.h:347
@ kFBRightExtraFootFingerDNodeId
New extra finger bone.
Definition: fbcharacter.h:288
@ kFBRightExtraFootFingerBNodeId
New extra finger bone.
Definition: fbcharacter.h:286
@ kFBLeftExtraFootFingerANodeId
New extra finger bone.
Definition: fbcharacter.h:280
@ kFBRightElbowRollNode1Id
New leaf roll bone.
Definition: fbcharacter.h:318
@ kFBLeftShoulderNodeId
Required.
Definition: fbcharacter.h:139
@ kFBRightExtraFootFingerCNodeId
New extra finger bone.
Definition: fbcharacter.h:287
@ kFBRightExtraFingerCNodeId
New extra finger bone.
Definition: fbcharacter.h:225
@ kFBLeftElbowRollNode2Id
New leaf roll bone.
Definition: fbcharacter.h:325
@ kFBRightKneeRollNode4Id
New leaf roll bone.
Definition: fbcharacter.h:341
@ kFBLeftExtraFootFingerInNodeId
New extra finger bone.
Definition: fbcharacter.h:279
@ kFBRightKneeRollNode1Id
New leaf roll bone.
Definition: fbcharacter.h:314
FBRecalcMarkerSetOffset
Recalculate MarkerSet offset for?
Definition: fbcharacter.h:943
@ kFBRecalcMarkerSetOffsetTR
Recalculate MarkerSet offset for TR.
Definition: fbcharacter.h:944
@ kFBRecalcMarkerSetOffsetROnly
Recalculate MarkerSet offset for R Only.
Definition: fbcharacter.h:945
FBSkeletonTrackingState
Device Mocap skeleton tracking state.
Definition: fbcharacter.h:542
FBSkeletonNodeId
All Skeleton nodes
Definition: fbcharacter.h:66
K_DLLIMPORT double FBGetCharacterComparisonThresholdValue()
Return the Character comparison threshold value used when comparing two characters (e....
FBCalibrationState
Device Mocap character calibration state.
Definition: fbcharacter.h:560
K_DLLIMPORT void FBSetCharacterComparisonThresholdValue(double pValue)
Set the Character threshold value used when comparing two characters (e.g.
Character extension interface for FBSDK.
#define __FBClassDeclare(Name, Parent)
For internal use only.
Definition: fbcomponent.h:131
Contraint classes.
FB_DEFINE_COMPONENT(K_DLLIMPORT, AnimationNode)
Animation node class.
FBModelTransformationType
Types of transformation vector/matrices possible.
Definition: fbmodel.h:167
class K_DLLIMPORT FBPropertyBaseAnimatable< FBVector3d, kFBPT_Vector3D > FBPropertyAnimatableVector3d
FBPropertyAnimatableVector3D type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< double, kFBPT_double > FBPropertyAnimatableDouble
FBPropertyBaseAnimatableDouble type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< bool, kFBPT_bool > FBPropertyAnimatableBool
FBPropertyAnimatableBool type definition.
class K_DLLIMPORT FBPropertyBase< FBVector3d, kFBPT_Vector3D > FBPropertyVector3d
FBPropertyVector3d type definition.
class K_DLLIMPORT FBPropertyBase< bool, kFBPT_bool > FBPropertyBool
Property: bool
#define FB_DEFINE_ENUM(DllTag, Type)
Define an enum and give it the ability to be a property.
Definition: fbproperties.h:150
class K_DLLIMPORT FBPropertyBase< FBColor, kFBPT_ColorRGB > FBPropertyColor
FBPropertyColor type definition.
class K_DLLIMPORT FBPropertyBase< double, kFBPT_double > FBPropertyDouble
Property: double
#define FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
Definition: fbtypes.h:62
class K_DLLIMPORT FBVector3< double > FBVector3d
3D vector.
Definition: fbtypes.h:438