evilghost
July 15th, 2005, 09:44 PM
While I am not new to Linux, I am quite new to the Ubuntu/Debian world and Linux as a desktop solution. I'm an avid UT2004 gamer and have been knocking my head against the wall for the last few weeks in an attempt to eek every bit of performance out of my 6600GT card. I will attempt to provide key pieces of information and settings that have dramatically increased my UT2004 performance making it quite playable (Read as, AVG 60FPS and above). This document will be written from the aspect of someone familiar with xorg.conf modifications, driver installation, and how to edit files. There are many additional forum posts that describe these operations in detail if you don't know how to do it.
First:
Install the latest NVidia drivers from http://www.nvidia.com/object/unix.html At the time of this post, 7667 are the current drivers. Search these forums for method required to install/compile these drivers. In all honesty, it's not very difficult.
Second:
After successfully installing the drivers, make the following changes to /etc/X11/xorg.conf. Change any values that are specific to your card. Note that your xorg.conf should be larger than the below text, these are simply snippets from my xorg.conf. These values were derivied after hours of testing performance and changing one item at a time, coupled with research :)
Section "Module"
Load "bitmap"
Load "dbe"
Load "ddc"
#Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "record"
Load "type1"
Load "vbe"
EndSection
Section "Device"
Identifier "NV6600GT"
Driver "nvidia"
BusID "PCI:1:0:0"
Option "NoDCC"
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"
Option "UseInternalAGPGART" "no"
Option "NvAGP" "3"
Option "RenderAccel" "true"
Option "Coolbits" "1"
Option "NoLogo"
VideoRam 131072
EndSection
In this case, I own a 6600GT with 128MB of ram. If your card is different be sure to adjust the VideoRam declaration.
Third:
Read and apply the changes documented in http://www.ubuntuforums.org/showthread.php?t=40069
Fourth:
Modify ~/.ut2004/System/UT2004.ini to look like this, note these are snippets, not the entire UT2004.ini.
[Engine.GameEngine]
CacheSizeMegs=512
[OpenGLDrv.OpenGLRenderDevice]
DetailTextures=True
HighDetailActors=False
SuperHighDetailActors=False
UsePrecaching=True
UseCompressedLightmaps=True
UseTrilinear=False
UseStencil=False
MaxTextureUnits=8
VARSize=64
ReduceMouseLag=False
UseVSync=False
LevelOfAnisotropy=0.000000
DetailTexMipBias=0.000000
DefaultTexMipBias=-0.5
UseVBO=False
UseVSync=False
AppleVA=0
MultisampleBuffers=0
MultisampleSamples=0
MultisampleHint=2
UsePixelShaders=True
DesiredRefreshRate=0
ForceCompression=True
TerrainLOD=0
SkyboxHack=False
LowQualityTerrain=False
Use16bitTextures=False
Use16bit=False
Fifth:
Reboot, hopefully everything should work great. You can additionally use the CoolBits tab on the "nvidia-settings" application to overclock the card. Note however that upon reboot clock settings are lost. You can however issue command-line arguments to nvidia-settings. I wrote a simple script that will overclock the card. It is not advised that you use my clock settings, as your card may not support them, however, you can use the script as a base-line and apply changes specific to your card.
#!/bin/sh
nvidia-settings -a GPUOverclockingState=1 -a GPU3DClockFreqs=571,1044
Where 571Mhz is the core frequency and 1044Mhz is the memory frequency.
Sixth:
Link the libSDL in the UT2004 installation folder to your system compiled libSDL.
mv libSDL-1.2.so.0 libSDL-1.2.so.0-UT2004
ln -s /usr/lib/libSDL-1.2.so.0 libSDL-1.2.so.0
Seventh:
If you have a SoundBlaster Live or SoundBlaster Audigy, see http://ubuntuforums.org/showthread.php?p=257782
By recompiling OpenAL you can gain 10 to 20fps.
Conclusion:
I hope this helped, and please feel free to contribute to this thread-topic. I will continue to update this "HOWTO" should additional clarification be needed or any questions are raised. There may be parts of the configuration that may have adverse affects on cards that are not a 6600GT, however, it couldn't hurt to try. Be sure to "stat fps" in UT2004's console to view your current FPS rate.
First:
Install the latest NVidia drivers from http://www.nvidia.com/object/unix.html At the time of this post, 7667 are the current drivers. Search these forums for method required to install/compile these drivers. In all honesty, it's not very difficult.
Second:
After successfully installing the drivers, make the following changes to /etc/X11/xorg.conf. Change any values that are specific to your card. Note that your xorg.conf should be larger than the below text, these are simply snippets from my xorg.conf. These values were derivied after hours of testing performance and changing one item at a time, coupled with research :)
Section "Module"
Load "bitmap"
Load "dbe"
Load "ddc"
#Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "record"
Load "type1"
Load "vbe"
EndSection
Section "Device"
Identifier "NV6600GT"
Driver "nvidia"
BusID "PCI:1:0:0"
Option "NoDCC"
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"
Option "UseInternalAGPGART" "no"
Option "NvAGP" "3"
Option "RenderAccel" "true"
Option "Coolbits" "1"
Option "NoLogo"
VideoRam 131072
EndSection
In this case, I own a 6600GT with 128MB of ram. If your card is different be sure to adjust the VideoRam declaration.
Third:
Read and apply the changes documented in http://www.ubuntuforums.org/showthread.php?t=40069
Fourth:
Modify ~/.ut2004/System/UT2004.ini to look like this, note these are snippets, not the entire UT2004.ini.
[Engine.GameEngine]
CacheSizeMegs=512
[OpenGLDrv.OpenGLRenderDevice]
DetailTextures=True
HighDetailActors=False
SuperHighDetailActors=False
UsePrecaching=True
UseCompressedLightmaps=True
UseTrilinear=False
UseStencil=False
MaxTextureUnits=8
VARSize=64
ReduceMouseLag=False
UseVSync=False
LevelOfAnisotropy=0.000000
DetailTexMipBias=0.000000
DefaultTexMipBias=-0.5
UseVBO=False
UseVSync=False
AppleVA=0
MultisampleBuffers=0
MultisampleSamples=0
MultisampleHint=2
UsePixelShaders=True
DesiredRefreshRate=0
ForceCompression=True
TerrainLOD=0
SkyboxHack=False
LowQualityTerrain=False
Use16bitTextures=False
Use16bit=False
Fifth:
Reboot, hopefully everything should work great. You can additionally use the CoolBits tab on the "nvidia-settings" application to overclock the card. Note however that upon reboot clock settings are lost. You can however issue command-line arguments to nvidia-settings. I wrote a simple script that will overclock the card. It is not advised that you use my clock settings, as your card may not support them, however, you can use the script as a base-line and apply changes specific to your card.
#!/bin/sh
nvidia-settings -a GPUOverclockingState=1 -a GPU3DClockFreqs=571,1044
Where 571Mhz is the core frequency and 1044Mhz is the memory frequency.
Sixth:
Link the libSDL in the UT2004 installation folder to your system compiled libSDL.
mv libSDL-1.2.so.0 libSDL-1.2.so.0-UT2004
ln -s /usr/lib/libSDL-1.2.so.0 libSDL-1.2.so.0
Seventh:
If you have a SoundBlaster Live or SoundBlaster Audigy, see http://ubuntuforums.org/showthread.php?p=257782
By recompiling OpenAL you can gain 10 to 20fps.
Conclusion:
I hope this helped, and please feel free to contribute to this thread-topic. I will continue to update this "HOWTO" should additional clarification be needed or any questions are raised. There may be parts of the configuration that may have adverse affects on cards that are not a 6600GT, however, it couldn't hurt to try. Be sure to "stat fps" in UT2004's console to view your current FPS rate.