Well, xmas is over and I actually had a little bit of a break from OGRE for a change. Nevertheless, I did sneak back to the keyboard at least a few times over the last few days, and the result of that has been that I got the nvparse code working, which is good news for GL users owning GF3’s and GF4’s, and I also added an implementation of DirectX9 HLSL, really just for the hell of it. Cg does everything HLSL can do, for more than one platform, but I wanted to make it clear that Cg isn’t the only high-level shader language we support.
I’ve also finished the dot3bump demo, which is now quite configurable and also supports specular lighting (mmm, shiny) in one of the tehniques, although this does require fragment program support (nvparse works too, even though it’s not strictly a program, it can do most of what ps_1_1 can do).
I’m moving on to writing a more visually impressive demo, for which I plan to use a lot more features. I discovered that I really needed support for volume textures (I have a need for 3D perlin noise texture) so I started messing about hacking .dds file support into the DirectX9 renderer. That was pretty easy (GL support will be a bit harder of course since .dds is very much a DirectX format), but I did re-discover something rather disturbing; the need for texture flipping in the Y direction.