http://bugs.winehq.org/show_bug.cgi?id=32040
Bug #: 32040 Summary: The Witcher - Graphical glitches with ARB shader backend Product: Wine Version: 1.5.15 Platform: x86-64 URL: http://www.gog.com/en/gamecard/the_witcher OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3d AssignedTo: wine-bugs@winehq.org ReportedBy: dredgingthelake@gmail.com Classification: Unclassified
Created attachment 42229 --> http://bugs.winehq.org/attachment.cgi?id=42229 The Witcher - Terminal output
The Witcher has graphical glitches when running with the ARB shader backend. It used to work fine in older versions of wine, so I ran a regression test:
7cc4f47afe2dbb112b0a84cb557160872e71c016 is the first bad commit commit 7cc4f47afe2dbb112b0a84cb557160872e71c016 Author: Matteo Bruni mbruni@codeweavers.com Date: Mon Aug 20 22:34:58 2012 +0200
wined3d: Force ARB shader programs reselection on bool/int constant changes.
The ARB shader backend hardcodes some constant-dependent state in the shader itself (e.g. branch taken/not taken). So, we have to make sure to update the selected ARB shader when the application modifies non-float constants.
:040000 040000 2d7d6202bfa34455e324e1f098cbd59f03a0093d 1dc7556802b30bfe2e7fb0918310f03fa8a91d20 M dlls
System info:
NVIDIA GTX275 nvidia-drivers-310.14 wine-1.5.15 (tested current GIT as well)
http://bugs.winehq.org/show_bug.cgi?id=32040
DL dredgingthelake@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression
http://bugs.winehq.org/show_bug.cgi?id=32040
--- Comment #1 from DL dredgingthelake@gmail.com 2012-10-23 03:54:47 CDT --- Created attachment 42230 --> http://bugs.winehq.org/attachment.cgi?id=42230 The Witcher - ARB backend glitches screenshot
http://bugs.winehq.org/show_bug.cgi?id=32040
Henri Verbeet hverbeet@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |7cc4f47afe2dbb112b0a84cb557 | |160872e71c016
--- Comment #2 from Henri Verbeet hverbeet@gmail.com 2012-10-23 04:06:54 CDT --- (In reply to comment #0)
err:winediag:wined3d_dll_init The GLSL shader backend has been disabled. You get to keep all the pieces if it breaks.
I suppose Matteo will want to look at this because the commit in question was supposed to fix something specifically in the ARB shader backend, but in principle this is not a supported configuration.
http://bugs.winehq.org/show_bug.cgi?id=32040
--- Comment #3 from DL dredgingthelake@gmail.com 2012-10-23 09:31:06 CDT --- (In reply to comment #2)
(In reply to comment #0)
err:winediag:wined3d_dll_init The GLSL shader backend has been disabled. You get to keep all the pieces if it breaks.
I suppose Matteo will want to look at this because the commit in question was supposed to fix something specifically in the ARB shader backend, but in principle this is not a supported configuration.
Yes, I understand it is unsupported. Still, it is around 10% faster than the GLSL backend on my system, so it would be nice if it was fixed.
http://bugs.winehq.org/show_bug.cgi?id=32040
--- Comment #4 from DL dredgingthelake@gmail.com 2012-10-27 00:22:23 CDT --- Well I'm not sure if I should be opening more ARB backend bugs so I'm just going to post it here. The ARB backend has another regression, all this time it is more serious and essentially crashes completely with any game at startup:
commit 17e33e9b27ced39a93e61dad20cba9195b2e18e7 Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed Oct 24 21:23:37 2012 +0200
wined3d: Make the shader backend responsible for controlling the fixed function fragment pipe.
http://bugs.winehq.org/show_bug.cgi?id=32040
--- Comment #5 from Henri Verbeet hverbeet@gmail.com 2012-10-27 11:51:55 CDT --- Created attachment 42283 --> http://bugs.winehq.org/attachment.cgi?id=42283 patch
(In reply to comment #4)
Well I'm not sure if I should be opening more ARB backend bugs so I'm just going to post it here. The ARB backend has another regression, all this time it is more serious and essentially crashes completely with any game at startup:
The attached patch should help.
http://bugs.winehq.org/show_bug.cgi?id=32040
--- Comment #6 from DL dredgingthelake@gmail.com 2012-10-27 22:50:26 CDT --- (In reply to comment #5)
Created attachment 42283 [details] patch
(In reply to comment #4)
Well I'm not sure if I should be opening more ARB backend bugs so I'm just going to post it here. The ARB backend has another regression, all this time it is more serious and essentially crashes completely with any game at startup:
The attached patch should help.
Thank you, that fixed the crashing regression.
http://bugs.winehq.org/show_bug.cgi?id=32040
Henri Verbeet hverbeet@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #42283|0 |1 is obsolete| |
--- Comment #7 from Henri Verbeet hverbeet@gmail.com 2012-10-30 08:54:59 CDT --- Created attachment 42328 --> http://bugs.winehq.org/attachment.cgi?id=42328 patch
I had to look at shader_arb_select() because of something else I'm working on, and I came across a potential issue. Does the attached patch make any difference for this bug?
http://bugs.winehq.org/show_bug.cgi?id=32040
Henri Verbeet hverbeet@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #42328|0 |1 is obsolete| |
--- Comment #8 from Henri Verbeet hverbeet@gmail.com 2012-10-30 08:56:35 CDT --- Comment on attachment 42328 --> http://bugs.winehq.org/attachment.cgi?id=42328 patch
Actually ignore that, it won't.
http://bugs.winehq.org/show_bug.cgi?id=32040
Matteo Bruni matteo.mystral@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |matteo.mystral@gmail.com
--- Comment #9 from Matteo Bruni matteo.mystral@gmail.com 2012-11-09 17:00:53 CST --- Commit a7956c4c4f8f2abd673f9e5cbb159419e1d003be (in Wine 1.5.17) should have fixed this. Technically it wasn't actually a regression, it exposed a preexisting bug by triggering some necessary shader recompilations.
BTW, b532284a9ec23cd3663761e3dd83d355754cc2cb fixed another (later) ARB backend regression which broke rendering in The Witcher.
http://bugs.winehq.org/show_bug.cgi?id=32040
--- Comment #10 from DL dredgingthelake@gmail.com 2012-11-10 01:47:10 CST --- Yes, it is fixed in 1.5.17, thank you.
http://bugs.winehq.org/show_bug.cgi?id=32040
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |a7956c4c4f8f2abd673f9e5cbb1 | |59419e1d003be Status|UNCONFIRMED |RESOLVED CC| |00cpxxx@gmail.com Resolution| |FIXED
--- Comment #11 from Bruno Jesus 00cpxxx@gmail.com 2012-11-10 06:06:00 CST --- (In reply to comment #10)
Yes, it is fixed in 1.5.17, thank you.
Fixed.
http://bugs.winehq.org/show_bug.cgi?id=32040
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #12 from Alexandre Julliard julliard@winehq.org 2012-11-23 14:30:01 CST --- Closing bugs fixed in 1 5.18.