If geeks love it, we’re on it

How to get maximum image quality in Team Fortress 2

How to get maximum image quality in Team Fortress 2

TF2 maximum configuration

Even though Team Fortress 2 was first released in 2007 using a modified version of the famous Source engine, it still looks totally modern and relevant in today’s gaming terms. The cel-shaded art style lends itself well to all manner of video hardware, from relatively budget GPUs to the ultra high-end.

If you’re one of the people who stays ahead of the curve on GPU hardware, though, you may think to yourself, “is there any way to make it look even better?” You’ve probably seen the TF2 “Meet The…” videos and wondered if it was possible to get that kind of nearly cinema-quality rendering from this game.

Well, if you have a high-end GPU, the answer is now “Yes, just about…”

A few dedicated graphics professionals and gamers have crafted what is most likely the ultimate quality configuration for Team Fortress 2. The configuration file that is provided here will introduce many subtle but noticeable visual enhancements to the game. A list of some of the enhancements:

  • Very high-detail objects, even far into the distance.
  • High-quality water, with reflections of all in-game objects the engine supports.
  • Bullets impacting a wall are now more detailed, as they’re rendered in the 3D engine rather than by sprites. This is most pronounced with a heavy’s gun against a corrugated steel wall.
  • If you burn a player that gets gibbed, their gibs will be flaming too.
  • Lighting is now much more accurate on objects with respect to light sources available in the world.
  • Character models no longer reduce their quality if they are beyond a certain distance from the player.
  • Physics-enabled bodies, like players, now dynamically interact with one another.

The configuration also provides enhanced support for multi-core CPUs, with support for 4-, 6-, and 8-thread configurations.

TF2 normal settings

Normal Settings

This configuration is credited to a few dedicated TF2 community members from FacePunch and Fakkelbrigade as well as Icrontic’s own Thrax. You can either download the .txt file, make the CPU core edits appropriate to your system in notepad or another text editor, and save it as autoexec.cfg in Steam\steamapps\YOURACCOUNT\team fortress 2\tf\cfg\ or you can cut and paste the full text from this article below.

Maximum quality TF2 settings

An example of maximum quality

Please note that this configuration requires a pretty strong machine. If it doesn’t work or you display graphical weirdness, it’s because your computer cannot handle it. The configuration has been tested and works fine on very high-end systems.

This seems like a good opportunity to shamelessly pimp our own awesome TF2 community. If you’re looking for a group of friendly, welcoming, and (when appropriate) mature gamers to hang out with, you’ve found the right place.

Without further ado:

//========= Credits = Quantuam VTX, Facepunch, 1/4 Life, #christf2 and Thrax ============//
// Purpose: Ultimate Team Fortress 2 quality config.
// If you have a quad core CPU, add "-threads 4" as a launch option.
// If you have a hexa core CPU, add "-threads 6" as a launch option.
// If you have an octo core, or a quad core with hyperthreading (i7, Core 2 Extreme) add "-threads 8" as a launch option.

// Multithreading
host_thread_mode 0
r_threaded_client_shadow_manager 1 //Threaded world and flashlight shadows.
r_threaded_particles 1 //Threaded particles (Defaults to 1)
r_threaded_renderables 1 //Threaded renderables
r_queued_decals 1 //Queued decals.
r_queued_post_processing 1 //Queued post processing.
r_queued_ropes 1 //Queued ropes.
cl_threaded_bone_setup 1 //Threaded bones and animations.
cl_interp_threadmodeticks 1ss
mat_queue_mode -1

// Renderer
//BELOW: Enables software AA at maximum quality. Software AA works alongside normal AA, and helps to remove further
//aliasing, such as power lines. Little to no frame loss with this enabled.
mat_software_aa_quality 2
mat_software_aa_strength 2
mat_software_aa_strength_vgui 2
mat_software_aa_blur_one_pixel_lines 0.5
mat_software_aa_edge_threshold .8
fps_max 132 // Max FPS set to 2x network update rate for optimal performance
r_3dsky 1 // Uses high-quality skybox
mat_bumpmap 1 // Enable bumpmapping
mat_compressedtextures 1 // Enable DirectX texture compression
mat_envmapsize 1024 // Raises the allowable physical dimensions of a texture
mat_envmaptgasize 1024 // Raises the allow physical dimensions of a sprayed texture
mat_postprocess_x 8 // Improves post-processing effects
mat_postprocess_y 8 // Improves post-processing effects
mat_reducefillrate 0 // Disables fillrate reductions
mat_parallaxmap 1 // Enables parallax mapping
mat_specular 1 // Enables specular lighting
mat_vsync 1 // Enables vsync

// Hardware AA+AF
mat_forceaniso 16
mat_antialias 8
mat_aaquality 0

//Better Water
r_waterdrawreflection 1
r_waterdrawrefraction 1
r_waterforceexpensive 1
r_waterforcereflectentities 1
mat_wateroverlaysize 512

