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@winehq.org Reporter: lena.stoffler@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.