http://bugs.winehq.org/show_bug.cgi?id=21204
Summary: Warcraft 3 disproportionately slow in d3d mode unless RenderTargetLockMode=disabled Product: Wine Version: 1.1.33 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: minor Priority: P2 Component: directx-d3d AssignedTo: wine-bugs@winehq.org ReportedBy: Simon80@gmail.com
Under default settings, Warcraft 3 runs very slowly on my system, whose hardware is more than capable of of running it without framerate issues. When run in OpenGL mode, the game runs smoothly without exception (60fps), but there are probems with the rendering. In Direct3D mode, it renders correctly, but the framerate is very low, under 15 fps. In the search for a playable configuration, I discovered that setting HKEY_CURRENT_USER\Software\Wine\Direct3D:RenderTargetLockMode to disabled results in much better framerates, around 30 fps. This isn't as good as the OpenGL mode, but is still playable, and I didn't notice any rendering problems.
I tried some of the other possibilities (textex, readtex, texread, I think), and the performance was just as slow.
I also discovered just now that Warcraft 3 has a registry setting, HKEY_CURRENT_USER\Software\Blizzard Entertainment\Warcraft III\Video:lockfb, which acts similarly (defaults to on, and when set to 0, performance becomes acceptable). If neither of those two values are disabled, then performance is disproportionately slow on this hardware.
I can grab debug output on request.
http://bugs.winehq.org/show_bug.cgi?id=21204
--- Comment #1 from Jeff Zaroyko jeffz@jeffz.name 2009-12-31 01:04:42 --- which video card and drivers does this affect?
http://bugs.winehq.org/show_bug.cgi?id=21204
--- Comment #2 from Simon Simon80@gmail.com 2009-12-31 11:37:47 --- Created an attachment (id=25473) --> (http://bugs.winehq.org/attachment.cgi?id=25473) glxinfo
Oops, my mistake for not including that info. I have a Mobility Radeon HD 3650. I've attached my glxinfo as well for reference.
http://bugs.winehq.org/show_bug.cgi?id=21204
--- Comment #3 from NickNill dmbohdan@gmail.com 2010-01-05 21:52:04 --- I can confirm that game runs very slow in d3d mode (ATI Radeon X2300)
http://bugs.winehq.org/show_bug.cgi?id=21204
--- Comment #4 from Simon Simon80@gmail.com 2010-01-06 11:49:38 --- Out of curiousity, does assigning 0 to HKEY_CURRENT_USER\Software\Blizzard Entertainment\Warcraft III\Video:lockfb fix this? Is -opengl mode broken for you as well?
http://bugs.winehq.org/show_bug.cgi?id=21204
Roman m01brv@mail.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |m01brv@mail.ru
--- Comment #5 from Roman m01brv@mail.ru 2010-09-03 06:32:21 CDT --- I can confirm that this same problem exists in my system, though I usually run wc3 in opengl mode. Setting HKEY_CURRENT_USER\Software\Blizzard Entertainment\Warcraft III\Video:lockfb to 0 improves Direct 3D performance indeed.
http://bugs.winehq.org/show_bug.cgi?id=21204
--- Comment #6 from Roman m01brv@mail.ru 2010-09-03 06:36:14 CDT --- My video card is Intel GMA X3100 / GL960
http://bugs.winehq.org/show_bug.cgi?id=21204
--- Comment #7 from Roman m01brv@mail.ru 2010-09-06 03:28:27 CDT --- I've done some profiling using sysprof. According to it, almost all of the time in D3D mode with lockfb=1 WC3 spends in the following stack sequence:
war3.exe IDirect3DSurface8Impl_LockRect IWineD3DSurfaceImpl_LockRect IWineD3DSurfaceImpl_LoadLocation read_from_framebuffer i965_dri.so (not resolved in subroutines, though it seems I have all necessary debugging symbols installed)
Eventually, almost all of the time is spent in the video driver (i965_dri.so), though I think the low performance may be due to inoptimal organization of the OpenGL calls in the wine's Direct 3D, since the problem exists on many video cards.
http://bugs.winehq.org/show_bug.cgi?id=21204
Francisco Pina Martins f.pinamartins@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |f.pinamartins@gmail.com
--- Comment #8 from Francisco Pina Martins f.pinamartins@gmail.com 2011-10-28 17:26:46 CDT --- This appears to be fixed for me in wine 1.3.31. Could have been with the DirectX to OpenGL calls implementation. I'm using a nVidia 8600M GT, and framerates seem to be the same with and without the "-opengl" flag.
http://bugs.winehq.org/show_bug.cgi?id=21204
--- Comment #9 from Francisco Pina Martins f.pinamartins@gmail.com 2011-10-28 17:27:58 CDT --- Forgot to add: I'm using the latest proprietary drivers for my graphics card.
http://bugs.winehq.org/show_bug.cgi?id=21204
--- Comment #10 from Roman m01brv@mail.ru 2011-11-01 03:19:44 CDT --- Yes, apparently this bug is fixed
http://bugs.winehq.org/show_bug.cgi?id=21204
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |FIXED
--- Comment #11 from Austin English austinenglish@gmail.com 2011-11-01 12:45:40 CDT --- (In reply to comment #10)
Yes, apparently this bug is fixed
Fixed.
http://bugs.winehq.org/show_bug.cgi?id=21204
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #12 from Alexandre Julliard julliard@winehq.org 2011-11-04 14:14:04 CDT --- Closing bugs fixed in 1.3.32.