FBX C++ API Reference
FbxScene Class Reference

#include <fbxscene.h>

Class Description

This class contains the description of a 3D scene.

It contains the nodes (including the root node) (FbxNode), materials, textures, videos, gobos, poses, characters, character poses, control set plugs, generic nodes, scene information, global settings, and a global evaluator. The nodes are structured in a tree under the scene's root node.

When an object is created using the FBX SDK, a scene is usually passed as argument to the object creation function to specify that the object belongs to this scene. At this point, a connection is made with the object as source and the scene as destination.

All objects in the scene can be queried by connection index. In addition, generic nodes, materials, and textures can also be queried by name. In this latter case, the first object with the queried name will be returned.

The global evaluator (FbxAnimEvaluator) is used to compute animation values for animated scenes.

Examples:
Animation/main.cxx, Audio/main.cxx, Camera/main.cxx, Common/AnimationUtility.cxx, Common/AnimationUtility.h, Common/Common.cxx, Common/Common.h, Common/GeometryUtility.cxx, Common/GeometryUtility.h, ConvertScene/main.cxx, ExportScene01/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ExportScene05/main.cxx, ExportShader/main.cxx, FileStream/main.cxx, ImportScene/DisplayAnimation.cxx, ImportScene/DisplayAnimation.h, ImportScene/DisplayGenericInfo.cxx, ImportScene/DisplayGenericInfo.h, ImportScene/DisplayHierarchy.cxx, ImportScene/DisplayHierarchy.h, ImportScene/DisplayPose.cxx, ImportScene/DisplayPose.h, ImportScene/main.cxx, Instances/main.cxx, Layers/main.cxx, MyOwnWriterReader/MyOwnReader.cxx, MyOwnWriterReader/MyOwnWriter.cxx, MyOwnWriterReader/MyOwnWriter.h, Normals/main.cxx, Pivot/main.cxx, ProceduralTexture/main.cxx, StereoCamera/main.cxx, SwitchBinding/main.cxx, Transformations/main.cxx, UserProperties/main.cxx, UVSample/main.cxx, ViewScene/DrawScene.cxx, ViewScene/DrawScene.h, ViewScene/SceneContext.cxx, ViewScene/SceneContext.h, ViewScene/SetCamera.cxx, and ViewScene/SetCamera.h.

Definition at line 61 of file fbxscene.h.

+ Inheritance diagram for FbxScene:

Public Types

typedef FbxDocument ParentClass
 
- Public Types inherited from FbxDocument
typedef FbxCollection ParentClass
 
- Public Types inherited from FbxCollection
typedef FbxObject ParentClass
 
- Public Types inherited from FbxObject
typedef FbxEmitter ParentClass
 
enum  EObjectFlag {
  eNone = 0, eInitialized = 1 << 0, eSystem = 1 << 1, eSavable = 1 << 2,
  eSelected = 1 << 3, eHidden = 1 << 4, eContentLoaded = 1 << 5, eDontLocalize = 1 << 6,
  eCopyCalledByClone = 1 << 16
}
 Flags available to control objects. More...
 
enum  ECloneType { eDeepClone, eReferenceClone }
 Types of clones that can be created for FbxObject. More...
 

Public Member Functions

virtual FbxClassId GetClassId () const
 
void FillPoseArray (FbxArray< FbxPose *> &pPoseArray)
 Clear then fill a pose array with all existing pose included in the scene. More...
 
- Public Member Functions inherited from FbxDocument
void AddRootMember (FbxObject *pMember)
 Add a member object and connect it to Roots. More...
 
void RootRootRemoveMember (FbxObject *pMember)
 Remove a member object from the document. More...
 
template<class T >
T * FindRootMember (char *pName)
 Find a member object in the document, that has the given type and name. More...
 
int GetRootMemberCount () const
 Return the number of objects in the document. More...
 
template<class T >
int GetRootMemberCount () const
 Return the number of objects of class T in the document. More...
 
int GetRootMemberCount (FbxCriteria pCriteria) const
 Return the number of objects of the document that satisfy the given criteria. More...
 
FbxObjectGetRootMember (int pIndex=0) const
 Return the member of the document at given index. More...
 
template<class T >
T * GetRootMember (int pIndex=0) const
 Return the member of class T of the document at given index. More...
 
FbxObjectGetRootMember (FbxCriteria pCriteria, int pIndex=0) const
 Return the document member which satisfies given criteria, for given index. More...
 
virtual bool IsRootMember (FbxObject *pMember) const
 Is an object part of the document. More...
 
FbxDocumentInfoGetDocumentInfo () const
 Get the document information. More...
 
void SetDocumentInfo (FbxDocumentInfo *pSceneInfo)
 Set the document information. More...
 
void SetPeripheral (FbxPeripheral *pPeripheral)
 Set the current peripheral to be used to load or unload objects from this document. More...
 
virtual FbxPeripheralGetPeripheral ()
 Retrieve the current peripheral of the document. More...
 
int UnloadContent (FbxStatus *pStatus=((void *) 0))
 Unload all the unloadable objects contained in the document using the currently set peripheral. More...
 
int LoadContent (FbxStatus *pStatus=((void *) 0))
 Load all the objects contained in the document with the data from the currently set peripheral. More...
 
int GetReferencingDocuments (FbxArray< FbxDocument *> &pReferencingDocuments) const
 Fills an array of pointers to documents that reference objects in this document. More...
 
int GetReferencingObjects (const FbxDocument *pFromDoc, FbxArray< FbxObject *> &pReferencingObjects) const
 Fills an array of pointers to objects in a given document (pFromDoc) that reference objects in this document. More...
 
int GetReferencedDocuments (FbxArray< FbxDocument *> &pReferencedDocuments) const
 Fills an array of pointers to documents that are referenced by objects in this document. More...
 
int GetReferencedObjects (const FbxDocument *pToDoc, FbxArray< FbxObject *> &pReferencedObjects) const
 Fills an array of pointers to objects in a given document (pToDoc) that are referenced by objects in this document. More...
 
FbxString GetPathToRootDocument (void) const
 Gets the path string to the root document, if the current document is contained in another document. More...
 
void GetDocumentPathToRootDocument (FbxArray< FbxDocument *> &pDocumentPath, bool pFirstCall=true) const
 Gets the document path to the root document as an array of documents, if the current document is contained in another document. More...
 
bool IsARootDocument (void)
 Tells if this document is a root document. More...
 
bool CreateAnimStack (const char *pName, FbxStatus *pStatus=((void *) 0))
 Adds a new animation stack object to this document. More...
 
bool RemoveAnimStack (const char *pName)
 Destroy the animation stack object identified by pName from this document. More...
 
void FillAnimStackNameArray (FbxArray< FbxString *> &pNameArray)
 Fill a string array with all existing animation stack names. More...
 
bool SetTakeInfo (const FbxTakeInfo &pTakeInfo)
 Set information about an animation stack. More...
 
FbxTakeInfoGetTakeInfo (const FbxString &pTakeName) const
 Get information about an animation stack. More...
 
- Public Member Functions inherited from FbxCollection
virtual bool AddMember (FbxObject *pMember)
 Adds a member. More...
 
virtual bool RemoveMember (FbxObject *pMember)
 Removes a member. More...
 
