http://bugs.winehq.org/show_bug.cgi?id=20307
Summary: Call of Duty 4 v1.7 frame rate issue Product: Wine Version: 1.1.30 Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3d AssignedTo: wine-bugs@winehq.org ReportedBy: sebastien.fievet@free.fr
Created an attachment (id=24008) --> (http://bugs.winehq.org/attachment.cgi?id=24008) log file generated with wine-1.1.29 (COD4 running fast)
I experience a frame rate drop in Call of Duty 4 sine wine-1.1.30 which makes the game unplayable, while it works perfectly well with v1.1.29. The issue is still present in v1.1.31.
attached are 2 logs generated respectively with wine-1.1.29 and wine-1.1.31. obvious differences appear. If the log files are not meaningful enough and a regression test is needed, i'll do.
i am running - kernel 2.6.31 - Xorg 7.1 - nvidia 9800GT with binary drivers v185.18.36
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #1 from Séb sebastien.fievet@free.fr 2009-10-10 10:12:44 --- Created an attachment (id=24009) --> (http://bugs.winehq.org/attachment.cgi?id=24009) log file generated with wine-1.1.31 (COD4 running slow)
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #2 from Jeff Zaroyko jeffz@jeffz.name 2009-10-10 17:46:58 --- Please provide the results of your regression test http://wiki.winehq.org/RegressionTesting
http://bugs.winehq.org/show_bug.cgi?id=20307
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|directx-d3d |-unknown
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #3 from Séb sebastien.fievet@free.fr 2009-10-15 13:14:09 --- better late than never... Here's the result of my regression testing
bad commit is : [ec97383f6fb1a14c19dfcb85dd5239a8938c9e3c] wined3d: Add support for ARB_framebuffer_object.
it seems to me that the following commit has an impact on the frate rate too. But way less relevant than the "bad" one : [34dd27e3a8f9affb919db6f7c912040ded8eace8] wined3d: Don't create a depthstencil renderbuffer if ARB_framebuffer_object is supported.
Hope this helps. For now i stick with v1.1.29...
thanks for your help.
Seb.
http://bugs.winehq.org/show_bug.cgi?id=20307
Séb sebastien.fievet@free.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |directx-d3d
http://bugs.winehq.org/show_bug.cgi?id=20307
Sébastien Fiévet sebastien.fievet@free.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |hverbeet@gmail.com, | |sebastien.fievet@free.fr
--- Comment #4 from Sébastien Fiévet sebastien.fievet@free.fr 2009-10-24 04:44:04 --- - updated nVidia binary drivers to latest v190.42 (release candidate) - updated wine to v1.1.32 bug is still present. Sticking to v1.1.29. CC'ed "bad" commit author (Henri Verbeet) in case he can have a look...
Thanks for your help, Seb.
http://bugs.winehq.org/show_bug.cgi?id=20307
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wylda@volny.cz
--- Comment #5 from Wylda wylda@volny.cz 2009-10-24 10:21:03 --- (In reply to comment #0)
I experience a frame rate drop in Call of Duty 4 sine wine-1.1.30 which makes the game unplayable
Hi Seb, i don't have such problem here on nvidia 185.18.36. Could you provide step by step howto or savegame if is it relevant to some particular place?
Frame drop is your personal feeling or do you measure it? How do you measure that? How many percent is that drop?
I did some test @640x480 and @1920x1200. Wine from 1.1.29 till 1.1.32 give me same results. Measured in first mission - on a boat, immediately after leaving the helicopter. I used "/cg_drawfps 1".
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #6 from Sébastien Fiévet sebastien.fievet@free.fr 2009-10-24 11:31:52 --- Hello Wilda,
running @1680x1050, same driver, same map, same everything but wine version. measured with "+set cg_drawfps 1" : * wine-1.1.29 : FPS ~ 15-25 * wine 1.1.32 : FPS ~ 3-4
I didn't recompile v1.1.30 and v1.1.31, but the visual feeling was the same as with v1.1.32, and the frame rate really looked as low.
Basically, just bumping up wine version above v1.1.29 shows up the FPS drop. I really have nothing to do but launching the game with either version of wine.
The point is that it doesn't seem to affect anyone else but me... Which plays against me, of course. :-) But unless i missed something, i am pretty confident in my regression test result...
Seb.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #7 from Wylda wylda@volny.cz 2009-10-24 16:04:03 --- (In reply to comment #6)
Which plays against me, of course. :-)
I know how this can be frustrating, persuading others that you really have a problem and nobody listen to that.
@1920x1200 with everything else set to low or off:
* 1.1.27 ~ 34 FPS * 1.1.28 ~ 34 FPS * 1.1.29 ~ 34 FPS * 1.1.30 ~ 33 FPS * 1.1.31 ~ 33 FPS * 1.1.32 ~ 32 FPS
I always tried to took max FPS value. I compiled all that wine version myself with no optimizations and with debuging symbols (-O0 and -g).
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #8 from Henri Verbeet hverbeet@gmail.com 2009-10-24 16:16:17 --- You can comment out the line with "GL_ARB_framebuffer_object" in dlls/wined3d/directx.c to make wined3d always use GL_EXT_framebuffer_object instead of the ARB version. If that makes it fast again there's probably an implementation difference between ARB_fbo and EXT_fbo in the driver, although I'm not sure why you seem to be the only one affected by this.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #9 from Sébastien Fiévet sebastien.fievet@free.fr 2009-10-24 16:31:03 --- (In reply to comment #8)
You can comment out the line with "GL_ARB_framebuffer_object" in dlls/wined3d/directx.c to make wined3d always use GL_EXT_framebuffer_object instead of the ARB version. If that makes it fast again there's probably an implementation difference between ARB_fbo and EXT_fbo in the driver, although I'm not sure why you seem to be the only one affected by this.
Thanks Henri for taking time to reply. Commenting this line out fixes it. If you need some additional info, i'll be glad to help.
regards, Seb.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #10 from Sébastien Fiévet sebastien.fievet@free.fr 2009-10-26 04:49:44 --- Henri,
If you think it may be a driver related issue, would it be worth it that i report it to nVidia people on their Linux forum?
Regards, Seb.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #11 from Henri Verbeet hverbeet@gmail.com 2009-10-26 05:12:22 --- (In reply to comment #10)
Henri,
If you think it may be a driver related issue, would it be worth it that i report it to nVidia people on their Linux forum?
Regards, Seb.
It shouldn't hurt to ask if they can have a look, but keep in mind that it's probably hard for them to say something useful about this as well.
http://bugs.winehq.org/show_bug.cgi?id=20307
byteframe byteframe@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |byteframe@yahoo.com
--- Comment #12 from byteframe byteframe@yahoo.com 2009-11-29 18:20:41 --- It seems that the major fps drop, (which I also experiance with >1.1.29) is only present when you use the "Shadows" graphics option. With shadows disabled the frame rate is good.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #13 from Sébastien Fiévet sebastien.fievet@free.fr 2009-11-30 15:04:17 --- I confirm that at least in v1.1.33, disabling shadows restores the frame rate to its normal level. I have the feeling the game is not as so smooth as with Henri's workaround, though.
I found someone on the APPDB entry for cod4 complaining about a poor framerate too : http://appdb.winehq.org/objectManager.php?sClass=version&iId=12804. He's got a 9800gt too.
I posted on Nvidia forum, without success so far... http://www.nvnews.net/vbulletin/showthread.php?t=140509
If Henri still thinks it's a driver related issue, then maybe byteframe could post a comment on the thread i started on NVnews?
Seb.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #14 from Henri Verbeet hverbeet@gmail.com 2009-12-01 04:52:43 --- Shadows usually imply some relation with depth/stencil buffer handling.
For what it's worth, it would make sense for 34dd27e3a8f9affb919db6f7c912040ded8eace8 to have some impact on performance, because it allows the depth blit in surface_load_ds_location() to happen even the color and depth buffers have different sizes. The impact should be minor though, certainly not as much as you're seeing. ec97383f6fb1a14c19dfcb85dd5239a8938c9e3c shouldn't change wined3d behaviour, just the GL entry points that are called.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #15 from Sébastien Fiévet sebastien.fievet@free.fr 2009-12-01 16:06:43 --- (In reply to comment #14)
Then it is likely that i made a mistake, presumably after i identified 34dd27e3a8f9affb919db6f7c912040ded8eace8 as a "bad" commit. I'll rerun the regression testing, hopefully this time I'll end up with a more consistent result.
Thank you again Henri for your support...
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #16 from Sébastien Fiévet sebastien.fievet@free.fr 2009-12-05 05:12:09 --- (In reply to comment #15)
I re-ran the regression testing with Nvidia's latest beta driver (195.22), and i no longer suffer the FPS drop. I updated wine to v1.1.34 afterward, and the game (still) runs just fine.
I am gonna post to NVnews and ask if NVidia actually did something on their driver about that, or if it happens to be fixed "by accident".
Thank you guys for your help, ... and thanks again Henri for your patience and support.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #17 from Sébastien Fiévet sebastien.fievet@free.fr 2009-12-06 08:32:48 --- (In reply to comment #16)
My bad : I ran the regression test with shadows disabled. :-( I just re-re-re-ran the regression test, this time with shadows enabled.
this is what i did : git bisect start dlls/wined3d git bisect good wine-1.1.29 git bisect bad wine-1.1.30
[5b8b97a73714b33df38c9f2cf419c48eb1364a52] -> OK [4fe014cb54c88118616cc4ba83da329f3b9a2575] -> KO [a0de42db13b7d210251bff80ab45fd99f5ff0243] -> KO [c4c86215ed923d0ccfbad9eed5c3a3094b029035] -> OK [34dd27e3a8f9affb919db6f7c912040ded8eace8] -> KO [ec97383f6fb1a14c19dfcb85dd5239a8938c9e3c] -> OK
34dd27e3a8f9affb919db6f7c912040ded8eace8 is first bad commit commit 34dd27e3a8f9affb919db6f7c912040ded8eace8 Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed Sep 23 10:05:56 2009 +0200
wined3d: Don't create a depthstencil renderbuffer if ARB_framebuffer_object is supported.
:040000 040000 7c908e5dd7680fde0b031748fba58ec61f81e24a 1fa35d9ea8ec7a8ba48866f5c6ce84cc36186904 M dlls
This _really_ strongly affect the frame rate. Again, i am sorry for the noise :-(
Seb.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #18 from byteframe byteframe@yahoo.com 2009-12-06 20:05:15 --- (In reply to comment #17)
(In reply to comment #16)
My bad : I ran the regression test with shadows disabled. :-( I just re-re-re-ran the regression test, this time with shadows enabled.
this is what i did : git bisect start dlls/wined3d git bisect good wine-1.1.29 git bisect bad wine-1.1.30
[5b8b97a73714b33df38c9f2cf419c48eb1364a52] -> OK [4fe014cb54c88118616cc4ba83da329f3b9a2575] -> KO [a0de42db13b7d210251bff80ab45fd99f5ff0243] -> KO [c4c86215ed923d0ccfbad9eed5c3a3094b029035] -> OK [34dd27e3a8f9affb919db6f7c912040ded8eace8] -> KO [ec97383f6fb1a14c19dfcb85dd5239a8938c9e3c] -> OK
34dd27e3a8f9affb919db6f7c912040ded8eace8 is first bad commit commit 34dd27e3a8f9affb919db6f7c912040ded8eace8 Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed Sep 23 10:05:56 2009 +0200
wined3d: Don't create a depthstencil renderbuffer if ARB_framebuffer_object
is supported.
:040000 040000 7c908e5dd7680fde0b031748fba58ec61f81e24a 1fa35d9ea8ec7a8ba48866f5c6ce84cc36186904 M dlls
This _really_ strongly affect the frame rate. Again, i am sorry for the noise :-(
Seb.
We all make mistakes, and I'm sure your input here is appreciated. Thanks!
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #19 from Sébastien Fiévet sebastien.fievet@free.fr 2009-12-29 14:26:03 --- With 1.1.34, and 1.1.35, toggling shadows on and off still has a major impact on the FPS.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #20 from Sébastien Fiévet sebastien.fievet@free.fr 2010-01-13 07:08:11 --- Issue is still present with v1.1.36... What prevent this bug from being confirmed?
http://bugs.winehq.org/show_bug.cgi?id=20307
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #21 from Austin English austinenglish@gmail.com 2010-01-13 10:18:13 --- Confirming.
http://bugs.winehq.org/show_bug.cgi?id=20307
--- Comment #22 from Sébastien Fiévet sebastien.fievet@free.fr 2010-04-20 03:04:53 --- played a 2 hours LAN session yesterday with shadows enabled on wine-1.1.43 and not experienced any frame rate drop. Some patch committed since v1.1.37 finally fixed it... Lucky time. :-)
http://bugs.winehq.org/show_bug.cgi?id=20307
Roderick Colenbrander thunderbird2k@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |thunderbird2k@gmail.com Resolution| |FIXED
--- Comment #23 from Roderick Colenbrander thunderbird2k@gmail.com 2010-05-28 14:38:57 --- Fixed according to the reporter.
http://bugs.winehq.org/show_bug.cgi?id=20307
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #24 from Alexandre Julliard julliard@winehq.org 2010-06-11 12:52:13 --- Closing bugs fixed in 1.2-rc3.