[Bug 40409] New: builtin gdiplus causes K-Shoot Mania to lag in some menus, native gdiplus causes missing textures
https://bugs.winehq.org/show_bug.cgi?id=40409 Bug ID: 40409 Summary: builtin gdiplus causes K-Shoot Mania to lag in some menus, native gdiplus causes missing textures Product: Wine Version: 1.9.7 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: gdiplus Assignee: wine-bugs(a)winehq.org Reporter: lena.stoffler(a)ymail.com Distribution: --- Created attachment 54144 --> https://bugs.winehq.org/attachment.cgi?id=54144 log, native gdiplus K-Shoot Mania AppDB -> https://appdb.winehq.org/objectManager.php?sClass=application&iId=17474 I did a lot of research to get this game to run normally. I have some interessting results. Maybe this is fixable? I'm sure the problem sits in the GDIPlus DLL Short summary: builtin: some menus lags really hard (very low framerate, 2~3 + input lag), all textures are visible native: normal framerate in all menus, but some missing textures (plain white spot where the textures should be) builtin (Wine) ~~~~~~~~~~~~~~ Probably the reason for the heavy lag? Only using builtin gdiplus. fixme:wincodecs:JpegDecoder_Frame_CopyPalette (0x...,0x...): stub fixme:gdiplus:GdipCreateBitmapFromGdiDib (0x2002a60, 0x6b10000, 0x6578c8) - partially implemented Basically a stub and a partially implemented function. Maybe the game requires a better GdipCreateBitmapFromGdiDib implementation or the JpegDecoder_Frame_CopyPalette function. I don't know. NOTE: The JpegDecoder_Frame_CopyPalette fixme doesn't appear with the native gdiplus. native (Windows) - winetricks gdiplus ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ No lag there, but now some textures are missing. Instead of the texture which should be there, there is only a plain white spot. The 'generated' texture files are empty files (0 byte). You can verify this by youself easily: the cache folder is in the game folder. ($GAME/cache) This is the fixme which is spammed in the terminal when using the native gdiplus, installed using winetricks. fixme:bitmap:SetBitmapBits Unhandled partial pixel The other 2 fixmes from the builtin version are completely gone. The 2 logs are attached separately for better readability. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=40409 --- Comment #1 from Lena Stöffler <lena.stoffler(a)ymail.com> --- Created attachment 54145 --> https://bugs.winehq.org/attachment.cgi?id=54145 log, builtin gdiplus -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=40409 Lena Stöffler <lena.stoffler(a)ymail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Version|1.9.7 |1.9.11 -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=40409 nieknooijens <nieknooijens(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |nieknooijens(a)gmail.com --- Comment #2 from nieknooijens <nieknooijens(a)gmail.com> --- that setbitmapbits function is really outdated :( https://msdn.microsoft.com/en-us/library/windows/desktop/dd162962(v=vs.85).a... -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=40409 Bartosz <gang65(a)poczta.onet.pl> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |gang65(a)poczta.onet.pl --- Comment #3 from Bartosz <gang65(a)poczta.onet.pl> --- You could download the game from: https://www.kshootmania.com/en/download.html Please retest the game with the latest Wine. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=40409 Esme Povirk <madewokherd(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |https://www.kshootmania.com | |/en/download.html -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=40409 Esme Povirk <madewokherd(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |madewokherd(a)gmail.com -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=40409 Zsolt Vadasz <zsolt_vadasz@protonmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |zsolt_vadasz@protonmail.com --- Comment #4 from Zsolt Vadasz <zsolt_vadasz@protonmail.com> --- Created attachment 80051 --> http://bugs.winehq.org/attachment.cgi?id=80051 WINEDEBUG="+gdi" on wine-11.0-rc4 Can confirm, there're still noticable stutters when switching between difficulty options in the song selection menu. However WINEDEBUG="+gdi" shows constant allocations and deallocations while the game window is focused (see the attachment for a snippet), and I'm not quite sure that's Wine's fault. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=40409 --- Comment #5 from Esme Povirk <madewokherd@gmail.com> --- One thing that might matter: This program uses GdipCreateBitmapFromGdiDib a lot. Our version of that copies the bitmap data, but I tested on Windows and found that it references the data in place. Unfortunately, it's a bit hard to fix because parsing a BITMAPINFO structure is complicated. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=40409 --- Comment #6 from Esme Povirk <madewokherd@gmail.com> --- Made https://gitlab.winehq.org/wine/wine/-/merge_requests/10652 fixing GdipCreateBitmapFromGdiDib. I haven't retested performance with it. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=40409 --- Comment #7 from Esme Povirk <madewokherd@gmail.com> --- Still feels laggy to me. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=40409 --- Comment #8 from Esme Povirk <madewokherd@gmail.com> --- I think it may be reloading all the art when changing difficulties, which would account for the lag. My Windows VM lags similarly when run from my VM share, but it doesn't lag when run locally. So it seems like we perhaps need faster image loading? -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=40409 --- Comment #9 from Esme Povirk <madewokherd@gmail.com> --- Remaining places where we seem to be taking a noticeable amount of time: * GdipLoadImageFromFile, where it's given a directory name. The file name ends in \ so we should be able to very quickly figure out that we can't open it as a stream. This seems to take the most time of any of these. * jpeg_decoder_initialize, which makes sense because we load the image data and convert it from RGB to BGR. * Reading information from the registry about metadata readers in the WIC ComponentInfo implementation. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (3)
-
wine-bugs@winehq.org -
WineHQ Bugzilla -
WineHQ Bugzilla