I spent some time today with XSI, because I had a bug report queued up from earlier this week that needed some attention, and I wanted to build an OGRE exporter for my fresh copy of XSI v5.
Well, the former went well, apart from taking a lot of time to figure out what the issue was. I like XSI’s API, it’s generally very consistent and stable, but it the amount of cross-referencing and re-indexing of data can get very confusing sometimes, especially since the exporter does it’s own set of reorganisations too (to create the best mesh for runtime performance, rather than flexibility like the originating data). Anyway, after figuring out what it was the fix was so simple as to be an anticlimax; 3 hours investigation, 4 lines to fix. Oh well 😀
Getting a v5 exporter built caused me some unexpected problems though. The problem is that Softimage also use STLport to build XSI, and whilst in version 4.2 they were using VC6 (I can tell by the DLLs), in v5 they’ve upgraded to VC7.1. All well and good, but they’ve also carried on using STLport, which I know from experience isn’t necessary any more, but hey. The problem that results from this is that they’ve built the STLport DLL they distribute with XSI v5 with VC7.1, and the DLL name for STLport doesn’t differentiate between VC7.0 and VC7.1. So, since I’m using VC7.0, I get MSVC runtime library conflicts. I can replace their STLport DLL with mine and it seems to work, but this is not the kind of solution I want to use (potentially breaking XSI is not a good thing).
So, right now I wish I had already upgraded to VC7.1. I didn’t because I felt ripped off since VC7.1 wasn’t really much different to VC7.0 except for the STL being fixed and a few compiler fixes; paying a couple of hundred quid for that less than a year after getting 7.0 seemed like daylight robbery. I plan to buy VC8 as soon as it’s widely available (should be a couple of weeks or so) because there are a few useful things in that, and besides it’s been a bit more time now, so I feel like I’m getting screwed less. I should be able to build the XSI v5 exporter with that without any conflicts. If I get time I’ll try it with the Beta I’ve had for a while but haven’t used much due to time constraints.