[ Print Article! ]

Half-Life 2 Optimization Guide
February 16, 2005 Stathi Chaffie Papadopoulos

Summary: Stathi is back with another optimization guide! This time he tackles Half-Life 2 with an Athlon XP 2600+ testbed. Graphics cards tested include the RADEON 9800 XT and 9500 PRO, as well as the GeForce 6600 GT, GeForce FX 5700 Ultra, and GeForce4 Ti 4200. See the performance and image quality impact all the Half-Life 2 settings have on these cards in this article!


Introduction and Test Bed SetupPage:: ( 1 / 7 )

Pushing FPS’s to the limit.




Testbed setup and explanation


The testbed has changed for this optimization guide. I have added a few more cards to the lineup and have dropped the MX440 8X and the Radeon 8500. The MX440 really has no chance of even pulling 30FPS out of this game with decent quality. I have also dropped using the P4 2.8 as my second machine due to the almost identical results posted in the Unreal Tournament 2004 article. Again, in all fairness I will not be using the fastest mobo and cards, because then optimizing would not be necessary.


[image]

<% print_image("01"); %><% print_image("02"); %>
<% print_image("03"); %><% print_image("04"); %>

System Setup


AMD Athlon 2600+ (Thoroughbred core)

FIC AU11 nForce2 Motherboard

512MB DDR333 Memory

20GB Western Digital Hard Drive

Windows XP Professional SP2

DirectX 9.0c

Half Life 2 Source Engine 7 Build 2279

Half Life 2 custom Timedemo a

Video Cards used for Testing


ATI Radeon 9800 XT
Tyan Tachyon G9500 Pro (unlocked)
Driver Catalyst Version 5.1 (non-ccc)

e-GeForce 6600GT (GeForce 6600GT)
Nvidia GeForce FX 5700 Ultra (GDDR3) Reference Board
ASUS V9280S Ti4200 8X
Driver Forceware Version 66.93




SIDEBAR: The letters KGB stand for Komitet Gosudarstvennoy Bezopasnosti.



The CardsPage:: ( 2 / 7 )

Pre-Game Attributes


Here are the pre-game attributes for the ATI cards to give you a sense of what we are using before we enter the actual game options and tweak them. I did not use Catalyst Control Center for these cards.

[image]

<% print_image("05"); %><% print_image("06"); %><% print_image("07"); %>

And here are the settings for the Nvidia cards I used in this optimization guide.

[image]
<% print_image("08"); %><% print_image("09"); %><% print_image("10"); %>

*Test Notes: Listed are the cards used in this guide and the level of DirectX used in both the software and hardware-side of this game. Keep in mind when viewing benchmarking results that the lower end cards have DirectX limitations (i.e., they aren’t running in DX9 mode), which will adversely affect performance.


 Hardware LevelSoftware Level
ASUS V9280 Ti4200 8x Direct X 8.0 Direct X 9.0
GeForce FX 5700 Ultra Direct X 8.1 Direct X 9.0
Tyan Tachyon G9500 Pro Direct X 9.0 Direct X 9.0
Radeon 9800 XT Direct X 9.0 Direct X 9.0
GeForce 6600GT Direct X 9.0 Direct X 9.0



*Test Notes: This is not a video card comparison article, but an optimization guide for various cards. The Value card was tested at 800x600 and 1024x768. Mainstream cards tested at 800x600, 1024x768 and 1280x1024. The high-end card was tested at 1024x768 and 1280x1024 with AA and AF enabled. All cards were tested using both normal or recommended and maximum settings under the video options menu of the main menu. Direct X levels are kept at their native hardware levels. All resolutions are at 32-bit using the default Direct3D option with Vertical Synchronization enabled.



Main Menu, Model and Texture DetailPage:: ( 3 / 7 )

Main Menu


Two words describe the menus: %&$*@! sweet!. The Main Menus of this game are gorgeous. This game brings so much to the table in terms of graphics it’s unbelievable. From here we can start a new game, load our previous game, see if our friends are playing, or quit. So on to the options menu. From the options menu we click on the video tab. These are all the options available for us to change graphically, and obviously the ones that we are interested in for this article.

[image]

<% print_image("11"); %><% print_image("12"); %>

Settings in Depth



Model Detail

