Customizing FBX SDK

You can customize or extend the features of FBX SDK in various ways.

Defining custom properties (user properties)

You can definecustom propertiesfor any object. To learn how, look at sample program UserProperties (seeUserProperties).

To learn how how to get data from custom properties, see functionDisplayUserProperties()in sample program ImportScene.

Defining a custom object type

The FBX SDK object model can be extended with acustom object type. For an example, see how a new class MyKFbxMesh is created from class KFbxMesh in sample program ExportScene03 (seeExportScene03).

Defining a custom type (user data) for layer elements

To create a layer element with a custom type, use class KFbxLayerElementUserData. Like any other layer element, it can be mapped by polygon vertex, by vertex, by polygon, etc.

See functionCreateCubeWithMaterialAndMyKFbxMesh()in sample program ExportScene03 (seeExportScene03). It creates a custom compound based on float and boolean data types, and adds data per vertex.

Supporting additional file formats

FBX imports and exports several file formats, such as FBX, OBJ, DAE, etc.

To support an additional file format, you must implement a reader (class KFbxReader) and writer (class KFbxWriter) for that file format. You must also register a file extension (e.g. .zzy) and file description (e.g. “ZZY file format”) with your new reader and writer. To register the reader and writer, use class KFbxIOPluginRegistry.