Sign in to follow this  
B_old

nvidia + shadowbuffers + d3ddebug = strange?

Recommended Posts

Hello, I'm using shadow buffers on nvidia hardware in my app. When using the d3d debug runtime, I noticed that sometimes the shadow maps generated this way behave odd, that is, they are totally black. When I restart the app, often everything is OK. Actually reseting the device will work, too. I don't get any warnings. I don't really know what this depends on. It never happend with d3d release though, and it certainly has to do with the use of depth stencil textures. Any theories? Thanks.

Share this post


Link to post
Share on other sites
Hopefully someone else can shed more light on this (not tried it myself), but I'm pretty sure this is a known issue.

Its something to do with the hack that NV use to enable the technology via D3D9. The release runtimes dont do validation therefore the invalid params get through to the driver (which automagically recognises them and does its thing), but the debug runtime does validation and says its wrong and fails accordingly...

Provided I'm not getting muddled up then I'm pretty sure you'll just have to grin and bare it!

Jack

Share this post


Link to post
Share on other sites
I've run into this, and attempted to make MS aware of it.

Things to note:

Problem exists if shadow buffer size > backbuffer size (in any axis) and using debug runtimes.
Problem exists randomly, per depth texture, if run via F5 in VStudio.
Problem exists after 4th texture creation (or 4th reset, not sure) if run via double clicking.
Problem does not exist if run via CTRL-F5.

As it only occurs with debug runtimes, it has an equal chance of being a DX debug thing or an nVidia driver thing.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this