Jump to content

  • Log In with Google      Sign In   
  • Create Account


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


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
4 replies to this topic

#1 VirusFree   Members   -  Reputation: 102

Like
0Likes
Like

Posted 11 February 2012 - 09:27 AM

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 Posted Image

Attached Files



Sponsor:

#2 MJP   Moderators   -  Reputation: 10943

Like
1Likes
Like

Posted 11 February 2012 - 02:32 PM

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.

#3 VirusFree   Members   -  Reputation: 102

Like
0Likes
Like

Posted 11 February 2012 - 04:03 PM

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 Posted Image

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

#4 MJP   Moderators   -  Reputation: 10943

Like
0Likes
Like

Posted 11 February 2012 - 04:15 PM

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.

#5 VirusFree   Members   -  Reputation: 102

Like
0Likes
Like

Posted 03 June 2012 - 05:41 AM

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, 03 June 2012 - 05:44 AM.





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS