Garry's Mod

Garry's Mod

135 ratings
Garry's Mod More Fps Configurations
By Fray and 1 collaborators
This is a list with a bit of configurations and commands that you can use for increasing your fps.


I Have seen that many people have fps problems on Gmod, so basically, its for this reason that I wanted to create this guide, even to use it for personal uses.
I hope this guide will help you somehow also because we spent about 1 month to create this guide and Testing everything command one by one and and confirm that everything works as intended. i hope you appreciate the efforts.

Important: it works with every source games.

Very soon we will add other new commands and new configurations.

If you have any kind of problems with this guide please comment specifying exactly what the problem is, for help you in the best way.

   
Award
Favorite
Favorited
Unfavorite
Before - After SCREENSHOTS
















Note: This config you can see in the screenshots has all graphics-changing commands from this list.
The in-game video settings were at the beginning at the maximum and changed
automatically after opening the cfg.
How To Do it
I will tell you in X steps how to create a config file with all your commands you've been choosen here.
1. Go to your Gmod cfg folder -> Steam\steamapps\common\GarrysMod\garrysmod\cfg.
2. Choose a .cfg file (for example config.cfg) and copy it to your desktop.
3. Open this file on your desktop with Notepad++ or Sublime Text 3 - Right click and open with...
4. Remove the content from your opened file.
5. Copy and insert the commands you'd like to choose from this guide.
Be sure to remove the comments after the commands, for example:
cl_example "0" (Hello world)

6. When you're finished, save the file. Do not click on save as, only save.
7. Rename your edited file on your desktop. (for example "Fps")
8. Put this file back into the gmod cfg folder.
9. Now you can close all things and open up Garry's Mod.
10. Open the console and write in: exec Fps.cfg (the name you created for the file)
Gmod should freeze now for a few seconds.
11. Now you can play with a high fps boost.
12. If you restart gmod, you have to open the file everytime, so you can decide if you want to open it or not.

IMPORTANT: It's highly recommended not to use all commands. Your game might be unstable or unplayable. I WARNED YOU.