This setting adjusts the polygon count of objects. The higher this is set, the better characters and certain objects in the game will look in terms of shape and structure. With Model Detail set to low, expect higher frames per second at the cost of quality, in regards to characters and creatures. With this settings set to medium, expect decent quality and reduced frames per second. When this is set to high, you can expect the most realism in terms of true shapes, especially in the appearance of people and creatures you encounter. With Model Detail set to high you will experience, especially with the lower end video cards, a noticeable drop in frames per second due to the limited fill rate of the card you are using. Look at the following examples for more info.

[image]

<% print_image("13"); %><% print_image("14"); %>


AMD Athlon XP 2600+
800x600
Performance (Frame rate) Normal Max
Tachyon G9500 PRO 53 52.5
GeForce FX 5700 Ultra 49.9 49.9
ASUS V9280S Ti 4200 8X 49.5 49.4




AMD Athlon XP 2600+
1024x768
Performance (Frame rate) Normal Max
RADEON 9800 XT 53.3 53
RADEON 9800 XT 4xAA/8xAF 50.3 50.1
Tachyon G9500 PRO 49.7 49.7
GeForce 6600 GT 45.3 45
GeForce 6600 GT 4xAA/8xAF 41.9 41.4
GeForce FX 5700 Ultra 47.7 47.6
ASUS V9280S Ti 4200 8X 47.2 47





AMD Athlon XP 2600+
1280x1024
Performance (Frame rate) Normal Max
RADEON 9800 XT 49.8 45.2
RADEON 9800 XT 4xAA/8xAF 49.6 44.5
Tachyon G9500 PRO 43.3 43.1
GeForce 6600 GT 43.2 43.2
GeForce 6600 GT 4xAA/8xAF 36.7 36.5
GeForce FX 5700 Ultra 41.7 39.9




Texture Detail

Texture detail sets the level of texture quality displayed on the screen in terms of terrain and static objects such as grass, buildings, lampposts, cars, etc. This option will be affected not only by the level of DirectX your hardware utilizes, but also heavily on the amount of memory installed on your graphics card. The more memory and the newer the DX level, the better the textures can be accurately portrayed on the screen. Memory acts as the storage of these textures, and less memory on older cards can definitely affect the frames per second of your gaming experience. With this setting on Low, expect the greatest performance with objects looking faded with the least definition. With this setting on Medium one can expect a good blend of performance and quality, with objects being drawn with more definition and detail. When setting to High and paired with Model Detail set to High, one can expect the most realistic portrayal of shapes, curves, and depth of objects and environments at the cost of a few frames per second. The following pictures will help better illustrate the differences between the settings.

[image]

<% print_image("15"); %><% print_image("16"); %>


AMD Athlon XP 2600+
800x600
Performance (Frame rate) Normal Max
Tachyon G9500 PRO 53 50
GeForce FX 5700 Ultra 49.8 49.7
ASUS V9280S Ti 4200 8X 49.5 48.9






AMD Athlon XP 2600+
1024x768
Performance (Frame rate) Normal Max
RADEON 9800 XT 53.3 52.4
RADEON 9800 XT 4xAA/8xAF 50.3 49.6
Tachyon G9500 PRO 49.5 46.5
GeForce 6600 GT 44.3 43.5
GeForce 6600 GT (4xAA/8xAF) 41.9 38.6
GeForce FX 5700 Ultra 47.5 47.1
GeForce FX 5700 Ultra 47.2 46





AMD Athlon XP 2600+
1280x1024
Performance (Frame rate) Normal Max
RADEON 9800 XT 49.8 49.4
RADEON 9800 XT 4xAA/8xAF 49.6 42.9
Tachyon G9500 PRO 42.8 40.5
GeForce 6600 GT 43.2 41.9
GeForce 6600 GT (4xAA/8xAF) 36.7 5*
GeForce FX 5700 Ultra 40.9 39.5



*The eVGA e-GeForce 6600GT ran at 5.0 FPS even after rebooting, letting the card sit for a few minutes, and after restarting the game a few times. Likely a software flaw.



SIDEBAR: Jakub wishes he were an American.



Water Detail, Shadow and Shader Detail.Page:: ( 4 / 7 )


Water Detail

This setting changes the amount of detail set for the water and its reflections. This setting set to Simple Reflections will reflect basic things like buildings and hills. Setting this to Reflect World increases the quality of the reflections rendered in low mode. Setting this to Reflect all reflects everything from grass to distant smokestacks to trees from afar. Look at the following snapshots to see the differences between the options available.

