Tools

Software I built while taking games apart.

Written because a game would not do the thing it should have been able to do. Each one is described here; the software itself is not distributed.

Returnal Multi-Frame Generation

3X, 4X, 5X and 6X frame generation in a game that ships 2X as its hard ceiling.

Returnal was built against NVIDIA Streamline 1.3.3. Multi-frame generation needs 2.11 or newer, and the game hardcodes a request for exactly one generated frame. This is a small proxy that sits beside the game and translates the old SDK calls into the new ones while it runs, so the ceiling goes away.

It is pure NVIDIA: DLSS Frame Generation, Reflex and PCL through Streamline. There is no FSR, no XeSS and no AMD code anywhere in it. Nothing on disk is patched, so deleting two files undoes all of it.

Needs
An NVIDIA GPU whose driver supports DLSS Multi-Frame Generation, and NVIDIA Streamline 2.13 from NVIDIA. The game verifies the signature on those files, so only NVIDIA's own signed build works.
Multiplier
One line in its ini file: InterpolationCount, where 1 is 2X and 5 is 6X.
Scope
Returnal only, deliberately. It hardcodes byte offsets into that game's own binaries.

Measured here, on one machine, in one scene:

SettingFrames presentedOn screen1% low
2X2130111
3X3187109
4X4225189
5X5225148
6X6225170

Above 4X buys nothing on this setup, because the display ceiling is already saturated at 225, and it costs smoothness. 4X has the best frame consistency of the five. Your numbers will differ.

What it is made of. One binary, winmm.dll, which is our own compiled code, with MinHook compiled into it under the BSD-2-Clause licence.

NVIDIA Streamline is not part of it: it runs on NVIDIA's own signed build, which is also the only way it works, because Returnal verifies the signature on those files and refuses anything else. Windows' own winmm.dll is copied from the machine it runs on. No Returnal code or assets are part of it.

Unofficial and unaffiliated with NVIDIA, Housemarque or Sony.

At 4X the engine renders 56 real frames to fill the same display that 2X needs 112 for, and the GPU time that frees is what pays for neural rendering.

More to come.