Connections
 
 
 

A connection is an FBX SDK data structure that manages a two-way relationship between FBX objects and /or FBX properties.

In a connection, one side of the relationship is the source, and the other side is the destination.

“Source” and “destination” are arbitrary terms that are used in method names (e.g., GetSRCObjectCount(), ConnectDstObject()) and in the reference documentation. The semantics (or the meaning) of the relationship (e.g., parent/child, a material applied to a mesh) usually has nothing to do with sources and destinations.

As you will see below, the semantics of the relationship are almost always meaningful if you make the following “translations”:

Connections can involve FBX objects, FBX properties, or both.

There are four types of connections:

Translate “source to destination” as “member of container”.

Any object or a property can have, at the same time:

Some relationships between FBX objects are implemented by connections, but the use of connections is not explicit. For example:

Many important and complex relationships among many FBX objects are explicitly implemented by connections. For example:

Connections are not managed as objects of one particular class. Connections are managed by methods of class KFbxObject and class KFbxProperty.

KFbxObject has methods that manage the relationship between:

These methods include ConnectSrcObject, GetSourceObjectCount, Disconnect, etc.

KFbxProperty has methods that manage the relationship between:

Both classes also have methods to search for and retrieve objects and properties according to criteria that can be quite complex. See class KFbxCriteria, which is used to specify search criteria.