[image]

<% print_image("17"); %><% print_image("18"); %><% print_image("19"); %>


AMD Athlon XP 2600+
800x600
Performance (Frame rate) Simple World All
Tachyon G9500 PRO 53 52.7 51.8
GeForce FX 5700 Ultra 51.4 51.2 51.2
ASUS V9280S Ti 4200 8X 50.1 49.9 49.9





AMD Athlon XP 2600+
1024x768
Performance (Frame rate) Simple World All
RADEON 9800 XT 66.7 66.7 53.7
RADEON 9800 XT (4xAA/8xAF) 47.6 47.7 45
Tyan Tachyon G9500 PRO 49.5 49.3 45.1
GeForce 6600 GT 53.2 53 46.5
GeForce 6600 GT (4xAA/8xAF) 41 40.6 38.3
GeForce FX 5700 Ultra 41.5 41.4 41.4
ASUS V9280 Ti4200 8X 40.4 40.4 40.3




AMD Athlon XP 2600+
1280x1024
Performance (Frame rate) Simple World All
RADEON 9800 XT 51.3 51.1 46.1
RADEON 9800 XT (4xAA/8xAF) 34.4 34.1 32.4
Tyan Tachyon G9500 PRO 49.5 49.3 45.1
GeForce 6600 GT 43.1 42.9 38.7
GeForce 6600 GT (4xAA/8xAF) 27.5 27.1 25.7
GeForce FX 5700 Ultra 28.3 28.2 28.2




*Test Notes: Using Canals Timedemo for Water Detail Benchmarks


Shadow Detail

Setting Shadow Detail to low will essentially enable blob shadows for characters and objects on screen. The shadows are blurry and lack definition, but truth be told look halfway decent compared to some games. Setting Shadows to High enables real-time shadows, portraying how light would actually reflect off of animate and inanimate objects in real life. Set this option to high for ultimate realism. See the corresponding pictures I have below to see examples of the two settings.

[image]

<% print_image("20"); %><% print_image("21"); %>

AMD Athlon XP 2600+
800x600
Performance (Frame rate) Normal Max
Tachyon G9500 PRO 53 49.6
GeForce FX 5700 Ultra 49.9 46.9
ASUS V9280S Ti 4200 8X 49.5 46.2




AMD Athlon XP 2600+
1024x768
Performance (Frame rate) Normal Max
RADEON 9800 XT 53.3 49.6
RADEON 9800 XT 4xAA/8xAF 50.3 48.1
Tachyon G9500 PRO 49.1 47.8
GeForce 6600 GT 44.3 43.5
GeForce 6600 GT (4xAA/8xAF) 41.9 41
GeForce FX 5700 Ultra 47.7 45.4
ASUS V9280S Ti 4200 8X 47.2 44.1




AMD Athlon XP 2600+
1280x1024
Performance (Frame rate) Normal Max
RADEON 9800 XT 49.8 47
RADEON 9800 XT 4xAA/8xAF 49.6 43.8
Tachyon G9500 PRO 43.5 41.8
GeForce 6600 GT 43.2 41.8
GeForce 6600 GT (4xAA/8xAF) 36.7 36.3
GeForce FX 5700 Ultra 41.7 40.4




Shader Detail

Determines the level of shaders used in every scene. (This is dictated by the level of DirectX your hardware supports.) Although almost unnoticeable (in some levels of the game) to the untrained eye, this option can put a heavy hit on older cards when set to high. Cards with less than 128MB of memory should set Shader Detail to low to preserve precious frames per second. Cards like the 9800XT or 6600GT and newer can set this to High without having to worry about making the game unplayable. Below are pictures pulled from the game to show you the differences in Shader Detail when set to high and low.

[image]

<% print_image("22"); %><% print_image("23"); %>

AMD Athlon XP 2600+
800x600
Performance (Frame rate) Normal Max
Tachyon G9500 PRO 53 50.4
GeForce FX 5700 Ultra 49.9 46.1
ASUS V9280S Ti 4200 8X 49.5 46.2




