I was discussing best practices with one of our modelers today and we were going over the differences, pros and cons of .fbx files versus .obj and it got me searching to see if I could find a comprehensive list of all of the 3D file formats and their characteristics.
FBX for example has the pro of keeping hiearchy intact but the downside is that it converts everything into tri's
OBJ on the otherhand keeps the model as quads but doesn't preserve the hiearchy.
I imagine there's a bunch more attributes specific to the above formats and to all of the other formats and it'd be awesome to have them all in one place when determining best practices on a particular project with particular demands and requirements.
Replies
FBX will generally do everything you need, but it's a mess of a file format. Different programs support different versions, and the versions can change quite dramatically from year to year. It's a closed format that Autodesk keep arbitrarily fucking with.
But don't use OBJ unless you're transferring raw geometry. The file format spec for OBJ only supports vertex positions, 1 UV map and vertex normals. Some companies have expanded it to support more than that, and other companies have gone along with those specs... but really it's not that useful.
FBX technically supports multiple UV channels, vertex normals, tangents and binormals, materials, hierarchies, skeletons, morphs, animation... a whole host of stuff. Whether you can use them or not depends on the software you use and it's support for the FBX format.
Think this has been one of the many things on the maya suggestions board.
I can't remember what Max has, but in Maya when you export as a FBX, there's an option in the 'Geometry' checkbox to Triangulate when you export. I'm pretty sure it's on by default.
I added a little bit of info here, but it's only for Max and that's as far as I got.
http://wiki.polycount.net/VertexNormal#Exporting_Edited_Normals
Collada looked like it was going to be good at one point, but got bogged down in endless committee hell. At least with FBX you can export an ASCII version, to trouble-shoot with.