Contains folders set up for the various programs on this list,
compiled ffmpeg binaries, video processing scripts, and my ReShade shader.
Download from here
and extract somewhere (preferably not just desktop).
📌 All file paths in this guide prefixed with \
begin in this folder.
I've decided to include ffmpeg and ffplay in the download because officially only source code is provided. If you want to get newer versions, see the official website, they link places where you can download it.
Post-processing injector that lets us modify the image output of the game.
Download the installer and save it in the \ReShade
folder.
Run it, hold CTRL and click the
Click here to select a game and manage its ReShade installation button.
It should extract its files right there and close.
Next, download ReShade basic shaders,
open the archive, and extract reshade-shaders-master\Shaders\ReShade.fxh
to \ReShade\Shaders
. If you want to get more shaders and textures you can,
but more shaders means longer launch time.
A Source engine movie making tool. Can do many things,
we will be using it to inject ReShade.
Head to their website
and download the zipped version. Extract to \HLAE
.
Lossless video codec that will allow us to record at maximum quality
while staying at reasonable file sizes.
Download the installer and run it.
Another lossless video codec we'll be using.
Required because ffmpeg does not support encoding Lagarith.
Head over to their GitHub
and download the installer (file ending with win.exe
).
Recording software of choice. Afterburner can record at 120 FPS
(useful so we don't drop any frames) and supports external video codecs.
If you don't have it already, get it here.
[Feb 2021] The website seems to be broken. If you cannot download it, see
this Reddit thread.
Since we'll be recording in split screen, the final footage will end up
at half the resolution of the recording.
To get around this, we need to double the recording resolution.
Unfortunately, TF2 doesn't let you go above your native display resolution.
This plugin changes that.
Download from TFTV thread here, open the archive, and extract the StatusSpec\addons
folder to \tf2 files
.
Alternatives include having a 4K monitor or some fiddling with your GPU driver.
Open Afterburner, click the ⚙ icon to open up settings. 7th tab should be called Video capture, in there:
- Choose a video capture hotkey
- Capture mode to 3D application
- Video format to VFW compression
Click the ... button, in the menu that pops up:
- Compressor to Lagarith Lossless Codec
- Click Configure and tick Enable Null Frames
- Hit OK to close both dialogs, back to Video capture settings
- Container format to Matroska MKV
- The quality slider does not matter since Lagarith is always lossless
- Frame size to full frame
- Framerate to 120 FPS
- Framerate limit to 1 FPS (disables it)
- Set your Videos folder to wherever you want (make sure you have enough disk space)
- Set both Audio sources to None
120 FPS is a definitely an overkill, but you want to make sure you capture every frame TF2 renders. Lagarith can replace duplicate frames with null frames, so this will have a minimal impact on file size.
Start \HLAE\HLAE.exe
and navigate to Tools > Developer > Custom Loader,
in there:
- set ProgramPath to TF2's
hl2.exe
- set CommandLine to this:
❗ Replace
-insecure -steam -game tf -novid -window -insert_search_path "X:\foo\tf2 files" +sv_lan 1
X:\foo\tf2 files
with the correct path to\tf2 files
. - DLLs to inject > Browse > add
\HLAE\AfxHookSource.dll
- DLLs to inject > Browse > add
\ReShade\ReShade32.dll
When all set, press OK and TF2 will launch (Steam must be running).
When the game loads try typing mirv
and statusspec
into console
to confirm everything has loaded successfully.
With both you should see a bunch of command suggestions.
In order for ReShade to work, you need to disable anti-aliasing (mat_antialias 0
)
and UI. For the latter a keybind is preferred (bind F9 "toggle r_drawvgui"
).
Once you have these, load up a map so you can test things out.
Hide the UI with your bind, then press HOME to open the ReShade overlay. Under the Settings tab:
- Change Overlay Key if you want
- Set an Effect Toggle Key
- Effect search paths to the full path to
\ReShade\Shaders
Go back to the Home tab and click Reload (at the bottom).
Wait for effects to load, then check the junior
one.
You should see the effect in action. If the depth part is solid white,
you probably forgot to turn off either UI or anti-aliasing.
Note that the depth display might go blank every once in a while. That will be taken care of once we get to the actual recording, for now just ignore it.
Try recording a short clip with Afterburner to confirm that it works. There is no notification if you're recording or not, so check your videos folder to find out. When done, close TF2.
Make a shortcut to \HLAE\HLAE.exe
, and in it's properties add
-customLoader -autoStart -noGui
after the path in the Target field,
so it looks like this:
"D:\tf2\movie\HLAE\HLAE.exe" -customLoader -autoStart -noGui
You can use this shortcut to launch TF2 though HLAE directly without having to go though HLAE > Tools > Developer > Custom Loader > OK every time.
And that is everything set up, you can now go onto the recording part of this guide.