AMD Athlon XP 2600+
1024x768
Performance (Frame rate) Normal Max
RADEON 9800 XT 53.3 51.1
RADEON 9800 XT 4xAA/8xAF 50.3 49.5
Tachyon G9500 PRO 49.7 49.1
GeForce 6600 GT 44.3 44
GeForce 6600 GT 4xAA/8xAF 41.9 41.3
GeForce FX 5700 Ultra 47.7 44
ASUS V9280S Ti 4200 8X 47.2 44.2




AMD Athlon XP 2600+
1280x1024
Performance (Frame rate) Normal Max
RADEON 9800 XT 49.8 49.4
RADEON 9800 XT 4xAA/8xAF 49.6 44.3
Tachyon G9500 PRO 42.9 41.6
GeForce 6600 GT 43.2 43
GeForce 6600 GT 4xAA/8xAF 36.7 36.7
GeForce FX 5700 Ultra 41.7 38.5





SIDEBAR: A goldfish has a memory span of three seconds.


Recommended SettingsPage:: ( 5 / 7 )


Starting with...

Higher-end Cards: ATI Radeon 9800XT, GeForce 6600GT

-GeForce 6600GT:
This card produced decent numbers across the board except when running 1280x1024 with 4xAA and 8xAF in Max Texture quality mode. I could not get the card to give me more than 5FPS. I am pretty intent on calling this a software glitch of some sort. On the configuration used, I would recommend 1280x1024, setting all in game options to High except for Texture Detail (set to Medium), Shadows set to Low, and enable only 8xAF. This should give you great quality and sufficient framerate. If your system is inferior to mine, then try the settings above at 1024x768 and max out Texture Detail and Shadows and exclude 8xAF.

-Radeon 9800XT:
The 9800XT consistently provided good framerates and great quality even at higher resolutions. You can pretty much run this card with all of the settings listed above set to maximum at 1280x1024 and turn on 4xAA and 8xAF and enjoy very smooth gameplay without any choppy frames. 6xAA and 16xAF were glitchy and artifacts were showing up on screen in busy areas of the game at 1280x1024.


Mainstream Cards: Tyan Tachyon G9500 Pro, GeForce FX 5700 Ultra (GDDR3)

- RADEON 9500 Pro:
I’m still amazed at how well this card performs with its inception over two years ago. It consistently hit near 50’s in regards to FPS on all tests run at 1024x768. This is nice to know considering most budget gamers are running at this resolution and trying to balance quality and performance. At 1024x768, set everything to High Quality mode and enjoy the gameplay. If it runs sort of shoddy on your configuration, try lowering settings for Texture Detail and Shadow Detail. At 1280x1024 I recommend Model Detail set to High, Textures Detail set to High, Simple Reflections for Water Detail, Shadow and Shader Detail set to low.

-GeForce FX 5700 Ultra (GDDR3):
The FX 5700 Ultra reference board did a good job of maintaining around 40 frames per second in most of the tests run for this guide. Since this card is native to Direct X 8.1, some of the results will be closer to cards superior to it due to the aforementioned limitation. At 800x600, set everything to max and it runs fine. I would say this is a solid performer at High Quality in Model Detail, Texture Detail set to High, Simple Reflections, Shadow and Shader set to Low at 1024x768. I really don’t recommend this at 1280x1024 since you will lose much visual quality in textures and models, which are a big part of the game.


Value Card: ASUS V9280 Ti4200 8X

-GeForce4 Ti4200 8X:
As with the FX 5700 Ultra, you can go ahead and set everything to High Quality and run pretty smooth at 800x600. At 1024x768, set Texture Detail to High, Model Detail to Medium, Simple Reflections, Shadow Detail to High, and Shader Detail to Low. The reason I recommend this is because textures have a big part in the appearance of the game, and keeping Textures and Shadow Detail set to High Quality make the world look more realistic, and that’s what we are shooting for.

*Remember some of these game settings are very CPU dependent, so a faster machine than the ones used in these tests will provide better results.



SIDEBAR: Greek people do not eat Gyros as much as people think they do.


Console commandsPage:: ( 6 / 7 )

Want to try some of the benchmarks that I have done for you by yourself? Well, I will go through a short list of console commands and explain what they do and then I will give you some cool tips and tricks to maximize the functionality of the game.

Enabling the Console

Follow the pictures I have taken below in sequence and it will be enabled.

[image]

<% print_image("24"); %><% print_image("25"); %><% print_image("26"); %>
<% print_image("27"); %><% print_image("28"); %>

Console Commands and Tweaks


