Never seen this talked about before, but Valve made a piece of software originally for the Steam Deck called GameScope which among other things can be used to spoof your resolution
I experimented with this and got huge FPS boosts by upscaling from a lower resolution to my native resolution, even compared with just running the lower resolution normally
This works with any Steam game and it's as simple as adding launch options that looks something like this:
gamescope -w 1280 -h 720 -r 240 -W 1920 -H 1080 -e -f -F fsr --rt --force-grab-cursor --mangoapp -- %command%
...where in this example I run my game in 1280x720@240Hz, but upscale it to 1920x1080 using AMD's FidelityFX (NVIDIA users should instead use "-F nis" for NVIDIA Image Scaling)
For TF2 (or other Source games) specifically you can put all of your normal launch options after the "%command%" string like so:
gamescope -w 1280 -h 720 -r 240 -W 1920 -H 1080 -e -f -F fsr --rt --force-grab-cursor --mangoapp -- %command% -w 1280 -h 720 -freq 240 -fullscreen -vulkan -novid -nojoy -nosteamcontroller -nohltv -particles 1 -precachefontchars -enablefakeip -console
Averaged ~1100 FPS and peaked at 1500 FPS on the Soldier training map, but figured I'd get more realistic numbers with mastercoms' benchmark:
Without GameScope (running natively at 1280x720)
- pass 1 : 5032 frames 26.039 seconds 193.25 fps ( 5.17 ms/f) 33.812 fps variability
- pass 2 : 5032 frames 26.376 seconds 190.78 fps ( 5.24 ms/f) 30.933 fps variability
- pass 3 : 5032 frames 27.050 seconds 186.02 fps ( 5.38 ms/f) 31.033 fps variability
With GameScope (upscaled from 1280x720 to 1920x1080)
- pass 1 : 5032 frames 19.338 seconds 260.21 fps ( 3.84 ms/f) 37.945 fps variability
- pass 2 : 5032 frames 19.113 seconds 263.28 fps ( 3.80 ms/f) 38.121 fps variability
- pass 3 : 5032 frames 19.541 seconds 257.51 fps ( 3.88 ms/f) 36.106 fps variability
Might do some proper benchmarking and plotting with mangohud tomorrow