// Better shadows
r_shadowmaxrendered 1024
r_shadowrendertotexture 1
r_shadows 1

// Texture Quality
mat_picmip -10 //"Ultra High" textures.
mp_usehwmmodels 1 / /Uses the high quality faces from the "meet the" videos.
mp_usehwmvcds 1 // Use high quality facial animations.
r_eyeglintlodpixels 12 // Allows eyes to be rendered at full quality across the map.

// Physics (Increases CPU usage in some situations. Don't use this if you're not running Multicore.)
cl_ragdoll_collide 1 //Clientside ragdolls collide with other clientside ragdolls.
cl_phys_props_max 1024 // Increases the number of non-player physics objects in the game world

// Team Fortress 2 Effects
cl_new_impact_effects 1 // Uses rendered particles instead of sprites for bullet impacts.
cl_burninggibs 1 // If a player is on fire and gibs, his gibs are on fire too.

// HDR, Distance Viewing
mat_hdr_level 2 //Better HDR.
cl_maxrenderable_dist 8096 // Makes everything outside the map visible.
cl_detaildist 8096 // Makes everything outside the map visible with high detail.
lod_transitiondistance 8096 // Makes everything outside the map maintain highest detail settings beyond the viewable distance.

// Lighting, motion blur and bloom
r_lod 0 // Removes "Level Of Detail" from models.
r_rootlod -10 // Fixes the min/max level of detail at ultra-high
mat_motion_blur_enabled 1 // Enables motion blur
mat_motion_blur_forward_enabled 1 // Enables small motion blur with forward movement
mat_motion_blur_strength 1 // Increases the motion blur strength moderately
r_avglight 3

//Models, Rain, Decals
mp_decals "4096" //Maximum number of decals visible at one time.
r_propsmaxdist "8096" //Maximum visible distance for props.
r_rainradius "8096" //Makes the radius of rain fall around you larger, so you can see the rain from further away.
r_rainsplashpercentage "100" //Sets the percentage that the rain makes a splash in the water.
r_avglight "3" //Puts more lighting on objects.
r_decals "4096" // Sets the amount of decals, like bullet holes, that stay on objects.
r_maxmodeldecal "100" //Sets the amount of decals that appear on models.
cl_detailfade 0 // Don't lower background details as a function of distance

// Textures
r_lod 0 //Removes "Level Of Detail" from models.
r_rootlod -10 // Ultra high player model detail

// Other
jpeg_quality 100 //Better quality screenshots with F5.
m_rawinput 1
r_fastzreject 1 // Uses the GPU to perform z-culling

// Good connection
cl_cmdrate 66
cl_interp 0.0152
cl_interp_ratio 1
cl_lagcompensation 1
cl_pred_optimize 2
cl_smooth 0
cl_smoothtime 0.01
cl_updaterate 66
rate 60000

echo ***************************************
echo *=====================================*
echo * Ultimate TF2 Quality Config Loaded! *
echo *=====================================*
echo ***************************************


  1. Bandrik
    Bandrik Someday... I will be able to use this.

    Meanwhile, awesome work Thrax. There's some serious tech-fu mojo going on here.
  2. Thrax
    Thrax And if you get random crashing, delete the entire multi-threading section!
  3. QuadWhore
    QuadWhore What do you consider high end?
  4. Preacher
    Preacher This is good stuff. Thanks, Thrax.
  5. Thrax
    QuadWhore said:
    What do you consider high end?
    Something that's comfortable running 8x anti-aliasing and 16x anisotropic filtering at at least 60 FPS at all times.
  6. Tim
    Tim "if you burn a player that gets gibbed".... What is gibbed? Blown up? If so, just say blown up!

    And how do I download this code and click Next to install it? We need to get it to that point.
  7. primesuspect
  8. Colby boucher
    Colby boucher how do you use this? should i copy to notepad and save to the cfg folder?
  9. overwatch840
    overwatch840 Where do you put the -threads x thing
  10. sheridanm962
    sheridanm962 @overwatch840

    In your TF2 launch options (right click the game and go into properties and then click launch options). :D
  11. csimon
    csimon @Thrax ...I did get the random crash total reboot thing yesterday. After I deleted everything except for steam.exe and steamapps folder I ran steam.exe and everything was rebuilt. I reinstalled the "-threads 6" (1100T X6) but the next time I ran it I paused F@h smp and it ran fine all day. Not sure if this was the issue or not but will def keep an eye out.
  12. M1GU31
    M1GU31 I know this is a old post but makes me crash everytime I load it up even remoiving multithreading. Running a 6870 and phenom ii x4 925
  13. MarioFan3
    MarioFan3 I'm getting the same issue as the guy above me. It works fine for about a minute and then crashes, even with the multithreading removed.

Howdy, ! Got something to say?