Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Making Garry's Mod run faster with Source shenanigans
#1
This game was made a very long time ago, back before even quad core processors hit the market yet. Today though, we see quad core as the minimum, with often six, eight, twelve and sixteen core processors being feature in gaming computers. Garry's Mod isn't built to utilize them, but there are some tricks in the infinitely long sleeve of the source engine we can use to do it anyway. There are also a few other things we can do to improve performance.

Optimizing Garry's Mod for multithreaded processing (these help the most)

In your autoexec.cfg, add these commands:
Code:
gmod_mcore_test 1
mat_queue_mode -1
cl_threaded_bone_setup 1
  • gmod_mcore_test 1 enables experimental multicore processing for gmod. Under some conditions, it may cause crashing, but I've never had it cause problems before.
  • mat_queue_mode -1 sets the material system to use queued multithreading mode instead of synchronous singlethreaded mode. This means material processing is offloaded to multiple cores.
  • cl_threaded_bone_setup 1 enables multithreading for bone processing for things like animation and footsteps.

General setting changes

In your autoexec, add these lines:
Code:
mat_motion_blur_enabled 0
mat_reducefillrate 1
mat_vsync 0
cl_forcepreload 1
cl_ragdoll_collide 0
mat_specular 0
  • mat_motion_blur_enabled 0 disables motion blur, because motion blur is terrible
  • mat_reducefillrate 1 reduces shader quality
  • mat_vsync 0 disables vsync. If you have major screen tearing, set this to 1
  • cl_forcepreload 1 forces all map textures to be loaded before joining the map. This increases load times but boosts FPS.
  • cl_ragdoll_collide 0 disables ragdoll collisions
  • mat_specular 0 disables the shine on things like metal and floors. Also fixes some missing texture problems

Launch options

In your launch options, set these options:
Code:
-high -nojoy -r_emulate_gl -d3d9ex -windowed -noborder -w <horizontal resolution> -h <vertical resolution>
  • -high sets the process priority to high
  • -nojoy disables joystick support, reducing memory requirements
  • -r_emulate_gl forces OpenGL mode, increasing performance on most GPUs
  • -d3d9ex changes the DirectX 9 mode, speeding up alt tab in fullscreen on some GPUs
  • -windowed puts gmod in windowed mode
  • -noborder removes the windowed mode border
  • -w <horizontal resolution> -h <vertical resolution> forces resolution. Not required but default resolution settings can be iffy

    On some maps it breaks, but you can use +mat_dxlevel 81 for a big performance bump. I don't recommend this to a lot of people because this forces gmod to run in DirectX 8.1 mode, which breaks Derma menus and causes crashes on certain types of custom map textures.
Using the 64-bit executable & Chromium web renderer

Follow the guide by bryanbrr to learn how to do this. Using a 64-bit executable doesn't make a huge difference other than being able to use more than 4GB of memory, but the Chromium renderer is much faster than the default Awesomium renderer.

More aggressive setting changes

You can add either the "Potato" config or the "Beyond Potato" config to your autoexec (but not both). Alternatively, you can add a mix of the options from this forum thread.

[Image: unknown.png]

autoexec.cfg is a config automatically ran at the game start. Configs, or .cfgs are lists of console commands that are ran one after another. When you load console commands into a cfg and run the cfg, you are running all of those console commands with just one command. In the case of autoexec.cfg, it's ran automatically when the game starts.

autoexec.cfg is at steamapps\common\GarrysMod\garrysmod\cfg\autoexec.cfg, if you don't have one create one. Edit it with notepad.

I recommend splitting up your autoexec into pieces by using enter. I have a section for my multithreading stuff, a section for my fps and ping displays, a section for random performance tweaks, a section for console filtering, and a section for aliases:
[Image: unknown.png]

If you need any help following this guide, feel free to contact me through the Discord or through forum PM.
Reply
#2
@ admins can we pin this to guides
Reply
#3
(03-08-2021, 01:55 AM)two rats kissing Wrote: @ admins can we pin this to guides
@ admins
[Image: Editor16.gif?width=593&height=492]
[Image: frug.png]


Die anywhere else
Tuba RPG OST
"I don't know if my head works any better than my stomach. Maybe i should start thinking with my tail." - Wembley Fraggle
My Backlogger! https://backloggery.com/Zehheadcrabs
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)

About Us
    This is Dinkleberg's GMod, a gaming community based in Garry's Mod. We have a Trouble in Terrorist Town, Prop Hunt, Murder, and Deathrun Server. Come check them out sometime.