Paste Data Part 1
Unexplained crashes? Try changing mat_queue_mode to "-1"
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Launch options: (right click on Garry's Mod in the steam library, properties, set launch options)
IMPORTANT: Remove -dxlevel 81 from the launch options after the first launch!
Fullscreen: -dxlevel 81 -full -w WIDTH -h HEIGHT -console -novid -useforcedmparms -noforcemaccel -noforcemspd
Windowed: -dxlevel 81 -sw -w WIDTH -h HEIGHT -console -noborder -novid -useforcedmparms -noforcemaccel -noforcemspd
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Fps cap:

fps_max 132 (Commented due to jittering when fps is capped for some)
fps_max 0
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Net settings:

LAN
cl_cmdrate 66 (Number of command pakets sent to the server per second.)
cl_interp 0 (We let cl_interp_ratio do the limiting, this just sets it to the minimum available.)
cl_interp_ratio 0 (Sets the interpolation amount (final amount is cl_interp_ratio / cl_updaterate))
cl_lagcompensation 0 (Perform server side lag compensation of weapon firing events.)
cl_pred_optimize 2 (Optimize for not copying data if didn't receive a network update (1), and also for not repredicting if there were no errors (2))
cl_smooth 0 (If set to 1 attempts to smooth the view after prediction errors.)
cl_smoothtime 0.01 (Time over which to smooth the view after prediction errors if cl_smooth is enabled.)
cl_updaterate 66 (Number of packets per second you are requesting from the server.)
rate 60000 (Max bytes/sec the host can receive data.)

Good connection
cl_cmdrate 66 (Number of command pakets sent to the server per second.)
cl_interp 0 (Interpolate x seconds from game (0.02 = 20ms))
cl_interp_ratio 1 (Sets the interpolation amount (final amount is cl_interp_ratio / cl_updaterate))
cl_lagcompensation 1 (Perform server side lag compensation of weapon firing events)
cl_pred_optimize 2 (Optimise for not copying data if didn't receive a network update (1), and also for not repredicting if there were no errors (2))
cl_smooth 0 (If set to 1 attempts to smooth the view after prediction errors.)
cl_smoothtime 0.01 (Time over which to smooth the view after prediction errors if cl_smooth is enabled.)
cl_updaterate 66 (Number of packets per second you are requesting from the server.)
rate 60000 (Max bytes/sec the host can receive data.)

Bad connection
cl_cmdrate 66 (Number of command pakets sent to the server per second.)
cl_interp 0 (Interpolate x seconds from game (0.02 = 20ms))
cl_interp_ratio 2 (Sets the interpolation amount (final amount is cl_interp_ratio / cl_updaterate))
cl_lagcompensation 1 (Perform server side lag compensation of weapon firing events.)
cl_pred_optimize 2 (Optimize for not copying data if didn't receive a network update (1), and also for not repredicting if there were no errors (2))
cl_smooth 0 (If set to 1 attempts to smooth the view after prediction errors.)
cl_smoothtime 0.01 (Time over which to smooth the view after prediction errors if cl_smooth is enabled.)
cl_updaterate 40 (Number of packets per second you are requesting from the server.)
rate 60000 (Max bytes/sec the host can receive data.


Spy settings
cl_updaterate 67 (Number of packets per second you are requesting from the server.)
cl_cmdrate 67 (Number of command pakets sent to the server per second.)
cl_interp_ratio 1 (Sets the interpolation amount (final amount is cl_interp_ratio / cl_updaterate))
cl_interp .015 (Interpolate x seconds from game (0.02 = 20ms))
rate 100000 (Max bytes/sec the host can receive data.)
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Sprays:

Disable sprays
cl_playerspraydisable 1
r_spray_lifetime 0

Enable sprays (uncomment this section if you want these settings)
cl_playerspraydisable 0
r_spray_lifetime 2
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Shadows:

Disable shadows
mat_shadowstate 0
r_shadowmaxrendered 0
r_shadowrendertotexture 0
r_shadows 0

Enable shadows
mat_shadowstate 1
r_shadowmaxrendered 11
r_shadowrendertotexture 1 (Non-blobby shadows. Sometimes turned on by competitive Team Fortress 2 players to see opponents standing near the other side of a wall. You may see some performance loss from setting this to `1'.)
r_shadows 1
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Facial features:

Disable facial features
r_eyes 0
r_flex 0
r_lod 2
r_rootlod 2
r_teeth 0

Enable facial features
r_eyes 1
r_flex 1
r_lod 1 (Needs to be set to 1, otherwise they will still be disabled)
r_rootlod 1
r_teeth 1
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Graphical:

cl_detaildist 0
cl_detailfade 0
cl_drawmonitors 0
cl_ejectbrass 0
cl_jiggle_bone_framerate_cutoff 0 (Turns off jigglebones)
cl_new_impact_effects 0
cl_show_splashes 0
func_break_max_pieces 3
glow_outline_effect_enable 0 (Cart glow effect)
lod_transitiondist 0
mat_antialias 0
mat_bumpmap 0 (Controls bumpmapping. Setting this to 0 on dx9 will cause a strange "shine" effect to appear on all players.)
mat_colcorrection_disableentities 1
mat_colorcorrection 0
mat_disable_bloom 1
mat_disable_fancy_blending 1
mat_disable_lightwarp 1
mat_envmapsize 8
mat_envmaptgasize 0
mat_filterlightmaps 0
mat_filtertextures 0
mat_forceaniso 0
mat_hdr_level 0
mat_max_worldmesh_vertices 512
mat_monitorgamma 1.7 (Controls brightness, try 1.8 to make it brighter or 2.2 //line 426 to get it darker. Only works in fullscreen)
mat_motion_blur_enabled 0
mat_parallaxmap 0
mat_picmip 2 (Higher = more mipmapping. Without `sv_cheats 1', you're looking at a range from -1 to 2, -1 being the best quality, 2 being the worst.)
mat_reducefillrate 1
mat_reduceparticles 1
mat_specular 0 (Controls specularity. Setting this to 0 will make ubers non-shiny, and will remove some specular effects from in-game entities which support it. Setting this to 1 on dx8 will result in some strange "fire" textures replacing their appropriate counterparts, especially on medals, and certain hats)
mat_trilinear 0
mat_viewportscale 1 (Almost no performance gain from viewport upscaling)
mat_viewportupscale 1
mat_wateroverlaysize 1
mp_decals 1 // "9" (is a good value to still see the spread pattern from a scattergun without any real performance loss.)
r_3dsky 0
r_ambientboost 0
r_ambientfactor 0
r_ambientmin 0
r_avglight 0
r_cheapwaterend 1
r_cheapwaterstart 1
r_decals 1
r_decalstaticprops 0
r_decal_cullsize 15
r_drawdetailprops 0
Paste Data Part 2
r_drawmodeldecals 0
r_drawflecks 0
r_dynamic 0
r_flashlightdepthtexture 0
r_forcewaterleaf 1
r_lightaverage 0
r_maxnewsamples 2
r_maxsampledist 1
r_propsmaxdist 0
r_renderoverlayfragment 0
r_staticprop_lod 4
r_waterdrawreflection 0
r_waterdrawrefraction 0
r_waterforceexpensive 0
r_waterforcereflectentities 0
rope_averagelight 0
rope_collide 0
rope_rendersolid 0
rope_shake 0
rope_smooth 0
rope_subdiv 0
rope_wind_dist 0
tf_particles_disable_weather 1 (Disable weather effects on maps supporting it, for example, setting this to `1' disables rain effects on *_sawmill.)
tracer_extra 0
violence_ablood 1
violence_hblood 1
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Misc

in_usekeyboardsampletime 0
mat_clipz 1 (FX card users should set this to 0)
mat_forcehardwaresync 0
mat_levelflush 1
m_rawinput 1 (Turn on raw mouse input. Commented out by default due to silly incompatibility with the Xfire overlay. You should use it if you can!)
mat_vsync 0 (Turn off vsync to avoid nasty I/O latency.)
r_fastzreject -1 (Values >1 enable a fast Z rejection algorithm, to be performed on the GPU (as opposed to on the CPU. The value `-1' autodetects hardware support for this feature, which is safer than forcing it.)
cl_forcepreload 1 (Force preloading)
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Sound

dsp_enhance_stereo 0
dsp_slow_cpu 1
snd_async_fullyasync 1 (Having the sound run fully asynchronous has been helpful in the past, as it seems to for whatever reason reduce the number of TDRs experienced during gameplay. There's some pretty good information on TDRs here:)
http://forums.nvidia.com/index.php?showtopic=65161
snd_pitchquality 0
snd_spatialize_roundrobin 1
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Threading

mat_queue_mode 2 (mat_queue mode is another frequently asked about cvar, it defines the threading method to be used by the material system. It has been unstable to use in the past, but nowadays it's generally okay.)
Here are the possible values:
-2 legacy default
-1 default
0 synchronous single thread
1 queued single thread
2 queued multithreaded
If you have problems with the value "2", try setting it to "-1".
As an aside, there are quite a few bugs in the demo system that occur when mat_queue_mode is set to a value that is not "-1". If you intend to do work with the demo system, maybe you should change this.

cl_threaded_bone_setup 0
cl_threaded_client_leaf_system 0
r_queued_decals 0
r_queued_ropes 1
r_queued_post_processing 1
r_threaded_client_shadow_manager 0
r_threaded_particles 0
r_threaded_renderables 1
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Fps Config

mat_mipmaptextures "1" (texture quality decreases with distance)
mat_bufferprimitives "1"
mat_compressedtextures "1"
mat_debugdepthval "0"
mat_debugdepthvalmax "0"
mat_hdr_enabled "0"
mat_use_compressed_hdr_textures "1"
mat_aaquality "0"
mat_softwarelighting "0"
mat_autoexposure_max "0"
mat_autoexposure_min "0"
mat_bloomscale "0"
mat_bloom_scalefactor_scalar "0"
mat_disable_ps_patch "1"
mat_fastspecular "1"
mat_fastnobump "0"
mat_forcemanagedtextureintohardware "0"
mat_framebuffercopyoverlaysize "0"
mat_diffuse "1"
mat_software_aa_blur_one_pixel_lines "0"
mat_software_aa_strength "0"
mat_software_aa_strength_vgui "0"
mat_software_aa_tap_offset "0"
mat_alphacoverage "0"
mat_non_hdr_bloom_scalefactor "0"
mat_maxframelatency "0"
snd_mixahead "0.1"
dsp_volume "1"
dsp_spatial "40"
dsp_speaker "50"
dsp_water "14
soundscape_flush "1" (Flushes the server & client side soundscapes)
r_unloadlightmaps "0" (0 because of alt tabbing causes black walls)
r_dopixelvisibility "0"
r_PhysPropStaticLighting "0"
r_occlusion "1" (Activate/deactivate the occlusion system.)
r_worldlights "0" (number of world lights to use per vertex)
r_3dnow "0" (Enable/disable 3DNow code)
r_sse2 "1" (Enable/disable SSE2 code)
r_ropetranslucent "0"
r_drawbatchdecals "0"
r_hunkalloclightmaps "0"
r_maxdlights "0"
r_maxmodeldecal "0"
r_minnewsamples "0"
r_bloomtintg "0"
r_bloomtintb "0"
r_bloomtintexponent "0"
r_bloomtintr "0"
r_lightcache_zbuffercache "0"
cl_clearhinthistory "1" (Clear memory of client side hints displayed to the player.)
cl_muzzleflash_dlight_1st "0"
cl_predictweapons "1"
cl_predict "1"
tf_playergib "0"
cl_showhelp "0"
cl_showpluginmessages "0" (Allow plugins to display messages to you)
cl_rumblescale "0" (Scale sensitivity of rumble effects (0 to 1.0))
cl_debugrumble "0" (Turn on rumble debugging spew)
cl_ragdoll_collide "0"
rope_smooth_enlarge "0" (How much to enlarge ropes in screen space for antialiasing effect)
sv_forcepreload "1" (forces preload to help increase performance)
jpeg_quality "100" (jpeg screenshot quality.)
commentary "0" (desired commentary mode state)
flex_smooth "1" (Applies smoothing/decay curve to flex animation controller changes.)
prop_active_gib_limit "0"
showhitlocation "1"
gl_clear "0"
muzzleflash_light "0"
overview_mode "0" (Sets overview map mode off,small,large: <0|1|2>)
adsp_debug "0"
mp_usehwmmodels "0"
mp_usehwmvcds "0"
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Commands

gmod_mcore_test "1"
mat_disablephong "1"
cl_software_cursor "1"
m_customaccel_exponent "0"
m_customaccel_max "0"
m_customaccel_scale "0"
m_forward "1"
m_mousespeed "1"
nb_shadow_dist "0"
r_eyegloss "0"
r_eyemove "0"
r_eyeshift_x "0"
r_eyeshift_y "0"
r_eyeshift_z "0"
r_eyesize "0"
blink_duration "0"
r_ragdoll_pronecheck_distance
mat_software_aa_quality "0"
mat_software_aa_edge_threshold "9"
host_thread_mode "1"
studio_queue_mode "1"
rope_smooth_maxalpha "0"
rope_smooth_maxalphawidth "0"
rope_smooth_minalpha "0"
rope_smooth_minwidth "0"
mat_phong 0
m_filter "0"
m_customaccel "0"
m_mouseaccel1 "0"
m_mouseaccel2 "0"
ai_expression_optimization "0"
mat_softwarelighting "1"
mat_showlowresimage 1
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬

▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
Optional variations:

func_break_max_pieces "0"
mat_envmaptgasize "8"
mat_forceaniso "1"
mat_monitorgamma "2.0" (monitor gamma typically 2.2 for CRT and 1.7 for LCD)
r_cheapwaterend "2000" (End of the CheapWater rendering all behind this range is black water)
r_maxnewsamples "2"
r_maxsampledist "1"
r_queued_post_processing "0"
r_threaded_client_shadow_manager "1"
r_threaded_particles "1"
r_threaded_renderables "0"
mp_decals "200"
r_decal_cullsize "5"
mat_queue_mode "2"
mp_usehwmvcds "-1"
mp_usehwmmodels "-1"
r_queued_ropes "0"
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
56 Comments
Kali Dec 16, 2023 @ 1:31pm 
Does anyone know how to solve the bug where some playermodels have a black texture? It only looks like this when I use this guide
Hackidy Sep 7, 2020 @ 8:11pm 
if you cant see the flash light, just dont copy this command: r_shadows 0
Stout Aug 9, 2019 @ 1:50pm 
le guide :steamhappy:
ThePickle Feb 8, 2019 @ 12:47am 
Can I just copy and paste the FPS config? Also I'm having trouble finding most of the config options In the config files.
M1robuff Jun 26, 2018 @ 3:13am 
Translate Russian please :3
CnicK The Crocodile Mar 2, 2018 @ 2:37am 
1) how can you without shadow, it is serious abused your guide
C0ZYNAK Feb 3, 2018 @ 9:25am 
This is looks like garry's mod 10
=PB= Feb 3, 2018 @ 5:57am 
don't forget launch options, you can force the directx level (81 is iirc the best, but looks like ass), thread count (-threads or -forceallcores or whatever it is) and -high
-high is good.
ohiosigma Feb 2, 2018 @ 4:19pm 
nevermind it works now for some reason idk what i did
ohiosigma Feb 2, 2018 @ 4:11pm 
hey whatever you did disabled the materials and I need them so what do i need to get rid of for meterials to work i cant play darkrp with no materials