This reference page is linked to from the following overview topics: MotionBuilder 2014, MotionBuilder 2013, Your First Python Program, FBComponent - The Base Entity Class, FBModel - Transformation Data and the Scene Graph, Overview of the Architecture.
Basic system interaction. More...
#include <kaydaradef.h>
#include <fbsdk/fbcomponent.h>
#include <fbsdk/fbdata.h>
#include <fbsdk/fbio.h>
#include <fbsdk/fbshader.h>
#include <fbsdk/fbmodel.h>
#include <fbsdk/fbevaluateinfo.h>
#include <fbsdk/fbaudio.h>
#include <fbsdk/fbvideo.h>
#include <fbsdk/fbdeck.h>
#include <fbsdk/fbassetmng.h>
#include <fbsdk/fbmanipulator.h>
Go to the source code of this file.
Classes | |
class | FBEventVideoFrameRendering |
Event: Video Frame offline Rendering Event. More... | |
class | FBSystem |
Provides access to the underlying system, and the MotionBuilder scene. More... | |
class | FBTriggerManager |
Trigger engine management. More... | |
class | FBBatchOptions |
Option parameters for the batch process. More... | |
class | FBPlotOptions |
Option parameters for plotting. More... | |
class | FBAudioRenderOptions |
Audio Render Options structure. More... | |
class | FBApplication |
FBApplication is used mainly to manage files. More... | |
class | FBPlayerControl |
Player control. More... | |
class | FBEventEvalGlobalCallback |
Event: Global Evaluation pipeline critical timing callback event. More... | |
class | FBPropertyEventCallbackEvalPipeline |
PropertyEvent: Callback at evaluation pipeline (for kFBGlobalEvalCallbackBeforeDAG, kFBGlobalEvalCallbackAfterDAG and kFBGlobalEvalCallbackAfterDeform) More... | |
class | FBPropertyEventCallbackRenderPipeline |
PropertyEvent: Callback at evaluation pipeline (for kFBGlobalEvalCallbackBeforeRender, kFBGlobalEvalCallbackBeforeRender) More... | |
class | FBPropertyEventCallbackSynPoint |
PropertyEvent: Callback at synchronization point (for kFBGlobalEvalCallbackSyn) More... | |
class | FBEvaluateManager |
class | FBKeyControl |
Key control. More... | |
class | FBPointCacheManager |
Point Cache Manager Interface to the point cache manager. More... | |
class | FBEventFileChange |
File change event class. More... | |
class | FBFileMonitoringManager |
File Change Monitoring Interface to the file change monitoring. More... | |
class | FBCriticalSection |
High priority critical section class. More... | |
class | FBFastLock |
FBFastLock. More... | |
class | FBReferenceTime |
Reference time class. More... | |
class | FBVisitDirectoryCallback |
Loop over directory content. More... | |
Defines | |
#define | FBSDK_DLL K_DLLIMPORT |
Be sure that FBSDK_DLL is defined only once... | |
Typedefs | |
typedef void(* | kFBEvaluationGlobalFunctionCallback )(FBEvaluateInfo *pEvaluteInfo) |
typedef void(* | FBTraceStubFct )(unsigned int pLevel, const char *pStr) |
Trace Stub Function type define. | |
Enumerations | |
enum | FBBatchProcessType { kFBBatchProcessTypeLoad, kFBBatchProcessTypeSave, kFBBatchProcessTypeConvert } |
Different process type for the batch. More... | |
enum | FBBatchFileFormat { kFBBatchFileFormatTRC, kFBBatchFileFormatC3D, kFBBatchFileFormatAMC, kFBBatchFileFormatBVH, kFBBatchFileFormatHTR, kFBBatchFileFormatFBX } |
Different file formats for the batch. More... | |
enum | FBBatchOnTakeExist { kFBBatchOnTakeExistOverwrite, kFBBatchOnTakeExistSkip } |
Different actions to perform when a take already exist while in a batch process. More... | |
enum | FBBatchOnContainsBatchTakes { kFBBatchOnContainsBatchTakesSaveBatchTakesOnly, kFBBatchOnContainsBatchTakesSaveAllTakes } |
Different actions to perform when a scene already contains batch takes while in a batch process. More... | |
enum | FBBatchStatus { kFBBatchStatusSuccess, kFBBatchStatusError, kFBBatchStatusCharacterNotSpecified, kFBBatchStatusCharacterNotCharacterized, kFBBatchStatusCharacterHasNoReference, kFBBatchStatusInputActorNotSpecified, kFBBatchStatusActorInputMarkersetNotSpecified, kFBBatchStatusActorInputMarkersetHasNoReferenceModel, kFBBatchStatusActorInputMarkersetNotCorrectlyAssociated, kFBBatchStatusInputCharacterNotCharacterized, kFBBatchStatusInputCharacterHasNoReference, kFBBatchStatusInputDirectoryNotValid, kFBBatchStatusAsfSkeletonFileNotSpecified, kFBBatchStatusCantOpenAsfSkeletonFile, kFBBatchStatusOutputDirectoryNotValid } |
Different return values of the Batch process. More... | |
enum | FBRotationFilter { kFBRotationFilterNone, kFBRotationFilterGimbleKiller, kFBRotationFilterUnroll } |
Rotation filters. More... | |
enum | FBViewerMode { kFBViewerModeOneWindow, kFBViewerModeTwoWindow, kFBViewerModeThreeWindow, kFBViewerModeFourWindow, kFBViewerModeSchematic } |
Different viewer modes for the 3D viewer. More... | |
enum | FBOneClickApplication { kFBOneClickNone, kFBOneClickMaya, kFBOneClick3dsMax } |
Possible application for One-Click interop with MotionBuilder. More... | |
enum | FBTransportMode { kFBTransportPlay, kFBTransportPlayPrepare, kFBTransportPlayReady, kFBTransportStop, kFBTransportStopPost, kFBTransportStopReady, kFBTransportShuttle, kFBTransportShuttlePrepare, kFBTransportShuttleReady, kFBTransportPlayReverse, kFBTransportPlayReversePrepare, kFBTransportPlayReverseReady, kFBTransportJog, kFBTransportJogPrepare, kFBTransportJogReady, kFBTransportGoto, kFBTransportGotoPrepare, kFBTransportGotoReady, kFBTransportStepForward, kFBTransportStepForwardPrepare, kFBTransportStepForwardReady, kFBTransportStepBackward, kFBTransportStepBackwardPrepare, kFBTransportStepBackwardReady } |
Transport modes. More... | |
enum | FBTransportTimeFormat { kFBTimeFormatTimecode, kFBTimeFormatFrame } |
Available transport control time display. More... | |
enum | FBTransportPlaySpeed { kFBSpeed_1_10x, kFBSpeed_1_5x, kFBSpeed_1_4x, kFBSpeed_1_3x, kFBSpeed_1_2x, kFBSpeed_1x, kFBSpeed_ALL_FR, kFBSpeed_2x, kFBSpeed_3x, kFBSpeed_4x, kFBSpeed_5x, kFBSpeed_10x } |
Available transport control play speed. More... | |
enum | FBTransportSnapMode { kFBTransportSnapModeNoSnap, kFBTransportSnapModeSnapOnFrames, kFBTransportSnapModePlayOnFrames, kFBTransportSnapModeSnapAndPlayOnFrames } |
Available snap methods for the transport control. More... | |
enum | FBParallelScheduleType { kFBParallelScheduleSerial, kFBParallelScheduleSimple, kFBParallelScheduleAdvanced } |
DEPRICATED use ParallelEvaluation on FBEvaluateManager insteadAvailable DAG parallel schedule algorithm More... | |
enum | FBGlobalEvalCallbackTiming { kFBGlobalEvalCallbackBeforeDAG, kFBGlobalEvalCallbackAfterDAG, kFBGlobalEvalCallbackAfterDeform, kFBGlobalEvalCallbackSyn, kFBGlobalEvalCallbackBeforeRender, kFBGlobalEvalCallbackAfterRender } |
Global Evaluation callback timing. More... | |
enum | FBFileMonitoringType { kFBFileMonitoring_InvalidIndex, kFBFileMonitoring_MAINSCENE, kFBFileMonitoring_ANIMATIONCLIP, kFBFileMonitoring_FILEREFERENCE } |
File Monitoring Type. More... | |
enum | FBTraceLevel { kFBNO_TRACE = 0, kFBCRITICAL_TRACE = 1, kFBNORMAL_TRACE = 10, kFBALL_TRACE = 20 } |
Trace Level. More... | |
Functions | |
FB_FORWARD (FBCharacter) | |
FB_DEFINE_COMPONENT (FBSDK_DLL, Take) | |
FB_DEFINE_COMPONENT (FBSDK_DLL, Renderer) | |
FBSDK_DLL HIObject | FBGetFBObject (HIObject pObject, bool pAutoCreate=false) |
Get the SDK object from an Internal Object. | |
template<class T > | |
T * | FBCast (HIObject pObject, bool pAutoCreate=false) |
Cast the SDK object using it's IObject interface into the proper class. | |
template<class T > | |
T * | FBCast (FBObject *pObject, bool pAutoCreate=false) |
Cast the SDK object using it's IObject interface into the proper class. | |
__FB_FORWARD (FBSystem) | |
__FB_FORWARD (FBTriggerManager) | |
FB_FORWARD (FBBatchOptions) | |
FB_DEFINE_ENUM (FBSDK_DLL, BatchProcessType) | |
FB_DEFINE_ENUM (FBSDK_DLL, BatchFileFormat) | |
FB_DEFINE_ENUM (FBSDK_DLL, BatchOnTakeExist) | |
FB_DEFINE_ENUM (FBSDK_DLL, BatchOnContainsBatchTakes) | |
FB_FORWARD (FBPlotOptions) | |
FB_DEFINE_ENUM (FBSDK_DLL, RotationFilter) | |
FB_FORWARD (FBAudioRenderOptions) | |
__FB_FORWARD (FBApplication) | |
__FB_FORWARD (FBCharacter) | |
__FB_FORWARD (FBActor) | |
FB_DEFINE_COMPONENT (FBSDK_DLL, Character) | |
FB_DEFINE_COMPONENT (FBSDK_DLL, Actor) | |
__FB_FORWARD (FBPlayerControl) | |
FB_DEFINE_ENUM (FBSDK_DLL, TransportMode) | |
FB_DEFINE_ENUM (FBSDK_DLL, TransportTimeFormat) | |
FB_DEFINE_ENUM (FBSDK_DLL, TransportPlaySpeed) | |
FB_DEFINE_ENUM (FBSDK_DLL, TransportSnapMode) | |
FB_DEFINE_ENUM (FBSDK_DLL, ParallelScheduleType) | |
__FB_FORWARD (FBEvaluateManager) | |
Evaluate Manager. | |
__FB_FORWARD (FBKeyControl) | |
__FB_FORWARD (FBPointCacheManager) | |
__FB_FORWARD (FBFileMonitoringManager) | |
FB_DEFINE_ENUM (FBSDK_DLL, FileMonitoringType) | |
__FB_FORWARD (FBEventFileChange) | |
FB_FORWARD (FBCriticalSection) | |
FB_FORWARD (FBFastLock) | |
__FB_FORWARD (FBReferenceTime) | |
FBSDK_DLL FBModelList * | FBCreateModelList () |
Create a FBModelList object. | |
FBSDK_DLL void | FBDestroyModelList (FBModelList *pModelList) |
Delete a FBModelList object. | |
FBSDK_DLL FBPlugList * | FBCreatePlugList () |
Create a FBPlugList object. | |
FBSDK_DLL void | FBDestroyPlugList (FBPlugList *pPlugList) |
Delete a FBPlugList object. | |
FBSDK_DLL FBComponentList * | FBCreateComponentList () |
Create a FBObjectList object. | |
FBSDK_DLL void | FBDestroyComponentList (FBComponentList *pObjectList) |
Delete a FBObjectList object. | |
FBSDK_DLL void | FBSleep (kULong MilliSeconds) |
Sleep function Puts system to sleep for specified time. | |
FBSDK_DLL void | FBSchedulingDependencyOutput (bool pEnable) |
Debug function for MT dependency debug. | |
FBSDK_DLL FBModel * | FBFindModelByLabelName (const char *pModelLabelName) |
Find a model in the scene by its label name. | |
FBSDK_DLL FBModel * | FBFindModelByUniqueColorId (const FBColor &pColor, int *pSubItemIndex=NULL) |
Find a model in the scene by its unique color id. | |
FBSDK_DLL FBModel * | FBLoadFbxPrimitivesModel (const char *pModelName) |
Load a model. | |
FBSDK_DLL void | FBFindModelsOfType (FBModelList &pList, int pTypeInfo, FBModel *pParent=NULL) |
Find all models of a certain type in the scene. | |
FBSDK_DLL void | FBGetSelectedModels (FBModelList &pList, FBModel *pParent=NULL, bool pSelected=true, bool pSortBySelectOrder=false) |
Find all models that are selected (if pSelected is true) Searches recursively from a root model for models that are selected, and adds them to a list of models. | |
FBSDK_DLL void | FBFindObjectsByName (const char *pNamePattern, FBComponentList &pList, bool pIncludeNamespace=true, bool pModelsOnly=false) |
FBFindObjectsByName. | |
FBSDK_DLL FBComponent * | FBFindObjectByFullName (const char *pObjectFullName) |
FBFindObjectByFullName. | |
FBSDK_DLL int | FBDeleteObjectsByName (const char *pNamePattern, const char *pNameSpace=NULL, const char *pGroupName=NULL) |
FBDeleteObjectsByName. | |
FBSDK_DLL void | FBBeginChangeAllModels () |
Call begin change to all models (need to be closed). | |
FBSDK_DLL void | FBEndChangeAllModels () |
Call end change to all models (should be first open). | |
FBSDK_DLL void | FBMergeTransactionBegin () |
Call to begin the transaction for merging multiple files. | |
FBSDK_DLL void | FBMergeTransactionEnd () |
Call to end the merge transaction. | |
FBSDK_DLL bool | FBMergeTransactionIsOn () |
Call to tell if system is during Merge transaction. | |
FBSDK_DLL void | FBMergeTransactionFileRefEditBegin () |
Call to begin the transaction for merging multiple files and applying File Reference edit at the same time. | |
FBSDK_DLL void | FBMergeTransactionFileRefEditEnd () |
Call to end merge transaction with File Reference edit. | |
FBSDK_DLL bool | FBMergeTransactionFileRefEditIsOn () |
Call to tell if system is during File Reference Edit Merge transaction. | |
FBSDK_DLL void | FBTraceSetLevel (unsigned int pNewLevel) |
Set Global Trace Detailed Level which affects all the output targets. | |
FBSDK_DLL unsigned int | FBTraceGetLevel () |
Get Global Trace Detailed Level which affects all the output targets. | |
FBSDK_DLL void | FBTrace (const char *pFormatString,...) |
This function prints useful debugging strings in the console with kFBNORMAL_TRACE output detailed level. | |
FBSDK_DLL void | FBTraceWithLevel (unsigned int pLevel, const char *pFormatString,...) |
This function prints useful debugging strings in the console. | |
FBSDK_DLL bool | FBRegisterTraceStubFct (FBTraceStubFct pFct) |
Register custom trace stub function. | |
FBSDK_DLL bool | FBUnRegisterTraceStubFct (FBTraceStubFct pFct) |
Unregister custom trace stub function. | |
FBSDK_DLL void | FBObjectLifeLogEnable (bool pEnable) |
Enable object creation / deletion logging. | |
FBSDK_DLL unsigned int | FBObjectGetGlobalUniqueId () |
Get the global static object unique ID counter. | |
FBSDK_DLL void | FBObjectPrintLivings (unsigned int pStartUniqueId) |
Print those living objects created when logging is enabled. | |
FBSDK_DLL unsigned int | FBObjectGetLivingCount () |
Get current total living object count. | |
FBSDK_DLL void | FBMakeFullPath (FBString &pFullPath, const char *pRootPath, const char *pFilePath) |
Get the given file's full path. | |
FBSDK_DLL bool | FBPopNormalTool (const char *pToolName, bool pSetFocus=true) |
This function is used to bring up a specific tool in the GUI. |
Basic system interaction.
The FBSystem file contains the necessary data structure to interface with the underlying system.
Definition in file fbsystem.h.
#define FBSDK_DLL K_DLLIMPORT |
Be sure that FBSDK_DLL is defined only once...
Definition at line 50 of file fbsystem.h.
typedef void(* kFBEvaluationGlobalFunctionCallback)(FBEvaluateInfo *pEvaluteInfo) |
Definition at line 1092 of file fbsystem.h.
enum FBBatchProcessType |
Different process type for the batch.
kFBBatchProcessTypeLoad |
Load the files and plot the character with every take. |
kFBBatchProcessTypeSave |
Save the takes in different files. |
kFBBatchProcessTypeConvert |
Does the load and save. |
Definition at line 370 of file fbsystem.h.
enum FBBatchFileFormat |
Different file formats for the batch.
Definition at line 379 of file fbsystem.h.
enum FBBatchOnTakeExist |
Different actions to perform when a take already exist while in a batch process.
Definition at line 391 of file fbsystem.h.
Different actions to perform when a scene already contains batch takes while in a batch process.
kFBBatchOnContainsBatchTakesSaveBatchTakesOnly |
Save only the batch takes. |
kFBBatchOnContainsBatchTakesSaveAllTakes |
Save all the takes. |
Definition at line 399 of file fbsystem.h.
enum FBBatchStatus |
Different return values of the Batch process.
Definition at line 407 of file fbsystem.h.
{ kFBBatchStatusSuccess, kFBBatchStatusError, kFBBatchStatusCharacterNotSpecified, kFBBatchStatusCharacterNotCharacterized, kFBBatchStatusCharacterHasNoReference, kFBBatchStatusInputActorNotSpecified, kFBBatchStatusActorInputMarkersetNotSpecified, kFBBatchStatusActorInputMarkersetHasNoReferenceModel, kFBBatchStatusActorInputMarkersetNotCorrectlyAssociated, kFBBatchStatusInputCharacterNotCharacterized, kFBBatchStatusInputCharacterHasNoReference, kFBBatchStatusInputDirectoryNotValid, kFBBatchStatusAsfSkeletonFileNotSpecified, kFBBatchStatusCantOpenAsfSkeletonFile, kFBBatchStatusOutputDirectoryNotValid };
enum FBRotationFilter |
Rotation filters.
Definition at line 471 of file fbsystem.h.
enum FBViewerMode |
Different viewer modes for the 3D viewer.
kFBViewerModeOneWindow |
View one pane. |
kFBViewerModeTwoWindow |
View two panes. |
kFBViewerModeThreeWindow |
View three panes. |
kFBViewerModeFourWindow |
View four panes. |
kFBViewerModeSchematic |
Schematic view. |
Definition at line 542 of file fbsystem.h.
Possible application for One-Click interop with MotionBuilder.
Definition at line 552 of file fbsystem.h.
enum FBTransportMode |
Transport modes.
Definition at line 850 of file fbsystem.h.
{ kFBTransportPlay, kFBTransportPlayPrepare, kFBTransportPlayReady, kFBTransportStop, kFBTransportStopPost, kFBTransportStopReady, kFBTransportShuttle, kFBTransportShuttlePrepare, kFBTransportShuttleReady, kFBTransportPlayReverse, kFBTransportPlayReversePrepare, kFBTransportPlayReverseReady, kFBTransportJog, kFBTransportJogPrepare, kFBTransportJogReady, kFBTransportGoto, kFBTransportGotoPrepare, kFBTransportGotoReady, kFBTransportStepForward, kFBTransportStepForwardPrepare, kFBTransportStepForwardReady, kFBTransportStepBackward, kFBTransportStepBackwardPrepare,kFBTransportStepBackwardReady };
Available transport control time display.
kFBTimeFormatTimecode |
Timecode time display mode. |
kFBTimeFormatFrame |
Frame time display mode. |
Definition at line 863 of file fbsystem.h.
enum FBTransportPlaySpeed |
Available transport control play speed.
Definition at line 873 of file fbsystem.h.
enum FBTransportSnapMode |
Available snap methods for the transport control.
Definition at line 891 of file fbsystem.h.
DEPRICATED use ParallelEvaluation on FBEvaluateManager insteadAvailable DAG parallel schedule algorithm
Definition at line 1070 of file fbsystem.h.
Global Evaluation callback timing.
Let the user to register callback function at different stage of background evaluation.
Definition at line 1082 of file fbsystem.h.
enum FBFileMonitoringType |
File Monitoring Type.
Definition at line 1275 of file fbsystem.h.
FB_FORWARD | ( | FBCharacter | ) |
FB_DEFINE_COMPONENT | ( | FBSDK_DLL | , |
Take | |||
) |
FB_DEFINE_COMPONENT | ( | FBSDK_DLL | , |
Renderer | |||
) |
FBSDK_DLL HIObject FBGetFBObject | ( | HIObject | pObject, |
bool | pAutoCreate = false |
||
) |
Get the SDK object from an Internal Object.
pObject | Object to get SDK object for. |
pAutoCreate | Create object if it doesn't exist? (default = false) |
pObject
. T* FBCast | ( | HIObject | pObject, |
bool | pAutoCreate = false |
||
) | [inline] |
Cast the SDK object using it's IObject interface into the proper class.
pObject | Object to get SDK object for. |
pAutoCreate | Create object if it doesn't exist? (default = false) |
pObject
. Definition at line 113 of file fbsystem.h.
{ HIObject lObject = FBGetFBObject(pObject, pAutoCreate); // Should also validate type but not available for now return (T*)lObject; }
T* FBCast | ( | FBObject * | pObject, |
bool | pAutoCreate = false |
||
) | [inline] |
Cast the SDK object using it's IObject interface into the proper class.
pObject | Object to get SDK object for. |
pAutoCreate | Create object if it doesn't exist? (default = false) |
pObject
. Definition at line 125 of file fbsystem.h.
{ HIObject lObject = pObject ? FBGetFBObject(pObject->GetHIObject(), pAutoCreate) : NULL; // Should also validate type but not available for now return (T*)lObject; }
__FB_FORWARD | ( | FBSystem | ) |
__FB_FORWARD | ( | FBTriggerManager | ) |
FB_FORWARD | ( | FBBatchOptions | ) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
BatchProcessType | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
BatchFileFormat | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
BatchOnTakeExist | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
BatchOnContainsBatchTakes | |||
) |
FB_FORWARD | ( | FBPlotOptions | ) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
RotationFilter | |||
) |
FB_FORWARD | ( | FBAudioRenderOptions | ) |
__FB_FORWARD | ( | FBApplication | ) |
__FB_FORWARD | ( | FBCharacter | ) |
__FB_FORWARD | ( | FBActor | ) |
FB_DEFINE_COMPONENT | ( | FBSDK_DLL | , |
Character | |||
) |
FB_DEFINE_COMPONENT | ( | FBSDK_DLL | , |
Actor | |||
) |
__FB_FORWARD | ( | FBPlayerControl | ) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
TransportMode | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
TransportTimeFormat | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
TransportPlaySpeed | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
TransportSnapMode | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
ParallelScheduleType | |||
) |
__FB_FORWARD | ( | FBEvaluateManager | ) |
Evaluate Manager.
Interface to schedule the DAG (Directed Acyclic Graph) tasks to multi-core/CPU (or GPU) to accelerate evaluate process. Provide callback on some critical paths / times to allow customize the application.
__FB_FORWARD | ( | FBKeyControl | ) |
__FB_FORWARD | ( | FBPointCacheManager | ) |
__FB_FORWARD | ( | FBFileMonitoringManager | ) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
FileMonitoringType | |||
) |
__FB_FORWARD | ( | FBEventFileChange | ) |
FB_FORWARD | ( | FBCriticalSection | ) |
FB_FORWARD | ( | FBFastLock | ) |
__FB_FORWARD | ( | FBReferenceTime | ) |
FBSDK_DLL FBModelList* FBCreateModelList | ( | ) |
Create a FBModelList object.
This is to get around memory management issues when mixing debug and release runtime libraries on Windows. By using the FBCreateModelList/FBDestroyModelList duo of functions, you ensure that the memory used in the array is allocated, reallocated and freed in the same memory pool.
FBSDK_DLL void FBDestroyModelList | ( | FBModelList * | pModelList | ) |
Delete a FBModelList object.
pModelList | pointer to the object created with a call to FBCreateModelList(). |
FBSDK_DLL FBPlugList* FBCreatePlugList | ( | ) |
Create a FBPlugList object.
This is to get around memory management issues when mixing debug and release runtime libraries on Windows. By using the FBCreateObjectList/FBDestroyObjectList duo of functions, you ensure that the memory used in the array is allocated, reallocated and freed in the same memory pool.
FBSDK_DLL void FBDestroyPlugList | ( | FBPlugList * | pPlugList | ) |
Delete a FBPlugList object.
pPlugList | pointer to the object created with a call to FBCreatePlugList(). |
FBSDK_DLL FBComponentList* FBCreateComponentList | ( | ) |
Create a FBObjectList object.
This is to get around memory management issues when mixing debug and release runtime libraries on Windows. By using the FBCreateObjectList/FBDestroyObjectList duo of functions, you ensure that the memory used in the array is allocated, reallocated and freed in the same memory pool.
FBSDK_DLL void FBDestroyComponentList | ( | FBComponentList * | pObjectList | ) |
Delete a FBObjectList object.
pObjectList | pointer to the object created with a call to FBCreateObjectList(). |
FBSDK_DLL void FBSleep | ( | kULong | MilliSeconds | ) |
Sleep function Puts system to sleep for specified time.
MilliSeconds | Time to sleep for. |
FBSDK_DLL void FBSchedulingDependencyOutput | ( | bool | pEnable | ) |
Debug function for MT dependency debug.
When enabled log file will be created and updated each time MultiThreaded scheduling is happening (scene rebuild)
pEnable | ON/OFF switch. This is not stored in config (should be changed only for debug purpose, because slow down rebuild process ) |
FBSDK_DLL FBModel* FBFindModelByLabelName | ( | const char * | pModelLabelName | ) |
Find a model in the scene by its label name.
Searches the scene for a model, based on the model's label name. Label name is "NameSpaceName:ObjectName". also known as "PrefixName::ObjectName" Full name is "GroupName::NameSpaceName:ObjectName".
pModelLabelName | LabelName of model to search for. Specify it with schema like "NameSpaceName:ObjectName",or "ObjectName" if no NameSpaceName. |
FBSDK_DLL FBModel* FBFindModelByUniqueColorId | ( | const FBColor & | pColor, |
int * | pSubItemIndex = NULL |
||
) |
Find a model in the scene by its unique color id.
A model could have a single unique ColorID, but SDK plugin user could request additional ColorID per model to support multi sub items picking. see FBModel::SetAdditionalUniqueColorIDCount().
pColor | Color channel values are in range of [0,1] with precision 1.0/255 |
pSubItemIndex | Pass out SubImtem index value if not null. In pyfbsdk no such parameter. |
FBSDK_DLL FBModel* FBLoadFbxPrimitivesModel | ( | const char * | pModelName | ) |
Load a model.
pModelName | Name of primitive model to load. |
FBSDK_DLL void FBFindModelsOfType | ( | FBModelList & | pList, |
int | pTypeInfo, | ||
FBModel * | pParent = NULL |
||
) |
Find all models of a certain type in the scene.
Searches recursively from a root model for models of a certain type, and adds them to a list of models.
pList | List to add found models to. |
pTypeInfo | Model type to look for. |
pParent | Root model to look from (default=NULL(root)). |
FBSDK_DLL void FBGetSelectedModels | ( | FBModelList & | pList, |
FBModel * | pParent = NULL , |
||
bool | pSelected = true , |
||
bool | pSortBySelectOrder = false |
||
) |
Find all models that are selected (if pSelected
is true) Searches recursively from a root model for models that are selected, and adds them to a list of models.
pList | List to add found models to. |
pParent | Root model to look from (default=NULL(root)). |
pSelected | true to find selected models, false to find unselected models(default=true). |
pSortBySelectOrder | true to sort the result by selection order, first selected model in the first part of the list; false to sort the result by scene graph order |
FBSDK_DLL void FBFindObjectsByName | ( | const char * | pNamePattern, |
FBComponentList & | pList, | ||
bool | pIncludeNamespace = true , |
||
bool | pModelsOnly = false |
||
) |
FBFindObjectsByName.
This function will query the system for objects fulfilling a particular name pattern
pNamePattern | Indicate the name pattern to search. This pattern can contain any amount of *. (ex: *tr*mod*scene ) |
pList | List that contains the objects |
pIncludeNamespace | Does the search use the complete name (with namespace) |
pModelsOnly | Is the search on models or all types of objects |
FBSDK_DLL FBComponent* FBFindObjectByFullName | ( | const char * | pObjectFullName | ) |
FBFindObjectByFullName.
This function will query the system for an object with its FullName matching. Full name is "GroupName::NameSpaceName:ObjectName". Label name is "NameSpaceName:ObjectName". also known as "PrefixName::ObjectName"
pObjectFullName | Full Name of object to search for. Specify it with schema like "GroupName::NameSpaceName:ObjectName",or "GroupName::ObjectName" if no NameSpaceName. |
FBSDK_DLL int FBDeleteObjectsByName | ( | const char * | pNamePattern, |
const char * | pNameSpace = NULL , |
||
const char * | pGroupName = NULL |
||
) |
FBDeleteObjectsByName.
This function will query the system for objects fulfilling a particular name pattern and delete them. specify a namespace preferred, delete all objects with the group name without specified a namespace specified may lead to inconsistent in scene. Wrap multiple calls to FBDeleteObjectsByName() inside pair of FBMergeTransactionBegin() / FBMergeTransactionEnd() could improve application's performance.
pNamePattern | if not NULL, indicate the name pattern to search. This pattern can contain any amount of *. (ex: *tr*mod*scene ). if is NULL or Empty string, * will be used for match all. |
pNameSpace | if not NULL, the objects must be inside the given namespace. |
pGroupName | if not NULL, indicate the object group name (type). |
FBSDK_DLL void FBBeginChangeAllModels | ( | ) |
Call begin change to all models (need to be closed).
Useful for selection of many models that can trigger many related callbacks)
FBSDK_DLL void FBEndChangeAllModels | ( | ) |
Call end change to all models (should be first open).
FBSDK_DLL void FBMakeFullPath | ( | FBString & | pFullPath, |
const char * | pRootPath, | ||
const char * | pFilePath | ||
) |
Get the given file's full path.
pFullPath | If the given file path is not root path, return the new path with the given file path behind the given root path, if the given path is root path, directly return the given path. |
pRootPath | The given root path. |
pFilePath | The given file path. |
FBSDK_DLL bool FBPopNormalTool | ( | const char * | pToolName, |
bool | pSetFocus = true |
||
) |
This function is used to bring up a specific tool in the GUI.
pToolName | The name of the tool as shown in the Open Reality menu. |
pSetFocus | Indicate if the tool will have the focus. |