http://bugs.winehq.org/show_bug.cgi?id=33763
Bug #: 33763 Summary: Sacred 2 : HLSL shader parsing failed error with built-in d3dcompiler_43 Product: Wine Version: 1.6-rc1 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3dx9 AssignedTo: wine-bugs@winehq.org ReportedBy: xvachon@gmail.com CC: wine-bugs@winehq.org Classification: Unclassified
Created attachment 44714 --> http://bugs.winehq.org/attachment.cgi?id=44714 log trace+d3dcompiler
Follow up of http://bugs.winehq.org/show_bug.cgi?id=25366#c9
Running Sacred 2 in a clean prefix without overrides in 1.6-rc1 results in a crash. Using overrides d3dcompiler_43 (poor performance) or d3dx9_36 (better performance) work around the issue. This bug is tagged to d3dcompiler_43 however because of this :
fixme:d3dx:D3DXLoadSurfaceFromMemory Unhandled filter 0x5. err:d3dcompiler:compile_shader HLSL shader parsing failed. wine: Unhandled page fault on read access to 0xca7fa113 at address 0x1134484 (thread 0009), starting debugger...
Attached a log trace+d3dcompiler which hopefully reveals meaningful details to the devs..
http://bugs.winehq.org/show_bug.cgi?id=33763
wine@thschuetz.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wine@thschuetz.de
--- Comment #1 from wine@thschuetz.de --- I had a working sacred 2 installation and all of a sudden it stops working. After the start you can see the engine loading and starting in the terminal and then the game minimizes in the virtual wine desktop and stops doing anything. I tried d3dx9_36 but that didn't help. When I deactivated the virtual wine desktop it worked again! I am using wine 1.7.24. Same bug in a clean prefix/clean install.
http://bugs.winehq.org/show_bug.cgi?id=33763
wine@thschuetz.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|wine@thschuetz.de |
http://bugs.winehq.org/show_bug.cgi?id=33763
Béla Gyebrószki gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW CC| |gyebro69@gmail.com Ever confirmed|0 |1
--- Comment #2 from Béla Gyebrószki gyebro69@gmail.com --- (In reply to wine from comment #1)
I had a working sacred 2 installation and all of a sudden it stops working. After the start you can see the engine loading and starting in the terminal and then the game minimizes in the virtual wine desktop and stops doing anything. I tried d3dx9_36 but that didn't help. When I deactivated the virtual wine desktop it worked again! I am using wine 1.7.24. Same bug in a clean prefix/clean install.
Please open a new bug report for that problem, it has nothing to do with the originally reported bug. Specify as much info as you can about your system (vga card, driver, window manager) and the game version you have installed. And yes, I can confirm this, the game is minimized when started in virtual desktop mode but works in fullscreen.
The originally reported problem is still present in Wine 1.7.24. Native d3dcompiler_43 or d3dx9_36 works around it. Tested with Sacred 2 Ice & Blood 2.65.1 (Gamersgate version), Nvidia binary drivers 331.89
https://bugs.winehq.org/show_bug.cgi?id=33763
--- Comment #3 from Austin English austinenglish@gmail.com --- This is your friendly reminder that there has been no bug activity for over a year. Is this still an issue in current (1.7.51 or newer) wine?
https://bugs.winehq.org/show_bug.cgi?id=33763
fjfrackiewicz@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fjfrackiewicz@gmail.com
--- Comment #4 from fjfrackiewicz@gmail.com --- (In reply to Austin English from comment #3)
This is your friendly reminder that there has been no bug activity for over a year. Is this still an issue in current (1.7.51 or newer) wine?
It looks like the HLSL parsing issue still persists if this bug is anything to go by: https://bugs.winehq.org/show_bug.cgi?id=41167
https://bugs.winehq.org/show_bug.cgi?id=33763
--- Comment #5 from fjfrackiewicz@gmail.com --- Another program that is affected by this is the Windows version of Don't Starve as is shown in bug 39388.
https://bugs.winehq.org/show_bug.cgi?id=33763
Thomas Kowaliczek linuxdonald@posteo.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |linuxdonald@posteo.de
https://bugs.winehq.org/show_bug.cgi?id=33763
winetest@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetest@luukku.com
--- Comment #6 from winetest@luukku.com --- (In reply to fjfrackiewicz from comment #5)
Another program that is affected by this is the Windows version of Don't Starve as is shown in bug 39388.
If you haven't noticed there are several bugs open about that issue. Don't know if they are dupes or different problems.
https://bugs.winehq.org/show_bug.cgi?id=33763
--- Comment #7 from fjfrackiewicz@gmail.com --- (In reply to winetest from comment #6)
(In reply to fjfrackiewicz from comment #5)
Another program that is affected by this is the Windows version of Don't Starve as is shown in bug 39388.
If you haven't noticed there are several bugs open about that issue. Don't know if they are dupes or different problems.
Yes, I have but bug 39388 is set to "NEEDINFO" and I have provided the necessary info (imho). So it's up to whoever maintains Bugzilla to resolve it as a dupe or not...
https://bugs.winehq.org/show_bug.cgi?id=33763
exposight exposight@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |exposight@gmail.com
--- Comment #8 from exposight exposight@gmail.com --- The issue is not reproduced witn Sacred 2 Demo on wine 4.18 - it starts normally and game works. Issue should have been fixed.
https://bugs.winehq.org/show_bug.cgi?id=33763
--- Comment #9 from Matteo Bruni matteo.mystral@gmail.com --- (In reply to exposight from comment #8)
The issue is not reproduced witn Sacred 2 Demo on wine 4.18 - it starts normally and game works. Issue should have been fixed.
The relevant functionality is still not implemented in Wine. Either the demo doesn't reproduce the issue or it comes with native d3dcompiler.
https://bugs.winehq.org/show_bug.cgi?id=33763
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Sacred 2 : HLSL shader |Sacred 2 crashes due to |parsing failed error with |HLSL shader compilation |built-in d3dcompiler_43 |failure Hardware|x86 |x86-64 Product|Wine |vkd3d Version|1.6-rc1 |1.6 Component|d3d-util |hlsl
--- Comment #10 from Gijs Vermeulen gijsvrm@gmail.com --- With vkd3d-git and wine-8.0-169-gaabdb15458a it crashes due to:
0178:fixme:d3dcompiler:D3DCompile2 Ignoring flags 0x1000. 0178:err:d3dcompiler:D3DCompile2 Failed to compile shader, vkd3d result -4. 0178:err:d3dcompiler:D3DCompile2 Shader log: 0178:err:d3dcompiler:D3DCompile2 <anonymous>:78:171: E5000: syntax error, unexpected '[', expecting ')' 0178:err:d3dcompiler:D3DCompile2 wine: Unhandled page fault on read access to 0500004B at address 02534456 (thread 0178), starting debugger...
Changing title and moving to vkd3d.
https://bugs.winehq.org/show_bug.cgi?id=33763
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |berillions@gmail.com
--- Comment #11 from Gijs Vermeulen gijsvrm@gmail.com --- *** Bug 50596 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=33763
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #12 from Zeb Figura z.figura12@gmail.com --- (In reply to Gijs Vermeulen from comment #10)
With vkd3d-git and wine-8.0-169-gaabdb15458a it crashes due to:
0178:fixme:d3dcompiler:D3DCompile2 Ignoring flags 0x1000. 0178:err:d3dcompiler:D3DCompile2 Failed to compile shader, vkd3d result -4. 0178:err:d3dcompiler:D3DCompile2 Shader log: 0178:err:d3dcompiler:D3DCompile2 <anonymous>:78:171: E5000: syntax error, unexpected '[', expecting ')' 0178:err:d3dcompiler:D3DCompile2 wine: Unhandled page fault on read access to 0500004B at address 02534456 (thread 0178), starting debugger...
Changing title and moving to vkd3d.
I'd have to see the shader to be sure, but it looks like it's trying to declare a function with an array argument, which due to an oversight is currently not supported.
https://bugs.winehq.org/show_bug.cgi?id=33763
--- Comment #13 from Gijs Vermeulen gijsvrm@gmail.com --- Created attachment 73955 --> https://bugs.winehq.org/attachment.cgi?id=73955 VKD3D_SHADER_DEBUG=trace VKD3D_DEBUG=trace
https://bugs.winehq.org/show_bug.cgi?id=33763
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Sacred 2 crashes due to |Sacred 2 crashes due to |HLSL shader compilation |HLSL shader compilation |failure |failure (failure to parse | |function with array | |arguments)
--- Comment #14 from Zeb Figura z.figura12@gmail.com --- Yep, there it is:
vkd3d:trace:preproc_lexer_parse pixdata mainVS ( vertexDataXY_UV3 vertexData , uniform float4 scaleValues1 : register ( c7 ) , uniform float4 scaleValues2 : register ( c6 ) , uniform float4 vertexColor [ 2 ] : register ( c8 ) , uniform float4 lightPos [ 2 ] : register ( c10 ) )
https://bugs.winehq.org/show_bug.cgi?id=33763
--- Comment #15 from Nikolay Sivov bunglehead@gmail.com --- (In reply to Zeb Figura from comment #14)
Yep, there it is:
vkd3d:trace:preproc_lexer_parse pixdata mainVS ( vertexDataXY_UV3 vertexData , uniform float4 scaleValues1 : register ( c7 ) , uniform float4 scaleValues2 : register ( c6 ) , uniform float4 vertexColor [ 2 ] : register ( c8 ) , uniform float4 lightPos [ 2 ] : register ( c10 ) )
This was implemented with https://source.winehq.org/git/vkd3d.git/commit/d279d34801bfa852d15a699813c6a.... Needs a retest now.
https://bugs.winehq.org/show_bug.cgi?id=33763
--- Comment #16 from Gijs Vermeulen gijsvrm@gmail.com --- With current wine-git and vkd3d-git, it crashes on:
- SM1 non-float expression - Dereference with non-constant offset of type HLSL_IR_EXPR
both of which are referenced in other bugs and one new thing:
- Function "clip" is not defined.
https://bugs.winehq.org/show_bug.cgi?id=33763
--- Comment #17 from Nikolay Sivov bunglehead@gmail.com --- MR for clip() https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/211.
https://bugs.winehq.org/show_bug.cgi?id=33763
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Fixed by SHA1| |d279d34801bfa852d15a699813c | |6a62227537c5e Resolution|--- |FIXED
--- Comment #18 from Gijs Vermeulen gijsvrm@gmail.com --- Marking this one FIXED.
Split off clip() and HLSL_IR_LOOP as bug 55084 and bug 55083 respectively.
https://bugs.winehq.org/show_bug.cgi?id=33763
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #19 from Nikolay Sivov bunglehead@gmail.com --- Closing bugs fixed in 1.9.