Jump to content
  • Advertisement
Sign in to follow this  
VirusFree

DeferredContext and Interfaces(Dynamic Linkage) Problems [DX BUG?]

This topic is 2387 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have stumbled on a problem while trying to use shader interface (dynamic linkage) with a deferred context.

From all the tests i did , i can only conclude that this is a DirectX 11 (or graphic card driver ?) bug when trying to replay a CommandList in which you have used classinstance and interface variables. It seems only the first class you set on an interface will be used throughout the execution of the list.

I tried it with both SlimDX and SharpDX and got the same behavior. I also examined the call sequence using PIX in which i can see that the interfaces are set to the correct classes during recording , but that makes little difference when it comes to ExecuteCommandList.

I attached the slimdx test project i did if anyone want to give it a try.
It's based on MiniTri11 , and draws 2 extra triangles using deferredcontext and sets differect classes for the interface slot.
It SHOULD draw a red , a blue and a gray triangle ... but both triangles end up red.
( try switching the order of 'iface.ClassInstance = b1;' and b2 and see that then they both end up blue.. )

If anyone has a solution for this it would be highly appreciated smile.png

Share this post


Link to post
Share on other sites
Advertisement
I wouldn't be surprised if there were a driver bug, since dynamic linkage doesn't get a lot of usage. You can find out for sure by running with the REF device, and seeing if that produces the correct behavior.

Share this post


Link to post
Share on other sites

I wouldn't be surprised if there were a driver bug, since dynamic linkage doesn't get a lot of usage. You can find out for sure by running with the REF device, and seeing if that produces the correct behavior.


Thanks !! that was a great idea !! .. and the result is that with using a REF device i get the expected behavior ! Which means that this is a DRIVER BUG!

So if anyone has the same problem and stumbles on this thread , check your drivers tongue.png

here are my specs (which are buggy) :
Driver : NVIDIA
Driver Version: 285.62 WHQL
Driver Release Date: 2011.10.24

Share this post


Link to post
Share on other sites
Yeah, driver bugs are unfortunately not that uncommon. Sometimes you can work around them by re-arranging your shader code a bit or changing optimization levels.

Share this post


Link to post
Share on other sites
Just a quick update , for whoever may need this information ..

I informed nvidia about this bug and it is finally fixed. The driver version which fixes this is 301.42 Edited by VirusFree

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!