Well, I’m finally back looking at shadows again, I got seriously distracted sorting out hardware skinning, because it turns out that there are several things that can throw it off kilter, like the fact that the GeForce4 does not support the UBTYE4 vertex element type (used for matrix indices), which is a bit naff if you ask me. Even my little Radeon Mobility supports that. I toyed with the idea of trying to deal with it, and tried a few options but they were all very hacky, or required much more vertex buffer memory than I was happy with, so in the end I decided not to support hardware skinning on cards which can’t handle UBYTE4 but can handle vertex programs, meaning that the prerequisite for hardware skinning is vertex program and UBYTE4 support. Other cards just fall back on software skinning.
The other reason I’m behind is that I had to travel for work last week, meaning getting up at ungodly times and wasting lots of time in airports and the like so I essentially lost 3 evenings. Damn.
Anyway, I have debug shadow volumes rendering now which is a start. I seem to have jaggy edges where I shouldn’t have, not sure if this is because of the edge detection or the silhouette determination. I do seem to have edge detection issues with some meshes, which I’ll have to sort out. No rest for the wicked.