It was pointed out to me in the forum that the UK edition of Linux Format had a review of Ogre in it this month, so I grabbed a copy for posterity yesterday. There have been several reviews of Ogre in European magazines over the last couple of years, but I think this is the first full review in a UK magazine (we got a box-out mention in Game Developer a few months back though 😀) .
It’s good to see they like it - they said it’s unusual for a magazine like theirs to review libraries rather than applications, but in our case they made an exception 😉 They gave us 8 out of 10, their only real gripes being the interface breaking changes between 1.0 and 1.2 (come on guys, we keep interfaces stable throughout major branches, and we give very detailed notes on how to migrate from one major version to another, something many libraries don’t do), and the fact that we echew other game features like physics and sound (for which we’ve given justifications many times before, I won’t bother to repeat them again here, read the Ogre About Page if you don’t already know).
Anyhow, they like Ogre enough to be running a tutorial series from next month. I’ll have to take a peek at that.
I spent this evening chasing a buffer overrun / GPU memory corruption when trying to load a DDS file with a cubic environment map in it which also had embedded custom mipmaps. Sorted it in the end, but anyone who’s done this knows it’s pretty laborious work. Glad I caught it in the end, some of it was my error, some of it was a bug with custom mipmaps that’s been hanging around for a while. I still have to work on custom mipmaps in volume textures (and for some ridiculous reason, for cubemaps the order of surfaces is all mips for one cube face at a time, whilst for volume textures it’s the opposite ie all slices at one mip level at a time - thanks MS), and finish my DXT decompression routines for old hardware running GL that doesn’t support S3TC. Luckily DXT isn’t anywhere near as complex as it sounds, it’s just a bit fiddly, especially when they pack interpolated alpha indexes into 3 bits in DXT4/5, meaning you have to stitch bytes together.
Another book chapter just popped out the review pipe too so I’d better spend some time on that tomorrow 😕