int GetMemberCount () const
 Returns the number of objects contained within the collection. More...
 
FbxObjectGetMember (int pIndex=0) const
 Returns the member of the collection at the given index. More...
 
virtual bool IsMember (const FbxObject *pMember) const
 Judges whether an object is a part of the collection. More...
 
template<class T >
int GetMemberCount () const
 Returns the number of class T objects contained within the collection. More...
 
template<class T >
T * GetMember (int pIndex=0) const
 Returns the member of class T at the given index in the collection. More...
 
template<class T >
T * FindMember (const char *pName) const
 Searches for a member of class T. More...
 
int GetMemberCount (const FbxCriteria &pCriteria) const
 Returns the number of objects contained within the collection that meet the specified criteria. More...
 
FbxObjectGetMember (const FbxCriteria &pCriteria, int pIndex=0) const
 Returns the member at the given index in the collection if it meets the specified criteria. More...
 
FbxObjectFindMember (const FbxCriteria &pCriteria, const char *pName) const
 Searches for a member with the given name that also meets the given criteria. More...
 
virtual void SetSelectedAll (bool pSelection)
 Selects/Deselects all the contained objects. More...
 
- Public Member Functions inherited from FbxObject
virtual void Compact ()
 Compact the memory used by this object. More...
 
template<class T >
bool Is () const
 Templated test if this class is a hierarchical children of the specified class type. More...
 
FbxManagerGetFbxManager () const
 Retrieve the FbxManager this object belongs to. More...
 
FbxDocumentGetDocument () const
 Returns a const pointer to the document that contains this object. More...
 
FbxDocumentGetRootDocument () const
 Returns a const pointer to the root document that contains this object. More...
 
FbxSceneGetScene () const
 Returns a const pointer to the scene that contains this object. More...
 
void Destroy (bool pRecursive=false)
 Unregister and delete this object from memory. More...
 
void ResetProperties ()
 Reset all the properties of this object to their default values. More...
 
virtual bool GetSelected ()
 Returns if this object is currently in a selected state. More...
 
virtual void SetSelected (bool pSelected)
 Sets whether this object is currently selected. More...
 
void SetUserDataPtr (const FbxUInt64 &pUserID, void *pUserData)
 Sets the data pointer for an user data record whose ID is pUserID. More...
 
void * GetUserDataPtr (const FbxUInt64 &pUserID) const
 Returns the data pointer of an user data record whose ID is pUserID. More...
 
void SetUserDataPtr (void *pUserData)
 Sets the data pointer for the user data record whose ID is the object ID. More...
 
void * GetUserDataPtr () const
 Returns the data pointer of the user data record whose ID is the object ID. More...
 
bool ConnectSrcObject (FbxObject *pObject, FbxConnection::EType pType=FbxConnection::eNone)
 Connects this object to a source object. More...
 
bool IsConnectedSrcObject (const FbxObject *pObject) const
 Judges whether this object connects with the source object. More...
 
bool DisconnectSrcObject (FbxObject *pObject)
 Disconnects this object from a source object. More...
 
bool DisconnectAllSrcObject ()
 Disconnects this object from all source objects. More...
 
bool DisconnectAllSrcObject (const FbxCriteria &pCriteria)
 Disconnects this object from all source objects that satisfy a given criteria. More...
 
int GetSrcObjectCount () const
 Returns the number of source objects with which this object connects. More...
 
int GetSrcObjectCount (const FbxCriteria &pCriteria) const
 Returns the number of source objects that satisfy the given criteria with which this object connects. More...
 
FbxObjectGetSrcObject (int pIndex=0) const
 Returns the source object with which this object connects at the specified index. More...
 
FbxObjectGetSrcObject (const FbxCriteria &pCriteria, int pIndex=0) const
 Returns the source object that satisfies the criteria at the specified index with which this object connects. More...
 
FbxObjectFindSrcObject (const char *pName, int pStartIndex=0) const
 Searches the source object with the specified name, starting at the specified index. More...
 
FbxObjectFindSrcObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const
 Searches the source object with the specified name which satisfies the given criteria, starting at the specified index. More...
 
template<class T >
bool DisconnectAllSrcObject ()
 Disconnects this object from all source objects of the specified class type. More...
 
template<class T >
bool DisconnectAllSrcObject (const FbxCriteria &pCriteria)
 Disconnects this object from all source objects that are of the specified class type and that satisfy the given criteria. More...
 
template<class T >
int GetSrcObjectCount () const
 Returns the number of source objects of a specific class type with which this object connects. More...
 
template<class T >
int GetSrcObjectCount (const FbxCriteria &pCriteria) const
 Returns the number of source objects with which this object connects that are the specified class type and that satisfy the given criteria. More...
 
template<class T >
T * GetSrcObject (int pIndex=0) const
 Returns the source object of the specified class type at the specified index. More...
 
template<class T >
T * GetSrcObject (const FbxCriteria &pCriteria, int pIndex=0) const
 Returns the source object that is the specified class type and that satisfies the given criteria at the specified index. More...
 
template<class T >
T * FindSrcObject (const char *pName, int pStartIndex=0) const
 Searches the source object with the specified name that is the specified class type, starting at the specified index. More...
 
template<class T >
T * FindSrcObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const
 Searches the source object with the specified name that is the specified class type and that satisfies the given criteria, starting at the specified index. More...
 
bool ConnectDstObject (FbxObject *pObject, FbxConnection::EType pType=FbxConnection::eNone)
 Connects this object to one destination object. More...
 
bool IsConnectedDstObject (const FbxObject *pObject) const
 Judges whether this object connects with the destination object. More...
 
bool DisconnectDstObject (FbxObject *pObject)
 Disconnects this object from the destination object. More...
 
bool DisconnectAllDstObject ()
 Disconnects this object from all destination objects. More...
 
bool DisconnectAllDstObject (const FbxCriteria &pCriteria)
 Disconnects this object from all destination objects that satisfy given criteria. More...
 
int GetDstObjectCount () const
 Returns the number of destination objects with which this object connects. More...
 
int GetDstObjectCount (const FbxCriteria &pCriteria) const
 Returns the number of destination objects with which this object connects that satisfy the given criteria. More...
 
FbxObjectGetDstObject (int pIndex=0) const
 Returns the destination object at the specified index with which this object connects. More...
 
FbxObjectGetDstObject (const FbxCriteria &pCriteria, int pIndex=0) const
 Returns the destination object with which this object connects that satisfies the given criteria at the specified index. More...
 
FbxObjectFindDstObject (const char *pName, int pStartIndex=0) const
 Searches the destination object with the specified name, starting at the specified index. More...
 
FbxObjectFindDstObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const
 Searches the destination object with the specified name which satisfies the given criteria, starting at the specified index. More...
 
template<class T >
bool DisconnectAllDstObject ()
 Disconnects this object from all destination objects of the specified class type. More...
 
template<class T >
bool DisconnectAllDstObject (const FbxCriteria &pCriteria)
 Disconnects this object from all destination objects that are the specified class type and that satisfy the given criteria. More...
 
template<class T >
int GetDstObjectCount () const
 Returns the number of destination objects of the specified class type with which this object connects. More...
 
template<class T >
int GetDstObjectCount (const FbxCriteria &pCriteria) const
 Returns the number of destination objects with which this object connects that are the specified class type and that satisfy the given criteria. More...
 
