[Bug 58575] New: Low performance in an old Directx8 Sonic fangame in wined3d
http://bugs.winehq.org/show_bug.cgi?id=58575 Bug ID: 58575 Summary: Low performance in an old Directx8 Sonic fangame in wined3d Product: Wine Version: 10.11 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: d3d Assignee: wine-bugs(a)winehq.org Reporter: user.pecheniok(a)gmail.com Distribution: --- This game has a built-in fps counter. After launching it, I was surprised to find that it ran at only 30 fps in the hub area, while on windows it runs at 60. It is seemingly ok in the gameplay, but fps is often several values short of 60, and there are also rarer drops to 30 for several seconds. There are no warnings in the console other than related to directsound. DXVK works at a locked 60 fps, so that means that it's a problem with wined3d. Here is the link to the game: https://gamejolt.com/games/sonic3d/28626 -- 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=58575 Zak <user.pecheniok(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |user.pecheniok(a)gmail.com --- Comment #1 from Zak <user.pecheniok(a)gmail.com> --- After some testing, I am back with some additional info. I played it again yesterday, and noticed that the fps in the hub area is a bit higher. Like 15-20 fps. Then I realised that I had switched my session to wayland. After switching back to X, my fps fell by 15-20 again. X had more severe fps fall, but wayland had more weird splitsecond stutters that didn't really show up on mangohund. Performance on the 3rd level on wayland was pretty low, 40-50 fps. Never hit 60 on this and the next one. -- 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=58575 Austin English <austinenglish(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, performance -- 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=58575 --- Comment #2 from Zak <user.pecheniok(a)gmail.com> --- After more testing, I have some even more interesting data. After remembering that wine 9 introduced 64-bit processes for 32-bit apps, I had a suspicion that maybe it had worked fine before. So I downloaded a wine 8.21 appimage, and found that the game ran at a locked 60fps there. But after I tried it in wine 9.21, things became even more interesting, because it turned out that the performance was WORSE than it is now. So some related or unrelated bugfixes improved the performance. -- 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=58575 Zeb Figura <z.figura12(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12(a)gmail.com --- Comment #3 from Zeb Figura <z.figura12(a)gmail.com> --- (In reply to Zak from comment #2)
After more testing, I have some even more interesting data. After remembering that wine 9 introduced 64-bit processes for 32-bit apps, I had a suspicion that maybe it had worked fine before. So I downloaded a wine 8.21 appimage, and found that the game ran at a locked 60fps there. But after I tried it in wine 9.21, things became even more interesting, because it turned out that the performance was WORSE than it is now. So some related or unrelated bugfixes improved the performance.
Yeah, this certainly sounds like bug 55981... -- 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=58575 --- Comment #4 from Zak <user.pecheniok(a)gmail.com> --- I made an interesting discovery today: looks like the performance is also related to some wined3d deficiency after all, specifically in the dx8 implementation. I used d3d8to9 to convert the game to d3d9, and suddenly I was getting about 20fps more - a solid almost 2 times increase. Also, judging by Stian Low's test results in https://bugs.winehq.org/show_bug.cgi?id=58671, the performance drop appeared after wine 10. Wine 9.21 and 10 rc3 still run at 60 fps, then the game broke at 10.1, and then the fps problems stayed. -- 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=58575 --- Comment #5 from Zak <user.pecheniok@gmail.com> --- After upgrading wine to 10.20, the game now renders a black screen when entering the hub with 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glBindBuffer(non-gen name)". 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glBindBuffer(non-gen name)". 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glBufferData(immutable)". 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glBufferData(no buffer bound)". 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glUniform1(uniform \"ffp_projection_matrix\"@1 is matrix)". but I suspect the bug appeared with 10.18, which introduced Vulkan memory mapping for OpenGL. Will need to retest to make sure. -- 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=58575 --- Comment #6 from Zak <user.pecheniok@gmail.com> --- (In reply to Zak from comment #5)
After upgrading wine to 10.20, the game now renders a black screen when entering the hub with
01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glBindBuffer(non-gen name)". 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glBindBuffer(non-gen name)". 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glBufferData(immutable)". 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glBufferData(no buffer bound)". 01a8:err:d3d:wined3d_debug_callback 081D3448: "GL_INVALID_OPERATION in glUniform1(uniform \"ffp_projection_matrix\"@1 is matrix)".
but I suspect the bug appeared with 10.18, which introduced Vulkan memory mapping for OpenGL. Will need to retest to make sure.
Tested on 10.18 and 11 rc 1. Both render a black screen. -- 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 (2)
-
WineHQ Bugzilla -
WineHQ Bugzilla