Open letter to everyone involved with managing/using COLLADA as proposed open 3d exchange format:

This is a follow-up on the discussion I had with Khronos at Siggraph, especially on getting COLLADA supported better. In some ways things – on Blender side – improve steadily. But I also get disappointed reactions of professional users expecting things to work much better than we can provide still.

From the Blender side I think we’re quite well equipped and supported now. There’s a small but active team of 4 people working on it.

In order to keep momentum I have two suggestions for Khronos or the Collada team:

1) A call among Khronos members to support the OpenCollada(*) project in one way or another. It would be much advised if companies take ‘ownership’ on this project too, getting officially involved. The OpenCollada website is now anonymous with a donation button without any visible projects or people running it. People in our team who submit bug reports to OpenCollada also wait far too long to get responses (> 6 months).

2) The character animation im/export pipeline is still the most difficult and wanted target. I would bring together the stakeholders for this to define a ‘Character’ badge, based on the minimal & feasible specs related to that. That’s on one side the people who work on tools like Maya/Max/XSI/Houdini/C4D/Blender etc and the other side ‘users’ such as Unity3D.

I know the Khronos group itself won’t allocate budgets to software development itself. Maybe the above two suggestions would fit in actions or organizational support Khronos members can provide somehow?

My own 2 cents on COLLADA: the advanced flexibility of the spec is both its strength as its weakness. In practice it means that you can align the definitions in files quite nice to how your own architecture works, forcing other programs to do conversion magic to own internal architecture again on reading that COLLADA file.
Also the way how the conformance tests work now is very elaborate and complex (no companies or end-user tools have been listed to conform yet even!).

I realize that narrowing down the COLLADA spec is not going to happen easily, so I would suggest to reorganize (or refocus) the conformance testing system in a way both users as developers get predictable results quicker. That could be achieved by defining a sub-set for the Baseline badge which only validates;

– Baseline Model Badge: tria/quad models with UV coords and texture links and basic material definitions or references. Result should be efficient but minimal 3d model exchange.
– Baseline Character Badge: Model as previous + deform groups, basic per-group and baked (per frame) motion matrices. Result should be efficient minimal 3d character export to game engines, and for animation film the motion of control-rigs only (assuming the character rigs themselves remain native).

For these badges I would not look at general API conformance, but simply bring together actual COLLADA users to provide the smallest & simplest use cases – using minimal & clear specs – and only validate this subset to confirm the badge.

This level is also what we currently support for FBX now, which is successfully used for the Blender-Unity pipeline now. It’s quite remarkable that we can get this work for this closed format well, and still struggle to achieve anything useful on that level with COLLADA instead.

I have only been involved indirectly with our Blender-COLLADA efforts, but I do know there’s been a whole lot of development time invested in it already in the past 4 years. The fact things still only work in a very basic way is quite disturbing. It shouldn’t be that difficult really. If something as basic like Model/Character I/O can’t be achieved among the main 3D tools in a short term, we might better conclude that COLLADA is not going to work for this ever…

Regards,

-Ton-

(* There’s also PyCollada http://pycollada.github.com/ and efforts in irc #blendercollada going on for a smaller and better maintained version of opencollada)