VanB,
Quote: "I have to say that the .3DS format looks a little more logical."
Really? My reaction to it from writing my .3ds importer/exporter is that it's the most convoluted file format for anything (except for maybe a flattened object format which is not intended to be parsed outside of object streaming functions) that I've ever seen. The fact that it's not officially documented but reverse-engineered makes it worse.
Also, it doesn't support skinned mesh models, and from what I could tell, nor vertex normals either. No two exporters I tried output the same record types. Most, including Milkshape and trueSpace don't output animation at all. I regret that it becams something of a defacto standard by virtue of its having been around the longest.
Yeah, the DirectX format is not the best fit for raw 3D geometry data, and can be pretty innefficient, especially the ASCII form. The thing that I really like about it is how it can be a generic means of formating structured data, and by virtue of the template mechanism can be self-documenting (at least to loader software) and extensible.
For this reason I made it the basis for my game engine framework, such that I can stream in or out whole object hierarchies. (However, I just remembered I added some extensions to it to support class inheritence and some alternative readable forms.)
For example, I have a CGameFrame class that can map to the DirectX Frame object. By deriving custom model classes from it I can add new fields for stuff like health, behavior options, and other stuff you might want to associate with game characters. Because of the template mechanism I can design the underlying object mechanism such that the objects can be self-describing and implement a streaming mechanism such that I can implement an object inspector (called a monitor or parameter palette in JTEdit) to view and edit individual field values, as well as polymorphically stream out the object hierarchies.
But, I digress. It's also no wonder JTEdit is so complicated and hard to debug. I don't particularly like Microsoft's template definitions for 3D content, but I do like the basic format language itself.
-John
John Thompson
http://www.jtgame.com/jtedit