template<class T >
T * GetDstObject (int pIndex=0) const
 Returns the destination object with which this object connects that is the specified class type at the specified index. More...
 
template<class T >
T * GetDstObject (const FbxCriteria &pCriteria, int pIndex=0) const
 Returns the destination object with which this object connects that is the specified class type and that satisfies the given criteria at the specified index. More...
 
template<class T >
T * FindDstObject (const char *pName, int pStartIndex=0) const
 Searches the destination object with the specified name which is of the specified class type, starting at the specified index. More...
 
template<class T >
T * FindDstObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const
 Searches the destination object with the specified name that is the specified class type and that satisfies the given criteria, starting at the specified index. More...
 
FbxProperty GetFirstProperty () const
 Returns the first property of this object. More...
 
FbxProperty GetNextProperty (const FbxProperty &pProperty) const
 Returns the next property of this object that follows the specified property. More...
 
FbxProperty FindProperty (const char *pName, bool pCaseSensitive=true) const
 Searches a property by name. More...
 
FbxProperty FindProperty (const char *pName, const FbxDataType &pDataType, bool pCaseSensitive=true) const
 Searches a property by name and data type. More...
 
FbxProperty FindPropertyHierarchical (const char *pName, bool pCaseSensitive=true) const
 Searches a property by full name. More...
 
FbxProperty FindPropertyHierarchical (const char *pName, const FbxDataType &pDataType, bool pCaseSensitive=true) const
 Searches a property by full name and data type. More...
 
FbxProperty GetClassRootProperty ()
 Returns the class root property. More...
 
bool ConnectSrcProperty (const FbxProperty &pProperty)
 Connects this object to a source property. More...
 
bool IsConnectedSrcProperty (const FbxProperty &pProperty)
 Determines whether this object connects with the specified source property. More...
 
bool DisconnectSrcProperty (const FbxProperty &pProperty)
 Disconnects this object from the specified source property. More...
 
int GetSrcPropertyCount () const
 Returns the number of source properties with which this object connects. More...
 
FbxProperty GetSrcProperty (int pIndex=0) const
 Returns the source property at the specified index with which this object connects. More...
 
FbxProperty FindSrcProperty (const char *pName, int pStartIndex=0) const
 Searches a source property with which this object connects that has a specific name, starting at the specified index. More...
 
bool ConnectDstProperty (const FbxProperty &pProperty)
 Connects this object to a destination property. More...
 
bool IsConnectedDstProperty (const FbxProperty &pProperty)
 Determines if this object connects with the specified destination property. More...
 
bool DisconnectDstProperty (const FbxProperty &pProperty)
 Disconnects this object from the specified destination property. More...
 
int GetDstPropertyCount () const
 Returns the number of destination properties with which this object connects. More...
 
FbxProperty GetDstProperty (int pIndex=0) const
 Returns the destination property at the specified index with which this object connects. More...
 
FbxProperty FindDstProperty (const char *pName, int pStartIndex=0) const
 Searches a destination property with which this object connects that has a specific name, starting at the specified index. More...
 
int ContentUnload ()
 Unloads this object's content using the offload peripheral that is currently set in the document then flushes it from memory. More...
 
int ContentLoad ()
 Loads this object's content using the offload peripheral that is currently set in the document. More...
 
bool ContentIsLoaded () const
 Judges if this object's content is loaded. More...
 
void ContentDecrementLockCount ()
 Decreases the content lock count of an object. More...
 
void ContentIncrementLockCount ()
 Increases the content lock count of an object. More...
 
bool ContentIsLocked () const
 Judges if this object's content is locked. More...
 
virtual bool ContentWriteTo (FbxStream &pStream) const
 Writes the content of the object to the given stream. More...
 
virtual bool ContentReadFrom (const FbxStream &pStream)
 Reads the content of the object from the given stream. More...
 
void EmitMessage (FbxMessage *pMessage) const
 Emits a message in all available message emitters in the document or SDK manager. More...
 
virtual const char * Localize (const char *pID, const char *pDefault=((void *) 0)) const
 Localization helper function, it calls the implementation of FBX SDK manager. More...
 
FbxLibraryGetParentLibrary () const
 Returns a handle on the parent library of this object. More...
 
bool AddImplementation (FbxImplementation *pImplementation)
 Adds an implementation. More...
 
bool RemoveImplementation (FbxImplementation *pImplementation)
 Removes an implementation. More...
 
bool HasDefaultImplementation (void) const
 Determines if this shading node has a default implementation. More...
 
FbxImplementationGetDefaultImplementation (void) const
 Returns the default implementation of this shading node. More...
 
bool SetDefaultImplementation (FbxImplementation *pImplementation)
 Sets the default implementation of this shading node. More...
 
int GetImplementationCount (const FbxImplementationFilter *pCriteria=((void *) 0)) const
 Returns the number of implementations that satisfy a given criteria. More...
 
FbxImplementationGetImplementation (int pIndex, const FbxImplementationFilter *pCriteria=((void *) 0)) const
 Returns the implementation at the specified index that satisfies the given criteria. More...
 
virtual FbxString GetUrl () const
 Returns the URL of this object. More...
 
virtual bool SetUrl (char *pUrl)
 Sets the URL of this object. More...
 
void SetRuntimeClassId (const FbxClassId &pClassId)
 Set the run-time ClassId for this class. More...
 
FbxClassId GetRuntimeClassId () const
 Retrieve the run-time ClassId for this object. More...
 
bool IsRuntime (const FbxClassId &pClassId) const
 Test if this class is a hierarchical children of the specified class type. More...
 
bool IsRuntimePlug () const
 Find out if the ClassId was registered during run-time rather than at compile time. More...
 
void SetObjectFlags (EObjectFlag pFlags, bool pValue)
 Set the state of object flags. More...
 
bool GetObjectFlags (EObjectFlag pFlags) const
 Get the state of object flags. More...
 
void SetAllObjectFlags (FbxUInt pFlags)
 Override all object flags at once. More...
 
FbxUInt GetAllObjectFlags () const
 Get all object flags at once. More...
 
virtual FbxObjectCopy (const FbxObject &pObject)
 Copy an object content into this object. More...
 
virtual FbxObjectClone (FbxObject::ECloneType pCloneType=eDeepClone, FbxObject *pContainer=((void *) 0), void *pSet=((void *) 0)) const
 Creates a clone of this object. More...
 
bool IsAReferenceTo () const
 Checks if this object is a reference clone of another object. More...
 
FbxObjectGetReferenceTo () const
 If this object is a reference clone, returns the original object (from which the clone originates). More...
 
bool IsReferencedBy () const
 Checks if any objects are reference cloned from this object. More...
 
int GetReferencedByCount () const
 Returns the number of objects that are reference clones of this object. More...
 
FbxObjectGetReferencedBy (int pIndex) const
 Returns a reference clone of this object at the specified index. More...
 
void SetName (const char *pName)
 Sets the name of this object. More...
 
const char * GetName () const
 Returns the full name of this object. More...
 
FbxString GetNameWithoutNameSpacePrefix () const
 Returns the name of the object without the namespace qualifier. More...
 
FbxString GetNameWithNameSpacePrefix () const
 Returns the name of the object with the namespace qualifier. More...
 
