An FBX object is
an instance of class KFbxObject or of
any class derived from KFbxObject.
Almost half of the documented classes in FBX SDK are derived from KFbxObject.
An FBX object:
Must be created using its Create() method, which must specify
the SDK manager object responsible for managing memory for the FBX
object.
Must be destroyed using its Destroy() method.
Has a unique identifier that is set by
FBX and that you cannot change.
Has a name (e.g., “Camera_1”, “Upper_Arm”)
that typically will appear in a user interface. You can set the
name of any FBX object to a null string. This name does not need
to be unique for FBX SDK. However, other applications might not
support duplicate object names.
Can have a name that is qualified by
a namespace (e.g., “MyNameSpace::Camera_1”.
Can be selected and deselected.
Contains a set of properties (see FBX
properties) that must be of a specified data type.
Can use connections (see
Connections) to manage its relationships with other FBX objects.
Can contain user data, i.e., can point
to a buffer that contains data that is not managed by FBX SDK.
There are three ways to clone FBX objects:
eSURFACE_CLONE:
A surface copy of the object.
eREFERENCE_CLONE:
Changes to original object propagate to the clone. Changes to a
clone do not propagate to the original.
eDEEP_CLONE:
A deep copy of the object. Changes to either the original or the
clone do not propagate to each other.