I’ve been fighting all week to get animations correctly exported from XSI; unfortunately I thought I was further along than I was last week, since although my simple tests were exporting great, ‘real world’ models by actual artists were coming out like they’d been through a car crusher.
There were a couple of things that threw me off. Firstly there was the fact that it’s common practice (unknown to me), to build independent bone chains and hook them together by attaching one bone chain to the ‘end effector’ of another. The end effector is the manipulator the artist uses to pull the bone chain around (IK). Unfortunately the effector is a child of the chain root, not the final bone in the chain, so some special-case adjustments are required in this scenario.
The second thing was that the models I had were keyframed on the IK controllers, not on the underlying bones. I’ve been considering adding a ‘sampler’ routine that plays the IK routine and ‘samples’ the bone positions to thus create FK keyframes. The problem with this is knowing what to sample, and how often, and it’s a bt of a blunt instrument - really it would be better for the artist to pick the FK keyframes, and it’s not that hard to set up. I haven’t decided for sure whether I’ll add the sampler option yet - rather than spend a lot of time on that, I could just include in the docs details of what’s required to make a FK animation from an IK one.
I might try to have a stab at a material exporter too. SoftImage have extended our development programme deal for another year, so I have plenty of time to refine the exporter. Here’s a shot: