I’ve finally had time to get back to the XSI exporter over the last few days, and it’s shaping up nicely. I refactored it all today since now I’ve learned a lot about how XSI ‘thinks’ I could see much better ways to structure the code so I could add the features I wanted.
The current version now exports meshes fully, dealing with multiple object / tree selections, automatically index-organises the vertex data for efficiency (ie grouping vertex data by triangle usage), merges XSI mesh objects into single SubMesh instances where the material is the same (you can turn this off if you want your sub-objects to remain separate for whatever reason, but it allows you to keep modelling using separate objects but have a more efficient runtime mesh if you use it), and I also now deal with polygon clusters, which is XSI’s way of allowing you to change materials in the middle of a mesh. Overall I’m very pleased with this evening’s work, and will be moving on to LOD generation tomorrow, followed by diving into the animation side.
I also have to find time to dig into more patches, which are mounting up. We want to do a 1.0.1 release soon since there are lots of good fixes already in CVS, and there will be more once we go through the patches. Target is the end of the (long) weekend - maybe I’ll even do an XSI exporter release then too, if it’s ready.