http://bugs.winehq.org/show_bug.cgi?id=35993
Bug ID: 35993 Summary: Graphical Glitches in Agarest Generations of War Product: Wine Version: 1.7.16 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3d Assignee: wine-bugs@winehq.org Reporter: hibbsncc1701@yahoo.com
In some menus, (anything but the inital main menu, save / load game menus, and world map), there are rapidly changing and rainbow colored polygons being made all over the game's window. They seem to change based on what is actually being rendered by the game and the user can influcnce them to a degree by changing the current selected menu item.
In addition there seems to be missing textures for some menu entries, although the menu entries can still be selected and used.
This happens in both wine-1.7.13 and wine-1.7.16.
Some hardware info: OS: Fedora 20 x86_64 GPU: Nvidia Geforce 9800 GTX+ Drivers: akmod-nvidia-331.49-2.fc20.x86_64 (From rpmfusion)
I did have to install some directshow filters (K-Lite Codec Pack 10.4.0) as the game attempts to play several mpeg 1 videos before the main menu, and will crash with an error message if it is unable to play them. Even with gstreamer installed properly it crashes, so the filters were necessary.
Attached are two examples of a broken menu, and what it's supposed to look like.
http://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #1 from hibbsncc1701@yahoo.com --- Created attachment 48118 --> http://bugs.winehq.org/attachment.cgi?id=48118 How the menu is supposed to look.
http://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #2 from hibbsncc1701@yahoo.com --- Created attachment 48119 --> http://bugs.winehq.org/attachment.cgi?id=48119 First example of broken menu
http://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #3 from hibbsncc1701@yahoo.com --- Created attachment 48120 --> http://bugs.winehq.org/attachment.cgi?id=48120 Second example of broken menu
http://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #4 from hibbsncc1701@yahoo.com --- Whoops, I was thinking of my old GPU card. The real GPU card in this system is an Nvidia Geforce GT 610. I apologize for error.
https://bugs.winehq.org/show_bug.cgi?id=35993
roger@mailinator.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |roger@mailinator.com
--- Comment #5 from roger@mailinator.com --- You need to offer backstrace from the console. Also this can be driver issue. Is there any wine version this has worked correctly?
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #6 from hibbsncc1701@yahoo.com --- Do you mean the console log, or an strace log?
The game is running really slowly currently so getting the latter will take some time.
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #7 from hibbsncc1701@yahoo.com --- Created attachment 49981 --> https://bugs.winehq.org/attachment.cgi?id=49981 Wine version 1.7.31 Console log
Attached is a console log from while the game is running. It's the full log including initial startup. (No debug flags.)
The good news is the rainbow-colored polygons seem to have slown down in their flashing, but are definitly stil present in the current version of wine. (Wine 1.7.31)
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #8 from Austin English austinenglish@gmail.com --- (In reply to hibbsncc1701 from comment #7)
Created attachment 49981 [details] Wine version 1.7.31 Console log
Attached is a console log from while the game is running. It's the full log including initial startup. (No debug flags.)
The good news is the rainbow-colored polygons seem to have slown down in their flashing, but are definitly stil present in the current version of wine. (Wine 1.7.31)
Does 'winetricks d3dx9' help?
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #9 from hibbsncc1701@yahoo.com --- Created attachment 51080 --> https://bugs.winehq.org/attachment.cgi?id=51080 Updated image
Yes, the bug is still present in wine 1.7.38.
https://bugs.winehq.org/show_bug.cgi?id=35993
Aexander qg4sod@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |qg4sod@gmail.com
--- Comment #10 from Aexander qg4sod@gmail.com --- Created attachment 52911 --> https://bugs.winehq.org/attachment.cgi?id=52911 back trace using 1.8-rc
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #11 from Aexander qg4sod@gmail.com --- Created attachment 52912 --> https://bugs.winehq.org/attachment.cgi?id=52912 debug trace w/ +snoop,+relay
Bug still present in wine 1.8-rc. Game freezes to a black screen at launch until overrides quartz, devenum and wmp9 (or other versions) are installed. Games lags, except audio, until you install d3dx9 (likely can get away with less). GPU is 8800 GTX using NVidia 340.93 drivers.
Log starts shortly before entering the camp menu where the bug presents. Happy to supply a more targeted trace. Just say what options you would like.
https://bugs.winehq.org/show_bug.cgi?id=35993
Aexander qg4sod@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|qg4sod@gmail.com |
https://bugs.winehq.org/show_bug.cgi?id=35993
j-r@online.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |j-r@online.de
--- Comment #12 from j-r@online.de --- The same glitches do appear using mesa from recent git with both nouveau (on NVA5) and the llvmpipe driver. winetricks d3dx9 does not change the glitches.
AFAICT the the colored polygons are the missing user interface elements (something that looks like rotated text is sometimes visible on the glitching polygons).
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #13 from j-r@online.de --- Still present in wine 1.9.12 (after reverting regressing commit of bug 40767).
https://bugs.winehq.org/show_bug.cgi?id=35993
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Depends on| |40767
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #14 from Aexander kq3thih@mailnesia.com --- Created attachment 56409 --> https://bugs.winehq.org/attachment.cgi?id=56409 hack
Missing elements (buttons, etc.) happen on d3d9_device_DrawIndexedPrimitiveUP calls with a non-zero min_vertex_idx. Attached hack blindly applied surprisingly seems to work. Looking at d3d9_device_DrawIndexedPrimitiveUP function min_vertex_idx appears to be unimplemented and only used in the TRACE call.
Still blocked by bug 40767. v5 patch awaiting review allows the game to start: https://source.winehq.org/patches/data/128088
I was able to get a proper trace via PixWin.exe if that will be useful for further debugging. Unfortunately, apitrace appears to suffer from a similar bug and does not produce a clean trace.
https://bugs.winehq.org/show_bug.cgi?id=35993
Aexander kq3thih@mailnesia.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #56409|0 |1 is patch| |
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #15 from Matteo Bruni matteo.mystral@gmail.com --- (In reply to Aexander from comment #14)
Missing elements (buttons, etc.) happen on d3d9_device_DrawIndexedPrimitiveUP calls with a non-zero min_vertex_idx. Attached hack blindly applied surprisingly seems to work.
Nice catch! Actually that might be exactly how we want to fix this. The alternative is to still only copy vertex_count vertices (but starting from min_vertex_idx) and adjust the call to wined3d_device_set_base_vertex_index() instead. That has the problem that the adjusted base vertex becomes negative when min_vertex_idx * vertex_stride > vb_pos which seems "meh."
Notice also that there is identical code in d3d8 which needs the same fix.
Do you want to follow through on it? :)
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #16 from Aexander kq3thih@mailnesia.com --- (In reply to Matteo Bruni from comment #15)
Nice catch! Actually that might be exactly how we want to fix this. The alternative is to still only copy vertex_count vertices (but starting from min_vertex_idx) and adjust the call to wined3d_device_set_base_vertex_index() instead.
There's that saying with infinite monkeys banging on typewriters. I started with trying to adjust the base vertex and do something with vb_pos which did not help. Of course I don't particularly grasp that part of the code. I haven't worked with DirectX or OpenGL before. Actually, really haven't done much with C either. There was one comment I stumbled across, "...could simply be set to include the entire vertex buffer at the price of performance." Which gave me the idea to increase vtx_size. Still I was surprised when it rendered everything correctly.
While I could no doubt beat git into shape to generate a patch I wouldn't feel comfortably submitting it as I don't understand the existing code in that function much less the implications of the proposed change.
I see that Wine is in code freeze currently. Assuming proper patches were submitted is this something that would make it into 2.0?
https://bugs.winehq.org/show_bug.cgi?id=35993
Matteo Bruni matteo.mystral@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever confirmed|0 |1
--- Comment #17 from Matteo Bruni matteo.mystral@gmail.com --- (In reply to Aexander from comment #16)
There's that saying with infinite monkeys banging on typewriters.
Heh.
I see that Wine is in code freeze currently. Assuming proper patches were submitted is this something that would make it into 2.0?
It's a targeted fix to a bug which is probably even a regression (maybe from f3f172ce81ea17679854441674d55ffc8493a766, but it doesn't matter). To me it seems like the perfect patch for code freeze.
If you want my suggestion, just prepare and send a patch to wine-patches (https://wiki.winehq.org/SubmittingPatches might be helpful). Worst case, Henri will reject the patch :P
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #18 from j-r@online.de --- I can confirm that the proposed fix works for me. Thanks! (Makes the UI somewhat boring, though:-)
https://bugs.winehq.org/show_bug.cgi?id=35993
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dmitry@baikal.ru, | |erich.e.hoover@wine-staging | |.com, michael@fds-team.de, | |sebastian@fds-team.de Staged patchset| |https://github.com/wine-com | |pholio/wine-staging/tree/ma | |ster/patches/d3d9-DrawIndex | |edPrimitiveUP Status|NEW |STAGED
https://bugs.winehq.org/show_bug.cgi?id=35993
Matteo Bruni matteo.mystral@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|STAGED |RESOLVED Resolution|--- |FIXED Fixed by SHA1| |bbce5af7d39c54bad156aa0754e | |7eb4cd03552e4
--- Comment #19 from Matteo Bruni matteo.mystral@gmail.com --- (In reply to j-r from comment #18)
I can confirm that the proposed fix works for me. Thanks!
http://source.winehq.org/git/wine.git/commitdiff/bbce5af7d39c54bad156aa0754e... is now in git which should fix this bug. Please reopen if that's not the case.
(Makes the UI somewhat boring, though:-)
Sorry about that :P
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #20 from Aexander kq3thih@mailnesia.com --- (In reply to Matteo Bruni from comment #19)
http://source.winehq.org/git/wine.git/commitdiff/ bbce5af7d39c54bad156aa0754e7eb4cd03552e4 is now in git which should fix this bug. Please reopen if that's not the case.
I confirm. Current git, wine-2.0-56-g76644a7c26, with deferred v5 patch applied on top works a treat. Thanks Matteo!
https://bugs.winehq.org/show_bug.cgi?id=35993
--- Comment #21 from Matteo Bruni matteo.mystral@gmail.com --- (In reply to Aexander from comment #20)
I confirm. Current git, wine-2.0-56-g76644a7c26, with deferred v5 patch applied on top works a treat. Thanks Matteo!
Thank you for the debug work :)
https://bugs.winehq.org/show_bug.cgi?id=35993
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #22 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 2.1.
https://bugs.winehq.org/show_bug.cgi?id=35993
Michael Stefaniuc mstefani@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |2.0.x
https://bugs.winehq.org/show_bug.cgi?id=35993
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|2.0.x |---
--- Comment #23 from Michael Stefaniuc mstefani@winehq.org --- Removing the 2.0.x milestone from bugs included in 2.0.1.
https://bugs.winehq.org/show_bug.cgi?id=35993 Bug 35993 depends on bug 40767, which changed state.
Bug 40767 Summary: Indiana Jones and The Emperor's Tomb quits after the splash screen https://bugs.winehq.org/show_bug.cgi?id=40767
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED