https://bugs.winehq.org/show_bug.cgi?id=40965
Bug ID: 40965 Summary: Necropolis has messed up graphics when ran in DirectX 9 mode Product: Wine Version: 1.9.14 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: fjfrackiewicz@gmail.com Distribution: ---
Created attachment 55114 --> https://bugs.winehq.org/attachment.cgi?id=55114 Terminal output wine-1.9.14-112-gfec0b69
I have made a clean 32-bit Windows 7 prefix with d3d11 disabled and the xinput1_3.dll installed as native to work around this bug: https://bugs.winehq.org/show_bug.cgi?id=40953
After loading, the game goes to the main menu and the graphics are completely off. I have tried installing native DirectX 9 via winetricks to see if that would help with the graphical issues but when I try to start the game I receive the following terminal output:
wine Necropolis.exe err:module:import_dll Library DNSAPI.dll (which is needed by L"C:\GOG Games\Necropolis\Necropolis.exe") not found err:module:LdrInitializeThunk Main exe initialization for L"C:\GOG Games\Necropolis\Necropolis.exe" failed, status c0000135
The attached terminal output is from before I installed DX9 via winetricks.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #1 from fjfrackiewicz@gmail.com --- Created attachment 55115 --> https://bugs.winehq.org/attachment.cgi?id=55115 Screenshot of the game after it loads
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #2 from fjfrackiewicz@gmail.com --- Created attachment 55293 --> https://bugs.winehq.org/attachment.cgi?id=55293 Terminal output Wine 1.9.16
The graphics are still messed up in Wine 1.9.16 but now this gets spammed in the terminal:
fixme:d3d_shader:shader_glsl_declare_generic_vertex_attribute Unhandled sysval semantic 0x1.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #3 from fjfrackiewicz@gmail.com --- Created attachment 55881 --> https://bugs.winehq.org/attachment.cgi?id=55881 Terminal output Wine 1.9.21
Still an issue in Wine 1.9.21. Terminal output attached.
https://bugs.winehq.org/show_bug.cgi?id=40965
winetest@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetest@luukku.com
--- Comment #4 from winetest@luukku.com --- Could you also override d43compiler via winetricks or winecfg? Maybe it's shader issue...
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #5 from fjfrackiewicz@gmail.com --- (In reply to winetest from comment #4)
Could you also override d43compiler via winetricks or winecfg? Maybe it's shader issue...
Overriding d3dcompiler_43 via winetricks made no difference.
https://bugs.winehq.org/show_bug.cgi?id=40965
Adrien Fernandes adrien_fernandes2@hotmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |adrien_fernandes2@hotmail.c | |om
--- Comment #6 from Adrien Fernandes adrien_fernandes2@hotmail.com --- Created attachment 55925 --> https://bugs.winehq.org/attachment.cgi?id=55925 Screenshot of the problem
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #7 from fjfrackiewicz@gmail.com --- With the recent implementation of additional WINED3D formats, I decided to analyze the terminal output I posted and the following lines
fixme:d3d:debug_d3dformat Unrecognized 0x36314644 (as fourcc: DF16) WINED3DFORMAT! fixme:d3d:wined3d_get_format Can't find format unrecognized (0x36314644) in the format lookup table fixme:d3d:debug_d3dformat Unrecognized 0x434f5441 (as fourcc: ATOC) WINED3DFORMAT! fixme:d3d:wined3d_get_format Can't find format unrecognized (0x434f5441) in the format lookup table
seemed rather interesting as they point to two FourCC formats, ATOC and DF16, that are not implemented (AFAIK).
See here:
http://source.winehq.org/git/wine.git/blob/d7a23cf2be56f27d6bf4736f8b33c9d50...
Would the lack of those two formats cause the issue with the messed up graphics?
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #8 from Henri Verbeet hverbeet@gmail.com --- (In reply to fjfrackiewicz from comment #7)
Would the lack of those two formats cause the issue with the messed up graphics?
It's not impossible, but usually those are optional formats.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #9 from fjfrackiewicz@gmail.com --- (In reply to Henri Verbeet from comment #8)
(In reply to fjfrackiewicz from comment #7)
Would the lack of those two formats cause the issue with the messed up graphics?
It's not impossible, but usually those are optional formats.
I see.
So the issue in the screenshots goes beyond just missing optional formats, then? Asking more out of curiosity than anything else :)
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #10 from winetest@luukku.com ---
Would the lack of those two formats cause the issue with the messed up graphics?
If you are adventures enough you might want to look at bug 23807 and it's patch if you find any application that gets fixed with the patch would be good.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #11 from Henri Verbeet hverbeet@gmail.com --- (In reply to fjfrackiewicz from comment #9)
So the issue in the screenshots goes beyond just missing optional formats, then? Asking more out of curiosity than anything else :)
It's hard to tell what the issue is. As for those formats, DF16 is used for depth texturing and ATOC is related to multisampling. If you're curious, there's some documentation about those formats on the websites of the various GPU vendors, although it's not always obvious to find. The most complete overview for the various formats is probably http://aras-p.info/texts/D3D9GPUHacks.html
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #12 from fjfrackiewicz@gmail.com --- Created attachment 56228 --> https://bugs.winehq.org/attachment.cgi?id=56228 WINEDEBUG=+d3d9 in wine-1.9.23-141-g1e78138
Attaching a log generated using WINEDEBUG=+d3d9 in case it helps to diagnose the problem.
It's over 260 MB uncompressed.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #13 from fjfrackiewicz@gmail.com --- Created attachment 56229 --> https://bugs.winehq.org/attachment.cgi?id=56229 WINEDEBUG=+d3d in wine-1.9.23-141-g1e78138
Since I am not sure what is going on with this bug and attempting to implement the unhandled fourcc formats is a bit beyond me, I am also attaching a log generated using WINEDEBUG=+d3d in case it helps to diagnose the problem.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #14 from fjfrackiewicz@gmail.com --- Created attachment 57055 --> https://bugs.winehq.org/attachment.cgi?id=57055 Wine 2.0 terminal output
The graphics are still very messed up in Wine 2.0.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #15 from Adrien Fernandes adrien_fernandes2@hotmail.com --- Yep.
I tried a clean 32 bits PREFIX set as Windows XP, disabling DX11 through Wine, the game has the graphical issue we showed on screenshots
I tried a celan 64 bits PREFIX with DX11 set as Windows 7, the game has exactly the same grapical issue (before 2.0, the game never started with DX11 IIRC).
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #16 from fjfrackiewicz@gmail.com --- The graphics are looking slightly better now in Wine 2.2-159-g0dc677c05f but now in addition to the messed up graphics the game experiences some sort of weird drawing or rendering issue where moving characters don't have all of their movements rendered. What I mean is that a player moves their character forward and the game renders that movement. In Wine, there are moments where the screen is not updated and so you have a moment where a moving character is rendered as remaining still and then the game updates the graphics and the character is shown as moving again.
Also the game keeps spamming the lines below (I filed another bug about those...)
fixme:d3d:surface_load_texture Unimplemented copy from WINED3D_LOCATION_TEXTURE_RGB for depth/stencil buffers. err:d3d:wined3d_texture_load Failed to load location (srgb 0x1).
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #17 from fjfrackiewicz@gmail.com --- Created attachment 57412 --> https://bugs.winehq.org/attachment.cgi?id=57412 Terminal output Wine-2.2-183-gadedebf47a
Now that bug 41907 has been fixed, whenever I play Necropolis in DirectX 9 mode, I get a lot of messages that look like this:
fixme:d3d:wined3d_debug_callback 0x1259a298: "Program undefined behavior warning: Sampler object 10 has depth compare enabled. It is being used with depth texture 82, by a program that samples it with a regular sampler. This is undefined beahvior.".
Terminal output from a 10 minute play session attached.
The graphics are still messed up looking.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #18 from fjfrackiewicz@gmail.com --- Created attachment 57665 --> https://bugs.winehq.org/attachment.cgi?id=57665 Terminal output wine-2.4-123-gec8485ec10
This is still an issue in Wine-2.4-123-gec8485ec10.
https://bugs.winehq.org/show_bug.cgi?id=40965
--- Comment #19 from fjfrackiewicz@gmail.com --- Created attachment 58016 --> https://bugs.winehq.org/attachment.cgi?id=58016 Terminal output Wine-2.6-252-g89ef7b59f5 with CSMT enabled
Still an issue in Wine-2.6-252-g89ef7b59f5. I also tried the game with CSMT on and it made no difference whatsoever as far as the graphics were concerned.
https://bugs.winehq.org/show_bug.cgi?id=40965
joaopa jeremielapuree@yahoo.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jeremielapuree@yahoo.fr
--- Comment #20 from joaopa jeremielapuree@yahoo.fr --- Is still a bug in current wine(3.20)?