Interesting read on Blender's COLLADA efforts

COLLADA Momentum:

TLDR: The case for bringing COLLADA tools in Blender up to a level of serious usability. Closing thought is that if they (“they” being the Blender-COLLADA) can’t get their act together to go beyond basic asset storage/retrieval then it may never happen.

I think this article is important to us in a few ways. A:) It, semi-officially at least, further justifies our decision to use OGRE as the preferred format for jME3 assets and B:) gives an honest examination of the viability of open formats. I’ve put my own long form response of what I’m about to say on my blog, but here is the overal effect: This isn’t so much about saving COLLADA, but about saving free and open 3D formats. Whether or not you like or use the format, its important that our support is made known.

For jME this could be as simple as a “once it can do A, B, and C” we’ll take another look at support.

Just some thoughts…


The problem with a flexible format such as COLLADA is that it places the strain on importers rather on exporters to make the data conversion. If you’re writing an exporter from a modelling tool into COLLADA, you can choose the best way to represent the modelling tool’s data in COLLADA, but when you take that model into the game engine, you have to somehow transform this limited data into your engine format which is very difficult and requires hacks. Also as an engine developer, you have to support every type of data representation that can appear in COLLADA.

With OGRE, there’s a very specific way of representing data and all export scripts must adhere to it, the conversion has to happen at that point and its generally easier since the modelling tool APIs provide more data and conversion routines than you have when converting from COLLADA to the engine.

And finally, there are significantly less modelling tools than there are engines. This means less “conversion” code in general since each modelling tool has just 1 exporter for each format, usually. Reading a simple format like OGRE in the engine is then trivial.