I went to see the osteopath yesterday to see if I could get this darned back sorted out. It appears I have some ligament / muscle damage which is why the usual bone crunching work hasn’t sorted it out. In fact, thanks to the manipulation this morning was the kind of pain I’d have preferred not to have experienced, thanks very much. So, the latest is: more painkillers, a new 15-minute time limit on any kind of desk-related sitting (bloody impractical that is), a back support that feels like being in a 19th century corset (no, I haven’t tried one on, I’m simply using my imagination), and strict instructions to get a lift to work instead of walking.
Gah, this is not good. My back does not seem to be getting any better, on Friday at least it got a lot, lot worse. Today is a little better, but even with the painkillers it’s causing me major problems - doing anything at all is difficult. I don’t think I’ve ever been this frustrated; being an on-the-go sort of person all the time, I hate being incapacitated like this.
Well, we got 0.15.0 out the door on Sunday as planned, although I’ll admit it was a close call again. It’s great how little things pop up at the last minute - I built the release 6 times in the end, and waiting for the (frequently stalling) uploads was a nightmare. So, we’re on the road to 1.0.0 now - you can see what we plan to do by clicking on the ‘Roadmap’ link on the Ogre home page.
I heard a bit of rare good news on the patent front today - all 4 of the German parties have apparantly condemned software patents, which is promising considering the Germans have the largest number of politicians in the EU. Another anti-patent website was launched this week too, www.nosoftwarepatents.com that I like because it aims to explain the argument in clear, fairly unemotional business terms, and succeeds I think. I’m almost afraid to hope that the EU will ignore all the money-waving charlatans, but maybe, just maybe the suits are starting to listen to the population for once…
I’ve used FlashGet for a while as my download manager, and because it’s not the kind of tool I’d consider being worth spending any money on, I’ve used the Adware version. Now, FlashGet is a great tool, but the ads they choose to serve, are well, a disgrace. Full of pop-ups that insist on opening an IE window (even though my default browser is Firefox), which I just can’t stand for.
I’ve been slowly but surely clearing things from my TODO list. I’ve enhanced the support for custom parameters on Renderable and made the mapping of those parameters to shaders scriptable and easier to use. The result is that you don’t have to define so many material variations, you can use a single one which delegates the setting of shader parameters to the Renderable. You can also override this in custom Renderables if you like to do even more sophisticated things.
Ah, finally got it working. The diagnosis was complicated by the fact that I thought GL wasn’t working, but in fact it was - it’s just the issue with the slightly faulty projection made it look like it wasn’t. The D3D9 problem was that I forgot I had to compensate for the fact that Ogre uses right-handed coordinates, instead of the left-handed ones used by D3D normally. Once I knew it was just D3D this didn’t take too long to work out!
I don’t often comment on news and current events in my blog - I think there’s enough of that elsewhere on the web - but in this case I make an exception, simply because of the extreme reaction it has evoked within me. I’m talking about the recent verdict in the Kodak vs Sun case, of course, in which Kodak has somehow managed to convince a court that they own the ‘invention’ of letting software components communicate in order to ask each other for ‘help’.
Well, I have my reflection enhancements done, so reflections using dynamic planes attached to SceneNodes works nicely now. Oblique depth projection is SO nearly working - right now it’s clipping perfectly in all cases except where the camera pitches relative to the plane; I’m not sure why that is right now. I’ve been over my calculations multiple times and they all look fine, but clearly I’ve made a mistake somewhere.
I know people are generally interested in what I’m working on, so here’s an update. I recently completed an upgrade to the OGRE .mesh file format (the binary version, the XML has not changed). This allows more flexible vertex declarations and buffer layouts, as supported internally by the engine for a while, but the binary mesh format was more simplistic previously. It also allows you to precalculate edge lists (for stencil shadows) and tangent buffers (for normal maps), which saves you a bit of load time.