1 Reply Latest reply on Mar 3, 2013 2:33 AM by kano

    Serious Sam 3 - Poor performance and quality on Linux compared to Windows

    deadguy

      I have a Radeon HD5870 and I am running Steam on Ubuntu 12.04 LTS, trying to play Serious Sam 3 BFE.  When I run the game on Linux I see very poor performance and quality. 

       

      For instance, I am now on the level called "The Silent Riddler".  First the frame rate is very low, I have the game set to High on CPU, and GPU MEMORY, and for GPU it is set to High, then I change the settings to disable all anti-aliasing and ambient occlusion.  With these settings on Linux I get 15 - 25 frames per second, and the quality of the rendering is terrible.  With these settings the detail in the foliage and the shadows under the trees constantly flicker in and out of existence, and when I go into the one closed room on the level my flash light turns on and my frame rate drops below 5 frames per second. 

       

      With Windows 7 on the same machine I can put the settings at High on CPU, Ultra on GPU, and High on GPU memory (no custom changes) and I get a beautifully rendered environment with 30 - 60 frames per second (that's 30 when I'm surrounded by enemies and unloading clips of ammo and 60 when there are no enemies around). 

       

      So I have a couple of questions.  Can I force Windows to use OpenGL rendering so I am doing a more "apples to apples" comparison?  If so, how?  Is there some way to improve the quality of the rendering and the frame rate on Linux?  What could be causing the disparity between the two operating systems?

       

      Is there any other information I can provide that would be useful to the AMD Linux driver developers?

        • Re: Serious Sam 3 - Poor performance and quality on Linux compared to Windows
          kano

          First of all OpenGL rendering performance is lower with Nvidia cards as well. But AMD has got some extra bugs in there. It begins with the wrong initialisation, the later result are flickering textures. There is a hack that lets those go away: press while the menu (and not inside a level) Alt+Enter twice or use gfxRestart() as console command. You can switch to OpenGL on Win as well using "gfx_iAPI = 1", then restart the the engine or the game. One extra curious thing is when you have got a Crossfire setup. On Win using D3D the performance increase is absolutely minimal, but when set to OpenGL then it drops massively. On Linux Crossfire has basically no impact for most games, but you can see the performance drop there as well. HD 5670 - most likely driver 12.11 beta but the driver version is not important for this issue:

           

          CF on:

          06_Pyramids_0001_fglrx_cf_on.jpg

          CF off:

          06_Pyramids_0001_fglrx_cf_off.jpg

          Btw. i see it as very bad joke when SS3 is mentioned in the changelog of a beta driver and the bug is still there!