different results from VS debugger with debug device and normal device

Started by
3 comments, last by MoeTM 7 years, 8 months ago

Hi,

i have a serious problem with my engine, but i dont know where to locate the problem. The actual problem is that when I create a dx11 device context normally, my font rendering is messed up an looks ugly (see attached pictures) but when I run the vs graphic debugger with my engine, the engine is unnormal slow (in the past is was not so slow while debugging, now it's times 100 slower) but shows correct results (see attached pictures). So now i am a bit lost to find the reason for this behaviour, since the debug results look correct?! Does someone have hint where to look for this problem?

And i should mention that, the graphics debugger does not output any warnings or errors, everything runs just fine, like the other effects in the engine.

thx Moritz

worse.jpg

good.jpg

Advertisement

although its very rare, VS is known to occasionally not work the same in debug as release mode. i first got bit by this some time back in the early to mid '90's. as a result i now develop exclusively in release mode only. i hear of someone with this issue about once every 5 years or so. so like i said, its pretty rare. if you can find no other explanation, then this might be the cause. but odds are its your code - not debug mode messing up again.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

although its very rare, VS is known to occasionally not work the same in debug as release mode. i first got bit by this some time back in the early to mid '90's. as a result i now develop exclusively in release mode only. i hear of someone with this issue about once every 5 years or so. so like i said, its pretty rare. if you can find no other explanation, then this might be the cause. but odds are its your code - not debug mode messing up again.

yes I think that the debugger that a bit more security layers than the release/normal mode. The thing is i change some thinks around the font rendering e.g. texture loading, the graphic context generation etc. but the rendering itself, is unchanged and worked some time ago in release mode as well. So i think i might have corruped some memory or i have some state corruption, but I dont know how to find out where :( I already have simplyfied my code a lot but the problem remains. Are there debug features from dx which are normally not activated, like an security mode or something?

Also you can see strong arifacts, which are only in y direction, this looks really strange to me?!

That looks like anti-aliasing is disabled to me. That'd make sense, since the graphics debugger probably disables AA in order to be able to read contents more easily.

Actually just realized your problem is running without the debugger, so maybe it's not that...

Have you tried using a different GPU? Maybe WARP for example?

Have you tried using a different GPU? Maybe WARP for example?

Okey i tried on my onboard intel chip and it works :D, now the question is what causes it on the nvidia card not to work :D Also my shaders are all with these flags compiled: D3DCOMPILE_IEEE_STRICTNESS | D3DCOMPILE_ENABLE_STRICTNESS | D3DCOMPILE_WARNINGS_ARE_ERRORS | D3DCOMPILE_DEBUG;

I made some tests and i think this behaviour is somehow caused by the ddx and ddy and fwidth functions, could that be possible?

Okay i solve the problem by myself, somehow the ddx and ddy used internally (i guess) the ddx_coarse and ddy_coarse, but i use ddx_fine and ddy_fine, it works fine :D. Can i somehow force the shader compilation to pick ddx_fine and ddy_fine?

This topic is closed to new replies.

Advertisement