The FBX format, which is supported by virtually every 3D engine, is a proprietary format for 3D models developed by Autodesk.
It supports:
Many other types of information are also supported, but they have little or no use for a game engine.
Two ways are viable to integrate FBX files’ support into an engine:
The first way is straight-forward: just download the SDK and follow the documentation. Beware that the FBX SDK is not so simple to use as one would think.
What I’ll cover in this article is the structure of a FBX file. The understanding of it allows one to write a custom, lightweight parser. For an example of a custom FBX parser you can look up Blender’s FBX importer/exporter plugin.
However, being the format proprietary, a public specification of the format is not available. Still, the FBX SDK contains some headers that partially reveal the layout of the format.
The format can be either in ASCII (text file, readable by humans) or in binary form.
From the first representation is therefore easier to deduce what the structure of the format is, and where is the information (geometry, materials, etc…) that we need.
To begin with, I’ll show how to get the basic geometry information from a FBX ASCII file. If you need help with the actual implementation (which is not covered here), don’t hesitate to ask me and I’ll do my best to help you with pseudocode or even C.
This (http://www.ics.uci.edu/~djp3/classes/2014_03_ICS163/tasks/arMarker/Unity/arMarker/Assets/CactusPack/Meshes/Sprites/Rock_Medium_SPR.fbx) is an example FBX file.