-Recording a timedemo:
During gameplay, click on the ~ button on the top left of your keyboard next to the number 1. Type record demoname, where demoname is what you will name the saved demo (ex. record a). This timedemo will be stored in your Half Life 2 directory. Most users follow this path to find it: C:\\ProgramFiles\\Valve\\Steam\\SteamApps\\name@name.com\\half-life 2\\hl2. To stop the recording of the demo enter the console and type stop.

-Running a timedemo:
When you are ready to start benchmarking your rig, open the console and type timedemo demoname, where demoname is the name you gave to the timedemo when creating it. When the timedemo is done, you will exit back to the console, where you will be given the number of seconds to finish the demo, the average framerate, and the variance.

-Forcing different levels of Direct X:
To force your hardware to use older Direct X rendering paths, you can achieve this by opening the console window and typing mat_dxlevel # where # is the level of Direct X you are attempting to force. Examples are 70, 80, 81, and 90 (7.0, 8.0, 8.1, and 9.0). This can be used to increase the current framerate at the cost of quality of the on screen images.

-Setting the in-game refresh rate:
To change the refresh rate to the one used by your monitor, get into the console and type –refresh XX where XX is the rate used by your monitor in Windows (85 for instance).

-Setting the heap size: You know those annoying pauses you get when going through a door or up a ladder and changing scenes. Don’t you think they are too long? Well, if you would like to reduce those times, you can increase what is known as your heap size. This is memory that is allocated for game information and level storage. Increasing this can heavily reduce loading times in the middle of the level when you go through that door or walk down those stairs. Right click on the Half Life 2 desktop icon, click properties and add -heapsize XX to the end of target command line where XX is the allocated memory for the heap. If you have 512, don’t allocate more than 256. If you have 1GB, don’t allocate more than 512. If you have 128, you probably should not be playing this game.

-Faster loading into Half Life 2:
To reduce the loading time of Half Life 2, right click on your Half Life 2 desktop shortcut and click properties. At the end of the Half Life 2 target, add “-console” without the “”. With this property added to the command line, you will go right into the Half Life 2 Main Menu screen, bypassing all the screens before it. The Main menu will have the blurred look you get when you first get to it normally and will have the console window opened.



SIDEBAR: Brandon is harder to get a hold of than a stick of soap in a greasepit.


ConclusionPage:: ( 7 / 7 )


The RADEON 9800XT did very well in all tests even with anti-aliasing and anisotropic filtering enabled. The card ran smooth and even though it was capped by the CPU it produced unbelievably beautiful environments and scenes. As stated in my previous article “You get what you pay for”.

The GeForce 6600GT did well in some tests too, but was not as impressing. The card overheated a few times and froze up a couple times at higher resolutions when AA and AF were enabled. I’m not sure if driver issues caused these problems along with the 5 frames per second test I ran, but the card didn’t leave me with a good impression of it.

The G9500 Pro did a fantastic job in these tests, staying neck and neck with the GeForce 6600GT for the most part, even at 1280x1024. Of course, once AA and AF are turned on, the GeForce 6600 GT’s 16GB/sec of peak memory bandwidth (nearly double that of the 9500 Pro) will really begin to kick in, allowing it to really break away from the 9500 Pro.

The FX 5700 Ultra did a great job too, only dipping into the 30 FPS range when everything was set to maximum at 1024x768 or when playing at the1280x1024 in busy scenes.

The Ti4200 was a solid performer at 800x600 and at 1024x768 only off the pace of the 5700 Ultra by a few frames. But do yourself a favor and don’t try this one at 1280x1024, you probably won’t enjoy it too much.

So as usual, another great game, another Optimization Guide. Who knows what is next. A game that promises virtual reality, or maybe a first person shooter that is based in a constantly changing online world? What I do know is that I can’t wait to actually start playing this game for real now. It is single handedly the best game out right now for first person shooters. It was a long wait, but it was well worth it my friends. Until next time, keep fraggin!

*Special Thanks to Mr. Zegers, Mr. Angelini, and Mr. Nataatmaja for their input.

*Note: This is not a video card comparison article, but a tweaking guide for various cards. Overclocking your video card may result in higher FPS, but may also lead to display corruption.





SIDEBAR: The word 'pixel' is a contraction of either 'picture cell' or 'picture element.'

© Copyright 2003 FS Media, Inc.
[ Print Article! | Close Window ]