void SetInitialName (const char *pName)
 Sets the initial name of the object. More...
 
const char * GetInitialName () const
 Returns the initial name of the object. More...
 
FbxString GetNameSpaceOnly ()
 Returns the namespace of the object. More...
 
void SetNameSpace (FbxString pNameSpace)
 Sets the namespace of the object. More...
 
FbxArray< FbxString * > GetNameSpaceArray (char identifier)
 Returns an array of all the namespaces for this object. More...
 
FbxString GetNameOnly () const
 Returns only the name (no namespace or prefix) of the object. More...
 
FbxString GetNameSpacePrefix () const
 Returns the namespace qualifier. More...
 
const FbxUInt64GetUniqueID () const
 Returns the unique ID of this object. More...
 
- Public Member Functions inherited from FbxEmitter
void AddListener (FbxEventHandler &pHandler)
 Add the specified event handler to current emitter list. More...
 
void RemoveListener (FbxEventHandler &pHandler)
 Remove the specified event handler from current emitter list. More...
 
template<typename EventType >
void Emit (const EventType &pEvent) const
 Emit an event with the specified the event type. More...
 

Static Public Member Functions

static FbxSceneCreate (FbxManager *pManager, const char *pName)
 
static FbxSceneCreate (FbxObject *pContainer, const char *pName)
 
- Static Public Member Functions inherited from FbxDocument
static FbxDocumentCreate (FbxManager *pManager, const char *pName)
 
static FbxDocumentCreate (FbxObject *pContainer, const char *pName)
 
- Static Public Member Functions inherited from FbxCollection
static FbxCollectionCreate (FbxManager *pManager, const char *pName)
 
static FbxCollectionCreate (FbxObject *pContainer, const char *pName)
 
- Static Public Member Functions inherited from FbxObject
static FbxObjectCreate (FbxManager *pManager, const char *pName)
 
static FbxObjectCreate (FbxObject *pContainer, const char *pName)
 
static FbxString RemovePrefix (char *pName)
 Removes the prefix of pName. More...
 
static FbxString StripPrefix (FbxString &lName)
 Strips the prefix of pName. More...
 
static FbxString StripPrefix (const char *pName)
 Strips the prefix of pName. More...
 

Static Public Attributes

static FbxClassId ClassId
 
- Static Public Attributes inherited from FbxDocument
static FbxClassId ClassId
 
- Static Public Attributes inherited from FbxCollection
static FbxClassId ClassId
 
- Static Public Attributes inherited from FbxObject
static FbxClassId ClassId
 

Protected Member Functions

virtual ~ FbxScene ()
 
 FbxScene (FbxManager &pManager, const char *pName)
 
- Protected Member Functions inherited from FbxDocument
virtual ~ FbxDocument ()
 
 FbxDocument (FbxManager &pManager, const char *pName)
 
- Protected Member Functions inherited from FbxCollection
virtual ~ FbxCollection ()
 
 FbxCollection (FbxManager &pManager, const char *pName)
 
- Protected Member Functions inherited from FbxObject
virtual ~ FbxObject ()
 
virtual void Construct (const FbxObject *pFrom)
 Optional constructor override, automatically called by default constructor. More...
 
virtual void ConstructProperties (bool pForceSet)
 Optional property constructor override, automatically called by default constructor. More...
 
virtual void Destruct (bool pRecursive)
 Optional destructor override, automatically called by default destructor. More...
 
virtual void ContentClear ()
 Clears this object's content from memory. More...
 

Static Protected Member Functions

static FbxSceneAllocate (FbxManager *pManager, const char *pName, const FbxScene *pFrom)
 
- Static Protected Member Functions inherited from FbxDocument
static FbxDocumentAllocate (FbxManager *pManager, const char *pName, const FbxDocument *pFrom)
 
- Static Protected Member Functions inherited from FbxCollection
static FbxCollectionAllocate (FbxManager *pManager, const char *pName, const FbxCollection *pFrom)
 
- Static Protected Member Functions inherited from FbxObject
static FbxObjectAllocate (FbxManager *pManager, const char *pName, const FbxObject *pFrom)
 

Friends

class fbxsdk ::FbxManager
 
template<typename T >
T * fbxsdk ::FbxNew ()
 
template<typename T , typename T1 >
T * fbxsdk ::FbxNew (T1 &p1)
 
template<typename T , typename T1 >
T * fbxsdk ::FbxNew (const T1 &p1)
 
template<typename T , typename T1 , typename T2 >
T * fbxsdk ::FbxNew (T1 &p1, T2 &p2)
 
template<typename T , typename T1 , typename T2 >
T * fbxsdk ::FbxNew (T1 &p1, const T2 &p2)
 
template<typename T , typename T1 , typename T2 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2)
 
