When I run vanilla Doom 3 on my GeForce GTX 560 Ti (running at factory specs), everything is fine, but when I build and run your fork, I have no shadows. Nothing else in the renderer seems to have changed, and I still have dynamic lights, there are just no shadows cast.
I've verified this by building and running this fork on a laptop with an ATI Mobility Radeon HD 5470, and everything worked there. I then copied that installation over to the desktop with the 560 Ti, and suddenly I had no shadows.
Both machines are running 64 bit Windows 7, and I compiled everything on VS2010.
I can get shadows to work by setting r_useTwoSidedStencil to 0 and running vid_restart, so it looks like the NVidia two sided stencil code might have issues?
Hmm... I never got too much of a chance to test that code path as I only have an ATI card.
I just added the code based on what I read in the extension spec. I was planning to test it on NVIDIA but I never got around to it...
Looks like I will have to hunt down a NVIDIA PC to test this on.
Also I note that AMD have added support for GL_EXT_depth_bounds_test in Catalyst 12.2 which is something I will need to test.
Also when you say shadows do not work, do you mean no shadows at all, or inverted shadows/glitches? What happens if you put yourself behind a shadow caster (ie inside the shadow volume) or in front of it?
Not sure if you have time but if you could test a few things for me it would be handy:
Does it work if you roll back to this commit: 141597d
What happens when you toggle r_useDepthClamp, I never got a chance to test that either on NVIDIA.
No shadows at all. No glitches or anything, and lighting calculations seem to be normal, but nothing is in shadow.
Here are some screenshots: http://imgur.com/a/OjoQx#0
Two of those are from inside the shadow volume of the ship, and it doesn't seem to make any difference.
Toggling r_useDepthClamp also makes no difference visually.
I'll try the old revision and see what happens.
With the old revision, I'm seeing glitches. Not really sure if it matters whether I'm in the shadow volume, but it does matter where I'm standing.
Here are some screenshots: http://imgur.com/a/vxFU2#0
Setting r_useTwoSidedStencil to 0 gets everything working, and you'll see one shot of the guy on the bench where I did that for comparison.