As you can see, I’ve given the site a bit of a makeover, simplified the theme somewhat and switched from PostNuke to WordPress; PostNuke hasn’t been my software of choice for some years but I never got around to moving to anything else. I had considered Mambo, which I’ve used for other sites, but I only use this site for blogging now so I thought I’d use something simpler for that purpose.
I’m starting to get slightly back to some sense of normality after a turbulent few weeks. I did a little more work on Kadath, eliminating as much as possible dummy portals which are generated by intersecting or coplanar-but-inverted geometry, e.g. a box in a room which is butted up directly against the wall, and the degenerate tris have not been removed. This causes cells to be created both outside the room (to display the side of the box) and inside the box (to display the wall fragment that overlaps with the box side).
I’ve been back of sorts, posting a bit here and there in the forums and joining IRC sometimes. I hear that the OGRE website was briefly down again this week due to a DNS outage, which I am sorting out longer term prevention for, but please bear with me. The unfortunate situation is that my Grandfather was diagnosed with a terminal illness only last week, and has been fading distressingly fast since then, so OGRE has not been high on my list of priorities.
As those who read the main OGRE website already know, there is now an official Ankh page as the game nears completion. I’m really, really looking forward to seeing how it turns out, it’s looking excellent. I had the pleasure of working with Deck13 (the authors) earlier in the year on a feature they needed for Ankh and I wish them all success - Thorsten, I hope you’re not getting too burned out mate 😀
So, I managed to get a little work done on Kadath today, not as much as I’d have liked (what’s new), but at least it’s some. One thing I did was take a quick look around for a new unit testing framework, since although I’ve been relatively happy with CppUnit, it’s always hung in debug mode, which is fine during regression testing when it all works (since you always run in release anyway), but makes investigating issues when you first set them up - or if, horror of horrors, your regression test fails - a little awkward.
For interest, we broke our monthly web stats record in August: Hits: 8,143,695 Pages: 1,995,725 Visits: 141,969 Unique Visitors: 61,351 Of course the latter is unique IPs and so there may well be more actual individuals than that if they’re behind a corporate firewall. Bonkers!
A lot of people like GL intermediate-mode style code for building custom objects. Unfortunately, it’s very inefficient for large objects or those which are rendered multiple times. OGRE gives you a full render API independent interface to the wonders of hardware vertex and index buffers, and all the super-flexible vertex declarations and shared buffer bindings that allows, but a lot of people find it intimidating. So I’ve decided to write a class for Dagon which allows a user to build a piece of custom geometry which is both efficient and hardware-friendly, whilst at the same time being very simple to define.
Who would be a PC programmer? Sometimes I really envy those console programmers with their fixed hardware setups - although I don’t envy them their paltry memory restrictions of course (even next-gen memory specs are rather chucklesome ;). Today’s issue was that a while back (a long while) I changed the BSPSceneManager to use a fixed set of hardware buffers and 32-bit indexes, to take better advantage of modern cards. It works great, but some people with cards like the GeForce4MX (step outside now please, you’re not welcome here 😉 had issues because their cards didn’t properly support 32-bit indexes.
This past week has been mostly about 2 things - the next maintenance release of OGRE, which you can read ample about on the OGRE Website, and doing a spot of commercial work which I can’t talk in any detail about, hence the lack of updates. All I can say is that I’ve had a bit of fun exploring the Radiance source code, and although stylistically it’s full of things that make me squirm (it’s old-skool C), it’s a useful resource.