template<typename T , typename T1 , typename T2 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * fbxsdk ::FbxNew (T1 &p1, T2 &p2, T3 &p3)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * fbxsdk ::FbxNew (T1 &p1, T2 &p2, const T3 &p3)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * fbxsdk ::FbxNew (T1 &p1, const T2 &p2, T3 &p3)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * fbxsdk ::FbxNew (T1 &p1, const T2 &p2, const T3 &p3)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, const T3 &p3)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (T1 &p1, T2 &p2, T3 &p3, T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (T1 &p1, T2 &p2, T3 &p3, const T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (T1 &p1, T2 &p2, const T3 &p3, T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (T1 &p1, T2 &p2, const T3 &p3, const T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (T1 &p1, const T2 &p2, T3 &p3, T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (T1 &p1, const T2 &p2, T3 &p3, const T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (T1 &p1, const T2 &p2, const T3 &p3, T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, const T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, const T3 &p3, T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, const T3 &p3, const T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, const T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (T1 &p1, T2 &p2, T3 &p3, T4 &p4, T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, T4 &p4, T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, T4 &p4, T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, const T3 &p3, T4 &p4, T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, const T4 &p4, T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, T2 &p2, T3 &p3, T4 &p4, const T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, T4 &p4, T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, const T4 &p4, T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, T3 &p3, T4 &p4, const T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, T4 &p4, const T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5, const T6 &p6)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5, const T6 &p6, const T7 &p7)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5, const T6 &p6, const T7 &p7, const T8 &p8)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
T * fbxsdk ::FbxNew (const T1 &p1, const T2 &p2, const T3 &p3, const T4 &p4, const T5 &p5, const T6 &p6, const T7 &p7, const T8 &p8, const T9 &p9)
 
template<typename T >
void fbxsdk ::FbxDelete (T *p)
 
template<typename T >
void fbxsdk ::FbxDelete (const T *p)
 
template<typename T >
T * fbxsdk ::FbxNewArray (const int n)
 
template<typename T >
void fbxsdk ::FbxDeleteArray (T *p)
 

Scene Management

void Clear ()
 Clear the scene content by deleting the node tree below the root node and restoring default settings. More...
 
FbxNodeGetRootNode () const
 Get the root node of the scene. More...
 

Texture Material and Video Access

void FillTextureArray (FbxArray< FbxTexture *> &pTextureArray)
 Clear, then fill, a texture array with all existing textures included in the scene. More...
 
void FillMaterialArray (FbxArray< FbxSurfaceMaterial *> &pMaterialArray)
 Clear, then fill, a material array with all existing materials included in the scene. More...
 

Generic Node Access

int GetGenericNodeCount () const
 Get number of generic nodes in the scene. More...
 
FbxGenericNodeGetGenericNode (int pIndex)
 Get generic node at given index. More...
 
FbxGenericNodeGetGenericNode (char *pName)
 Access a generic node from its name. More...
 
bool AddGenericNode (FbxGenericNode *pGenericNode)
 Add a generic node to this scene. More...
 
bool RemoveGenericNode (FbxGenericNode *pGenericNode)
 Remove the generic node from this scene. More...
 

Character Management

int GetCharacterCount () const
 Get number of characters. More...
 
FbxCharacterGetCharacter (int pIndex)
 Get character at given index. More...
 
int CreateCharacter (const char *pName)
 Create a new character. More...
 
void DestroyCharacter (int pIndex)
 Destroy character. More...
 

ControlSetPlug Management

int GetControlSetPlugCount () const
 Get number of ControlSetPlugs. More...
 
FbxControlSetPlugGetControlSetPlug (int pIndex)
 Get ControlSetPlug at given index. More...
 
int CreateControlSetPlug (char *pName)
 Create a new ControlSetPlug. More...
 
void DestroyControlSetPlug (int pIndex)
 Destroy ControlSetPlug. More...
 

Character Pose Management

int GetCharacterPoseCount () const
 Get number of character poses. More...
 
FbxCharacterPoseGetCharacterPose (int pIndex)
 Get character pose at given index. More...
 
int CreateCharacterPose (char *pName)
 Create a new character pose. More...
 
void DestroyCharacterPose (int pIndex)
 Destroy character pose. More...
 

Pose Management

int GetPoseCount () const
 Get number of poses. More...
 
FbxPoseGetPose (int pIndex)
 Get pose at given index. More...
 
bool AddPose (FbxPose *pPose)
 Add a pose to this scene. More...
 
bool RemovePose (FbxPose *pPose)
 Remove the specified pose from the scene. More...
 
bool RemovePose (int pIndex)
 Remove the pose at the given index from the scene. More...
 

Scene information

FbxDocumentInfoGetSceneInfo ()
 Get the scene information. More...
 
void SetSceneInfo (FbxDocumentInfo *pSceneInfo)
 Set the scene information. More...
 

Global Settings

FbxGlobalSettingsGetGlobalSettings ()
 Access global settings. More...
 
const FbxGlobalSettingsGetGlobalSettings () const
 Const access to global settings. More...
 

Scene Animation Evaluation

The scene's animation evaluator is used to compute animation values for animated scenes.

A typical usage would be to compute the global transform matrix of a node lNode at a given time lTime.

FbxAMatrix& lGlobalMatrix = lNode->GetScene()->GetAnimationEvaluator()->GetNodeGlobalTransform(lNode, lTime);
or the exact equivalent:
FbxAMatrix& lGlobalMatrix = lNode->EvaluateGlobalTransform(lTime);

The user can create one or more evaluators in the scene. The default evaluator is set using SetEvaluator. When GetEvaluator is called, if the scene has no evaluator, an evaluator is created with default values.

void SetCurrentAnimationStack (FbxAnimStack *pAnimStack)
 Set the current animation stack context used by the animation evaluator. More...
 
FbxAnimStackGetCurrentAnimationStack ()
 Retrieve the current animation stack. More...
 
void SetAnimationEvaluator (FbxAnimEvaluator *pEvaluator)
 Set the global evaluator used by this scene evaluation engine. More...
 
FbxAnimEvaluatorGetAnimationEvaluator ()
 Get the global evaluator used by this scene evaluation engine. More...
 

Material Access

int GetMaterialCount () const
 Get number of materials. More...
 
FbxSurfaceMaterialGetMaterial (int pIndex)
 Get the material at the given index. More...
 
FbxSurfaceMaterialGetMaterial (char *pName)
 Get the material by its name. More...
 
bool AddMaterial (FbxSurfaceMaterial *pMaterial)
 Add the material to this scene. More...
 
bool RemoveMaterial (FbxSurfaceMaterial *pMaterial)
 Remove the material from this scene. More...
 

Texture Access

int GetTextureCount () const
 Get number of textures (type FbxTexture). More...
 
FbxTextureGetTexture (int pIndex)
 Get the texture at the given index. More...
 
FbxTextureGetTexture (char *pName)
 Get the texture by its name. More...
 
bool AddTexture (FbxTexture *pTexture)
 Add the texture to this scene. More...
 
bool RemoveTexture (FbxTexture *pTexture)
 Remove the texture from this scene. More...
 

Node Access

int GetNodeCount () const
 Get number of nodes. More...
 
FbxNodeGetNode (int pIndex)
 Get the node at the given index. More...
 
bool AddNode (FbxNode *pNode)
 Add the node to this scene. More...
 
bool RemoveNode (FbxNode *pNode)
 Remove the node from this scene. More...
 
int GetCurveOnSurfaceCount ()
 Helper method for determining the number of nodes that have curves on surface attributes in the scene. More...
 
FbxNodeFindNodeByName (const FbxString &pName)
 Get the first node with this name. More...
 

Geometry Access

int GetGeometryCount () const
 Get number of geometries. More...
 
FbxGeometryGetGeometry (int pIndex)
 Get the geometry at the given index. More...
 
bool AddGeometry (FbxGeometry *pGeometry)
 Add the geometry to this scene. More...
 
bool RemoveGeometry (FbxGeometry *pGeometry)
 Remove the geometry from this scene. More...
 

Video Access

int GetVideoCount () const
 Get number of videos. More...
 
FbxVideoGetVideo (int pIndex)
 Get the video at the given index. More...
 
bool AddVideo (FbxVideo *pVideo)
 Add the video to this scene. More...
 
bool RemoveVideo (FbxVideo *pVideo)
 Remove the video from this scene. More...
 

Utilities

void SyncShowPropertyForInstance ()
 Synchronize all the Show properties of node instances. More...
 
bool ComputeBoundingBoxMinMaxCenter (FbxVector4 &pBBoxMin, FbxVector4 &pBBoxMax, FbxVector4 &pBBoxCenter, bool pSelected=false, const FbxTime &pTime=FbxTime((0x7fffffffffffffffLL)))
 Compute the bounding box and its center for all (or selected) nodes. More...
 

Additional Inherited Members

- Public Attributes inherited from FbxDocument
FbxPropertyT< FbxReferenceRoots
 
FbxPropertyT< FbxStringActiveAnimStackName
 Holds the name of the FbxAnimStack that the application uses for animation in this document. More...
 
- Public Attributes inherited from FbxObject
FbxProperty RootProperty
 The root property that holds all children property for this object. More...
 

Member Typedef Documentation

◆ ParentClass

Definition at line 63 of file fbxscene.h.

Constructor & Destructor Documentation

◆ ~ FbxScene()

virtual ~ FbxScene ( )
inlineprotectedvirtual

Definition at line 63 of file fbxscene.h.

65 :

◆ FbxScene()

FbxScene ( FbxManager pManager,
const char *  pName 
)
inlineprotected

Definition at line 63 of file fbxscene.h.

65 :

Member Function Documentation

◆ GetClassId()

virtual FbxClassId GetClassId ( ) const
inlinevirtual

Reimplemented from FbxDocument.

Definition at line 63 of file fbxscene.h.

65 :

◆ Create() [1/2]

static FbxScene* Create ( FbxManager pManager,
const char *  pName 
)
static

◆ Create() [2/2]

static FbxScene* Create ( FbxObject pContainer,
const char *  pName 
)
static

◆ Allocate()

static FbxScene* Allocate ( FbxManager pManager,
const char *  pName,
const FbxScene pFrom 
)
staticprotected

◆ Clear()

void Clear ( )
virtual

Clear the scene content by deleting the node tree below the root node and restoring default settings.

Reimplemented from FbxDocument.

◆ GetRootNode()

◆ FillTextureArray()

void FillTextureArray ( FbxArray< FbxTexture *> &  pTextureArray)

Clear, then fill, a texture array with all existing textures included in the scene.

Parameters
pTextureArrayAn array of texture pointers.

◆ FillMaterialArray()

void FillMaterialArray ( FbxArray< FbxSurfaceMaterial *> &  pMaterialArray)

Clear, then fill, a material array with all existing materials included in the scene.

Parameters
pMaterialArrayAn array of material pointers.

◆ GetGenericNodeCount()

int GetGenericNodeCount ( ) const

Get number of generic nodes in the scene.

Returns
Number of Generic Nodes in this scene.

◆ GetGenericNode() [1/2]

FbxGenericNode* GetGenericNode ( int  pIndex)

Get generic node at given index.

Parameters
pIndexPosition in the list of the generic nodes.
Returns
Pointer to the generic node or NULL if the index is out of bounds.

◆ GetGenericNode() [2/2]

FbxGenericNode* GetGenericNode ( char *  pName)

Access a generic node from its name.

Parameters
pNameName of the generic node.
Returns
found generic node

◆ AddGenericNode()

bool AddGenericNode ( FbxGenericNode pGenericNode)

Add a generic node to this scene.

Parameters
pGenericNodePointer to the generic node to be added.
Returns
If the passed parameter is NULL, this method will return false, otherwise true.

◆ RemoveGenericNode()

bool RemoveGenericNode ( FbxGenericNode pGenericNode)

Remove the generic node from this scene.

Parameters
pGenericNodePointer to the generic node to be removed.
Returns
If the passed parameter is NULL, this method will return false, otherwise true.
Remarks
The pointed object is not referenced by the scene anymore but is not deleted.

◆ GetCharacterCount()

int GetCharacterCount ( ) const

Get number of characters.

Returns
Number of characters in this scene.

◆ GetCharacter()

FbxCharacter* GetCharacter ( int  pIndex)

Get character at given index.

Parameters
pIndexPosition in the list of the characters.
Returns
Pointer to the character or NULL if index is out of bounds.

◆ CreateCharacter()

int CreateCharacter ( const char *  pName)

Create a new character.

Parameters
pNameName given to character.
Returns
Index of the created character.

◆ DestroyCharacter()

void DestroyCharacter ( int  pIndex)

Destroy character.

Parameters
pIndexSpecify which character to destroy.

◆ GetControlSetPlugCount()

int GetControlSetPlugCount ( ) const

Get number of ControlSetPlugs.

Returns
Number of ControlSet plugs in this scene.

◆ GetControlSetPlug()

FbxControlSetPlug* GetControlSetPlug ( int  pIndex)

Get ControlSetPlug at given index.

Parameters
pIndexPosition in the list of the ControlSetPlug
Returns
Pointer to ControlSetPlug or NULL if index is out of bounds.

◆ CreateControlSetPlug()

int CreateControlSetPlug ( char *  pName)

Create a new ControlSetPlug.

Parameters
pNameName given to ControlSetPlug.
Returns
Index of created ControlSetPlug.

◆ DestroyControlSetPlug()

void DestroyControlSetPlug ( int  pIndex)

Destroy ControlSetPlug.

Parameters
pIndexSpecify which ControlSetPlug to destroy.

◆ GetCharacterPoseCount()

int GetCharacterPoseCount ( ) const

Get number of character poses.

Returns
Number of character poses in this scene.
Remarks
Character Poses and Poses are two distinct entities having their own lists.
Examples:
ImportScene/DisplayPose.cxx.

◆ GetCharacterPose()

FbxCharacterPose* GetCharacterPose ( int  pIndex)

Get character pose at given index.

Parameters
pIndexPosition in the list of character poses.
Returns
Pointer to the character pose or NULL if index is out of bounds.
Examples:
ImportScene/DisplayPose.cxx.

◆ CreateCharacterPose()

int CreateCharacterPose ( char *  pName)

Create a new character pose.

Parameters
pNameName given to character pose.
Returns
Index of created character pose.

◆ DestroyCharacterPose()

void DestroyCharacterPose ( int  pIndex)

Destroy character pose.

Parameters
pIndexSpecify which character pose to destroy.

◆ GetPoseCount()

int GetPoseCount ( ) const

Get number of poses.

Returns
Number of poses in the scene.
Remarks
Poses and Character Poses are two distinct entities having their own lists.
Examples:
ImportScene/DisplayPose.cxx, and ViewScene/SceneContext.cxx.

◆ GetPose()

FbxPose* GetPose ( int  pIndex)

Get pose at given index.

Parameters
pIndexPosition in the list of poses.
Returns
Pointer to the pose or NULL if index is out of bounds.
Examples:
ImportScene/DisplayPose.cxx, and ViewScene/SceneContext.cxx.

◆ AddPose()

bool AddPose ( FbxPose pPose)

Add a pose to this scene.

Parameters
pPoseThe pose (for example: bind pose, rest pose) to be added to the scene.
Returns
If the pose is correctly added to the scene, return true. Otherwise, if the pose is already in the scene, return false.
Examples:
ExportScene01/main.cxx, and SwitchBinding/main.cxx.

◆ RemovePose() [1/2]

bool RemovePose ( FbxPose pPose)

Remove the specified pose from the scene.

Parameters
pPoseThe pose (for example: bind pose, rest pose) to be removed from the scene.
Returns
If the pose was successfully removed from the scene, return true. Otherwise, if the pose could not be found return false.
Examples:
SwitchBinding/main.cxx.

◆ RemovePose() [2/2]

bool RemovePose ( int  pIndex)

Remove the pose at the given index from the scene.

Parameters
pIndexIndex of the pose to be removed.
Returns
If the pose was successfully removed from the scene, return true. Otherwise, if the pose could not be found return false.

◆ GetSceneInfo()

FbxDocumentInfo* GetSceneInfo ( )
inline

Get the scene information.

Returns
Pointer to the scene information object.
Examples:
ExportScene01/main.cxx, and ImportScene/main.cxx.

Definition at line 215 of file fbxscene.h.

215 { return GetDocumentInfo(); }
FbxDocumentInfo * GetDocumentInfo() const
Get the document information.

◆ SetSceneInfo()

void SetSceneInfo ( FbxDocumentInfo pSceneInfo)
inline

Set the scene information.

Parameters
pSceneInfoPointer to the scene information object.
Examples:
ExportScene01/main.cxx, and ExportShader/main.cxx.

Definition at line 219 of file fbxscene.h.

219 { SetDocumentInfo(pSceneInfo); }
void SetDocumentInfo(FbxDocumentInfo *pSceneInfo)
Set the document information.

◆ GetGlobalSettings() [1/2]

FbxGlobalSettings& GetGlobalSettings ( )

Access global settings.

Returns
Reference to the Global Settings.
Examples:
ExportScene03/main.cxx, ExportScene04/main.cxx, ImportScene/main.cxx, ViewScene/DrawScene.cxx, ViewScene/SceneContext.cxx, and ViewScene/SetCamera.cxx.

◆ GetGlobalSettings() [2/2]

const FbxGlobalSettings& GetGlobalSettings ( ) const

Const access to global settings.

Returns
Const reference to the Global Settings.

◆ SetCurrentAnimationStack()

void SetCurrentAnimationStack ( FbxAnimStack pAnimStack)

Set the current animation stack context used by the animation evaluator.

Parameters
pAnimStackThe animation stack to set as current.
Remarks
Changing the current animation stack will also cause the animation evaluator to reset its state.
Examples:
Animation/main.cxx.

◆ GetCurrentAnimationStack()

FbxAnimStack* GetCurrentAnimationStack ( )

Retrieve the current animation stack.

Returns
the current animation stack. If none were set previously, the default one will be returned if it exists.

◆ SetAnimationEvaluator()

void SetAnimationEvaluator ( FbxAnimEvaluator pEvaluator)

Set the global evaluator used by this scene evaluation engine.

Parameters
pEvaluatorThe evaluator to be used for evaluation processing of this scene.

◆ GetAnimationEvaluator()

FbxAnimEvaluator* GetAnimationEvaluator ( )

Get the global evaluator used by this scene evaluation engine.

If no evaluator were previously set, this function will return either the first evaluator found attached to this scene, or a new default evaluator.

Returns
The evaluator to be used for evaluation processing of this scene.

◆ FillPoseArray()

void FillPoseArray ( FbxArray< FbxPose *> &  pPoseArray)

Clear then fill a pose array with all existing pose included in the scene.

Parameters
pPoseArrayAn array of pose pointers.

◆ GetMaterialCount()

int GetMaterialCount ( ) const

Get number of materials.

Returns
Number of materials in this scene.

◆ GetMaterial() [1/2]

FbxSurfaceMaterial* GetMaterial ( int  pIndex)

Get the material at the given index.

Parameters
pIndexPosition in the list of materials.
Returns
Pointer to the material or NULL if the index is out of bounds.
Remarks
pIndex must be between 0 and GetMaterialCount().

◆ GetMaterial() [2/2]

FbxSurfaceMaterial* GetMaterial ( char *  pName)

Get the material by its name.

Parameters
pNameName of the material.
Returns
Pointer to the material or NULL if not found.

◆ AddMaterial()

bool AddMaterial ( FbxSurfaceMaterial pMaterial)

Add the material to this scene.

Parameters
pMaterialPointer to the material to be added.
Returns
true on successful addition.

◆ RemoveMaterial()

bool RemoveMaterial ( FbxSurfaceMaterial pMaterial)

Remove the material from this scene.

Parameters
pMaterialPointer to the material to be removed.
Returns
true on successful removal.

◆ GetTextureCount()

int GetTextureCount ( ) const

Get number of textures (type FbxTexture).

Returns
Number of textures in this scene. Includes types FbxFileTexture, FbxLayeredTexture and FbxProceduralTexture.
Remarks
To get the number of textures of a specific type, use GetSrcCount(). For example:
int lNbFileTextures = lScene->GetSrcObjectCount<FbxFileTexture>();
int lNbLayeredTextures = lScene->GetSrcObjectCount<FbxLayeredTexture>();
int lNbProceduralTextures = lScene->GetSrcObjectCount<FbxProceduralTexture>();
Examples:
ViewScene/SceneContext.cxx.

◆ GetTexture() [1/2]

FbxTexture* GetTexture ( int  pIndex)

Get the texture at the given index.

pIndex must be between 0 and GetTextureCount().

Parameters
pIndexPosition in the list of textures.
Returns
Pointer to the texture or NULL if the index is out of bounds.
Remarks
To get the texture of a specific texture type, use GetSrcObject(). For example:
FbxFileTexture* lFileTexture = lScene->GetSrcObject<FbxFileTexture>(i);
FbxLayeredTexture* lLayeredTexture = lScene->GetSrcObject<FbxLayeredTexture>(i);
FbxProceduralTexture* lProceduralTexture = lScene->GetSrcObject<FbxProceduralTexture>(i);
Examples:
ViewScene/SceneContext.cxx.

◆ GetTexture() [2/2]

FbxTexture* GetTexture ( char *  pName)

Get the texture by its name.

Parameters
pNameName of the texture.
Returns
Pointer to the texture or NULL if not found.

◆ AddTexture()

bool AddTexture ( FbxTexture pTexture)

Add the texture to this scene.

Parameters
pTexturePointer to the texture to be added.
Returns
true on successful addition.

◆ RemoveTexture()

bool RemoveTexture ( FbxTexture pTexture)

Remove the texture from this scene.

Parameters
pTexturePointer to the texture to be removed.
Returns
true on successful removal.

◆ GetNodeCount()

int GetNodeCount ( ) const

Get number of nodes.

Returns
Number of nodes in this scene.

◆ GetNode()

FbxNode* GetNode ( int  pIndex)

Get the node at the given index.

Parameters
pIndexPosition in the list of nodes.
Returns
Pointer to the node or NULL if the index is out of bounds.
Remarks
pIndex must be between 0 and GetNodeCount().
Examples:
SwitchBinding/main.cxx.

◆ AddNode()

bool AddNode ( FbxNode pNode)

Add the node to this scene.

Parameters
pNodePointer to the node to be added.
Returns
true on successful addition.

◆ RemoveNode()

bool RemoveNode ( FbxNode pNode)

Remove the node from this scene.

Parameters
pNodePointer to the node to be removed.
Returns
true on successful removal.

◆ GetCurveOnSurfaceCount()

int GetCurveOnSurfaceCount ( )

Helper method for determining the number of nodes that have curves on surface attributes in the scene.

Since the curve-on-surface nodes are connected to nurbs geometry and not any FbxNode in the scene, they won't normally be picked up in a graph traversal.

Returns
The number of curve-on-surface nodes in the scene

◆ FindNodeByName()

FbxNode* FindNodeByName ( const FbxString pName)

Get the first node with this name.

Parameters
pNameName of the node.
Returns
Pointer to the node, or NULL if node is not found.
Examples:
ViewScene/SetCamera.cxx.

◆ GetGeometryCount()

int GetGeometryCount ( ) const

Get number of geometries.

Returns
Number of geometries in this scene.

◆ GetGeometry()

FbxGeometry* GetGeometry ( int  pIndex)

Get the geometry at the given index.

Parameters
pIndexPosition in the list of geometries.
Returns
Pointer to the geometry or NULL if the index is out of bounds.
Remarks
pIndex must be between 0 and GetGeometryCount().

◆ AddGeometry()

bool AddGeometry ( FbxGeometry pGeometry)

Add the geometry to this scene.

Parameters
pGeometryPointer to the geometry to be added.
Returns
true on successful addition.

◆ RemoveGeometry()

bool RemoveGeometry ( FbxGeometry pGeometry)

Remove the geometry from this scene.

Parameters
pGeometryPointer to the geometry to be removed.
Returns
true on successful removal.

◆ GetVideoCount()

int GetVideoCount ( ) const

Get number of videos.

Returns
Number of videos in this scene.

◆ GetVideo()

FbxVideo* GetVideo ( int  pIndex)

Get the video at the given index.

Parameters
pIndexPosition in the list of videos.
Returns
Pointer to the video or NULL if the index is out of bounds.
Remarks
pIndex must be between 0 and GetVideoCount().

◆ AddVideo()

bool AddVideo ( FbxVideo pVideo)

Add the video to this scene.

Parameters
pVideoPointer to the video to be added.
Returns
true on successful addition.

◆ RemoveVideo()

bool RemoveVideo ( FbxVideo pVideo)

Remove the video from this scene.

Parameters
pVideoPointer to the video to be removed.
Returns
true on successful removal.

◆ SyncShowPropertyForInstance()

void SyncShowPropertyForInstance ( )

Synchronize all the Show properties of node instances.

Walks all the node attributes defined in the scene and synchronize the Show property of all the nodes that reference the node attribute so that they all contain the same value. This method should be called after the FBX scene is completely created, typically right after the calls to the FbxImporter::Import() or just before the calls to the FbxExporter::Export().

Remarks
Applications only need to call this method if their interpretation of the Show property implies that setting the Show state on one instance affect all of them.
See also
FbxNode::Visibility property, FbxNode::Show property

◆ ComputeBoundingBoxMinMaxCenter()

bool ComputeBoundingBoxMinMaxCenter ( FbxVector4 pBBoxMin,
FbxVector4 pBBoxMax,
FbxVector4 pBBoxCenter,
bool  pSelected = false,
const FbxTime pTime = FbxTime((0x7fffffffffffffffLL)) 
)

Compute the bounding box and its center for all (or selected) nodes.

Parameters
pBBoxMinThe minimum value of the bounding box upon successful return.
pBBoxMaxThe maximum value of the bounding box upon successful return.
pBBoxCenterThe center value of the bounding box upon successful return.
pSelectedIf true, only take into account selected geometry, otherwise take all geometry into account.
pTimeIf different from FBXSDK_TIME_INFINITE, time used to compute the bounding box for deformed geometry.
Returns
true if successful, otherwise false.
Remarks
If geometry have been unloaded from memory, their bounding box cannot be calculated and will use any value set previously.

Friends And Related Function Documentation

◆ fbxsdk ::FbxManager

friend class fbxsdk ::FbxManager
friend

Definition at line 63 of file fbxscene.h.

◆ fbxsdk ::FbxNew [1/47]

T* fbxsdk ::FbxNew ( )
friend

◆ fbxsdk ::FbxNew [2/47]

T* fbxsdk ::FbxNew ( T1 &  p1)
friend

◆ fbxsdk ::FbxNew [3/47]

T* fbxsdk ::FbxNew ( const T1 &  p1)
friend

◆ fbxsdk ::FbxNew [4/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
T2 &  p2 
)
friend

◆ fbxsdk ::FbxNew [5/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
const T2 &  p2 
)
friend

◆ fbxsdk ::FbxNew [6/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2 
)
friend

◆ fbxsdk ::FbxNew [7/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2 
)
friend

◆ fbxsdk ::FbxNew [8/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
T2 &  p2,
T3 &  p3 
)
friend

◆ fbxsdk ::FbxNew [9/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
T2 &  p2,
const T3 &  p3 
)
friend

◆ fbxsdk ::FbxNew [10/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
const T2 &  p2,
T3 &  p3 
)
friend

◆ fbxsdk ::FbxNew [11/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
const T2 &  p2,
const T3 &  p3 
)
friend

◆ fbxsdk ::FbxNew [12/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
T3 &  p3 
)
friend

◆ fbxsdk ::FbxNew [13/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
const T3 &  p3 
)
friend

◆ fbxsdk ::FbxNew [14/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
T3 &  p3 
)
friend

◆ fbxsdk ::FbxNew [15/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3 
)
friend

◆ fbxsdk ::FbxNew [16/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
T2 &  p2,
T3 &  p3,
T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [17/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
T2 &  p2,
T3 &  p3,
const T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [18/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
T2 &  p2,
const T3 &  p3,
T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [19/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
T2 &  p2,
const T3 &  p3,
const T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [20/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
const T2 &  p2,
T3 &  p3,
T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [21/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
const T2 &  p2,
T3 &  p3,
const T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [22/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
const T2 &  p2,
const T3 &  p3,
T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [23/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
const T2 &  p2,
const T3 &  p3,
const T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [24/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
T3 &  p3,
T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [25/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
T3 &  p3,
const T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [26/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
const T3 &  p3,
T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [27/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
const T3 &  p3,
const T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [28/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
T3 &  p3,
T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [29/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
T3 &  p3,
const T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [30/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [31/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
const T4 &  p4 
)
friend

◆ fbxsdk ::FbxNew [32/47]

T* fbxsdk ::FbxNew ( T1 &  p1,
T2 &  p2,
T3 &  p3,
T4 &  p4,
T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [33/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
T3 &  p3,
T4 &  p4,
T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [34/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
T3 &  p3,
T4 &  p4,
T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [35/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
const T3 &  p3,
T4 &  p4,
T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [36/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
T3 &  p3,
const T4 &  p4,
T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [37/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
T2 &  p2,
T3 &  p3,
T4 &  p4,
const T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [38/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
T4 &  p4,
T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [39/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
T3 &  p3,
const T4 &  p4,
T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [40/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
T3 &  p3,
T4 &  p4,
const T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [41/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
const T4 &  p4,
T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [42/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
T4 &  p4,
const T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [43/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
const T4 &  p4,
const T5 &  p5 
)
friend

◆ fbxsdk ::FbxNew [44/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
const T4 &  p4,
const T5 &  p5,
const T6 &  p6 
)
friend

◆ fbxsdk ::FbxNew [45/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
const T4 &  p4,
const T5 &  p5,
const T6 &  p6,
const T7 &  p7 
)
friend

◆ fbxsdk ::FbxNew [46/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
const T4 &  p4,
const T5 &  p5,
const T6 &  p6,
const T7 &  p7,
const T8 &  p8 
)
friend

◆ fbxsdk ::FbxNew [47/47]

T* fbxsdk ::FbxNew ( const T1 &  p1,
const T2 &  p2,
const T3 &  p3,
const T4 &  p4,
const T5 &  p5,
const T6 &  p6,
const T7 &  p7,
const T8 &  p8,
const T9 &  p9 
)
friend

◆ fbxsdk ::FbxDelete [1/2]

void fbxsdk ::FbxDelete ( T *  p)
friend

◆ fbxsdk ::FbxDelete [2/2]

void fbxsdk ::FbxDelete ( const T *  p)
friend

◆ fbxsdk ::FbxNewArray

T* fbxsdk ::FbxNewArray ( const int  n)
friend

◆ fbxsdk ::FbxDeleteArray

void fbxsdk ::FbxDeleteArray ( T *  p)
friend

Member Data Documentation

◆ ClassId

FbxClassId ClassId
static

Definition at line 63 of file fbxscene.h.


The documentation for this class was generated from the following file: