FBX SDK Programmer's Guide > Welcome to the FBX SDK > What's new/What's changed >

# FBX SDK 2013

The following topic presents the changes made in the 2013 release of the FBX SDK. Consult the readme.txt for additional information, including fixed and known issues.

Refactored API

The classes in the FBX SDK have all been renamed using the "Fbx" prefix, instead of "KFbx" or "K" or the lower-case "fbx". All structures have also been renamed with the same prefix, including global functions and enumerations. For example:

- KTime and KString have been renamed respectively to FbxTime and FbxString.
- fbxDouble3 has been renamed to FbxDouble3.
- The KFbxSdkManager has been renamed to simply FbxManager.

By default, the fbxsdk_compatibility.h header file will be included when including fbxsdk.h. This file defines the majority of the old class names to help old applications transition to FBX SDK 2013. However, if you want to exclusively use the new API, you can define FBXSDK_NEW_API in your project. Doing so will exclude the fbxsdk_compatibility.h file, which will most likely result in compilation errors for applications which have been written using previous releases of the FBX SDK.

It is highly recommended that you begin by fixing compilation errors before defining FBXSDK_NEW_API in your project. Given that this compatibility file may be removed in future releases, it is also recommended to fully adapt your code to the latest version of the FBX SDK.

We encourage you to read the information found in fbxsdk_compatibility.h which explains various details about upgrading to this version of FBX.

Incremented the Supported File Format

- The current FBX file format version has been incremented to 7.3.

File Handling

- The FbxFile class has been exposed in fbxfile.h.
- The FbxFileUtils class now exposes all static functions related to file handling, such as remove, rename, etc.
- The FbxPathUtils class now exposes all static functions related to file path handling, such as IsRelative, Clean, etc.
- Many FBX SDK functions which required file paths as inputs have been updated to support UTF-8. The parameter names were updated to reflect this change.

Miscellaneous Changes

- Removed the KFbxMemoryAllocator class. Instead, use handler setter functions such as FbxSetMallocHandler located in fbxalloc.h
- Removed all KFCurveFilter classes. Please use FbxAnimCurveFilter instead.
- Completely re-designed how Character Poses are stored in FBX.
- The FbxLight class has been augmented to support area lights and barn doors.
- The FbxGeometryBase class has been augmented to support render options such as PrimaryVisibility, CastShadow and ReceiveShadow.
- It is now possible to retrieve the "long" version string of the FBX SDK via the function FbxManager::GetVersion(true). This will allow developers to get the version string of this library along with the name and the revision number.
- Made multiple functions UTF-8 compatible.
- The FBX SDK now uses secure versions of CRT calls on the Windows platform. It is now no longer necessary to disable these warnings when including the FBX SDK headers.
- Changed how objects are stored in the manager to increase performance and reduce memory.