“Holy Spandex Batman, it’s suddenly February! What nefarious villain stole January away from under us? And what insane genius made this month several days shorter than the others?” “It’s clearly a conspiracy, Robin. Now, you draw the enemy’s fire with your conspicuous, brightly coloured outfit while I sneak about in the shadows for a while.” Yes, time flies when you’re havi-, well in my case working my arse off. In the last few days I’ve been tackling a few random things.
Some of you may have noticed I’ve committed a facial animation demo to Dagon now. The demo shows the prescripted animation sequence I’ve posted a movie of before on this blog, and also allows you to play with blending the various poses in realtime, to show how it’s done. Now, I’m clearing some patches, then I plan to move on to some of the remaining Dagon features. Because we’re short-handed now, some of the less important features may get pushed out to Eihort (1.
Good news, I’ve had permission from Avid / Softimage to use content from the XSI tutorials, so I’ll be able to distribute the facial animation demo with Dagon. This is great, since I’m truly rubbish at modelling anyway, and my attempt would have no doubt resulted in a supremely disfigured face contorting in some freakish way, which rather than suggesting speech, would have hinted at some sort of high-voltage genital torture.
Well, I managed to hit my self-imposed deadline - the XSI pose / facial animation exporter is working! It works beautifully, and here’s a small video to show it off. Yes, I know his smiling is a little extreme at the end, that’s how it was in XSI. They were doing that in a rather exaggerated fashion to show how you would combine ‘emotion’ poses with lip sync poses, and that’s exactly how OGRE is playing it back.
OK, here’s something I like a lot about VC8. It’s a very small change, but it makes a lot of difference to me. The default behaviour of the ‘Stop Debugging’ button is now to detach from the external process rather than terminating it. That might not sound like a big deal, but you’ve no idea how frustrating it was in previous versions, to be debugging a plugin to a 3rd-party application, e.
Based on my discoveries & decisions last weekend about how to go about including pose animation support in XSI, I finished ripping out the old animation detection code in the XSI exporter and replacing it with the new, entirely mixer-based version. I also took the opportunity to ruthlessly excise a whole bunch of code which used to export skeletal animation directly by reading the animation fcurves on the various deformers, in favour of the alternative IK sampling routine I’d added afterwards.
Today I finally got through the post an author’s agreement from Software 2.0, a magazine I wrote an OGRE article for over a year ago now. I also got copies of the magazines the article was published in (in February 2005), both the French and German versions. It’s kind of weird to see your own words translated into 2 foreign languages; it’s a shame there was no English version of that issue (even though that was the original language of the article, obviously).
I’ve been wrestling with XSI over the weekend trying to figure out how to do the last part of the pose animation support, and I’ve made far less progress than I’d hoped because I have been having problems figuring out how to extract the information I need. XSI’s API is actually quite pleasant to use, and I generally mess about in the embedded script to feel my way to the data I need, then write it properly in C++ for which the interface is anagolous, which is nice.
Did anyone else slap their forehead when they saw the stats on Gamasutra for the top selling games in the US in 2005? Here they are for those who missed them: Madden NFL 06 on PS2, PokÃ©mon Emerald on GBA, Gran Turismo 4 on PS2, Madden NFL 06 on Xbox, NCAA Football 06 on PS2, Star Wars Battlefront II on PS2, MVP Baseball 2005 on PS2, Star Wars Episode III: Revenge of the Sith on PS2, NBA Live 06 on PS2, and Lego Star Wars on PS2
I’ve been thinking a lot lately about open source and funding arrangements. The vast, vast majority of the top open source projects have funded members at their core. This is true with Linux, Eclipse, Apache, JBoss, MySQL, Qt etc. There are pretty large variations on where this funding comes from; some are simply employed by organisations which favour open source because it helps them sell their own products (IBM), some because their products are used by enough big businesses that will readily pay for support (Red Hat, JBoss) , some because they dual license and can thus pay their core developers directly (MySQL, Qt).