所有的FBX对象都是FbxObject的实例。它们可以通过FbxManager或者FbxScene中的Create()创建。而这些对象也可以通过取得单例的函数来获取项目中的FbxManager对象。比如FbxImporter获取FbxManager对象:代码
// Assume pImporter is an instance of FbxImporter.
FbxManager* lSdkManager = pImporter->GetFbxManager();
对FBX对象的复制必须要调用它的Copy()函数。operator=是不能用来复制FBX对象的,它是一个私有函数。贴出如何复制一个网格对象的代码:
// Assume that lScene is a pointer to a valid scene object.
FbxMesh* lSourceMesh = FbxMesh::Create (lScene, "");
// Define control points, etc. for lSourceMesh.
// This mesh will be overwritten
FbxMesh* lTargetMesh = FbxMesh::Create (lScene, "");
// Copy the data from lSourceMesh into lTargetMesh. Note that
// the source object and the target object must be instances of
// the same class (FbxMesh in this case).
lTargetMesh->Copy(lSourceMesh);
复制一个FbxObject时,它的所有属性FbxProperty实例和它们的值会被复制。但是它内部的一些联系(比如双亲和孩子关系)不能被复制,在复制的时候必须明确写出来。