This release adds a multiplier ceiling for NVIDIA Dynamic MFG and makes Dynamic MFG work when the NVIDIA app's frame generation override supplies Streamline. It warns when a game is stuck at 2x because NVIDIA is using the driver's built-in frame generation file. On RTX 20/30 with XMX, it also lets the game's own DLSS Frame Generation menu unlock.
Our recommendation stays the same: prefer XMX in games with native DLSS frame generation, and keep the XeMFG backend for games without it.
Dynamic multiplier ceiling
The panel has a new Dynamic multiplier ceiling under NVIDIA Dynamic MFG: Auto, or Up to 2x to Up to 6x. It is the NVIDIA app's "Frame Generation Mode: Dynamic, Multiplier: Up to Nx". NVIDIA's Dynamic MFG still chooses the multiplier; it just never picks more than the ceiling.
The NVIDIA app stores this ceiling in the driver profile, and Streamline reads it once when the game starts. The addon answers that read inside the game's process with the ceiling chosen in the panel. Nothing is written to the driver profile: the NVIDIA app and other games are unaffected, and closing the game undoes it. Auto keeps the driver's or the NVIDIA app's value.
Because Streamline reads it at startup, a new ceiling applies after a game restart. The panel says which ceiling the current session uses. Changing it during play would mean writing Streamline's internal memory, whose layout changes between builds, so the addon does not do it.
The INI key is DynamicMaxMultiplier in [RenoDX.MFGUnlock] (0 Auto, 2–6).
Dynamic MFG with the NVIDIA app override
With the NVIDIA app's frame generation override on, the game loads Streamline from ProgramData\NVIDIA\NGX\models\sl_dlss_g_override_0. 1.8.4 only recognized sl_dlss_g_0, so it never saw that Streamline's version. The panel stayed at Waiting for runtime detection and Dynamic MFG was never requested, although the fixed multipliers worked. Both folders are now recognized.
Dynamic MFG also accepted only four exact versions (DLSS-G 310.9.1/310.9.16, Streamline 2.14.1/2.14.16). It now accepts DLSS-G 310.9.1 or newer and Streamline 2.14 or newer. NVIDIA's runtime still has the final say: Dynamic is requested only when it reports support.
When Dynamic MFG is not available, the panel now names the missing piece: the Streamline or DLSS-G version this game loads, a file that has not loaded yet, or the runtime's answer.
Stuck at 2x: the driver's built-in frame generation
The NVIDIA app can turn its frame generation override off for one game, even when the global setting is on. This happened on the development PC when the game's frame generation settings were opened in the NVIDIA app. NVIDIA then uses the frame generation file built into the driver, which has no multi-frame support (310.2.1 on the development PC). The game offers 2x at most, and Dynamic MFG is reported unsupported.
The panel now warns about it, and the log says so too. The fix is in the NVIDIA app: open the game, set DLSS Override – Frame Generation to Latest, and restart. The addon judges this from what the game loaded, and never reads or changes the driver profile for it.
RTX 20/30 with XMX: the game's menu
On an RTX 3060 Ti, the game's DLSS Frame Generation option stayed locked with XMX. Streamline keeps or drops its frame generation plugin inside slInit, and on these GPUs NVIDIA's answer there is no. The addon's admission only began after that, so the plugin was already gone.
The admission now also covers slInit. This requires the addon to load before the game starts Streamline. When it did not, the panel says so and offers Enable early addon loading, which adds the addon to [ADDON] LoadFromDllMain in ReShade.ini. Restart the game after pressing it.
NGX's requirement check is now read as a bit mask. Only the "adapter unsupported" bit is cleared; a driver or Windows refusal still stands.
This is still experimental and not yet confirmed on a real RTX 20/30. Nothing changes on RTX 40 or 50.
Compatibility
Existing configuration is kept. The ceiling is Auto by default, which changes nothing.
Known limitations
- The Dynamic ceiling applies after a game restart.
- RTX 20/30 with XMX is not confirmed on real hardware.
- Once Human: its
nvngx_dlssg.dllhas the timestamp of the 310.3 build, whose gate has four compares, so XMX likely stays at 2x. - The limitations of 1.8.4 and 1.8.3 still apply.
Validation
The automated suite ran 209 tests: 206 passed and 3 optional tests were skipped, as in earlier releases. The version test now checks the Dynamic minimum: newer builds are accepted, older ones and other product lines are refused. The loader test checks that the NVIDIA app's override copy of Streamline is recognized, and that the other Streamline plugins are not.
Tested by playing Cyberpunk 2077 with XMX on an RTX 4070 SUPER:
- With the NVIDIA app override supplying Streamline 2.14.16, the panel reports Runtime support detected and NVIDIA accepts Dynamic MFG. 1.8.4 stayed at "Waiting for runtime detection" in the same setup.
- With Up to 2x, Dynamic MFG stayed at 2x. With Up to 4x, it stayed at 4x for the whole session.
- With the game's frame generation override off in the NVIDIA app, the game offered 2x only and the panel showed the new warning. After setting it back to Latest, the game offered MFG again.
Installation and rollback
Close the game, replace the previous addon with renodx-mfgunlock.addon64, keep only one MFG Unlock addon installed, and restart.
For rollback, close the process, restore your previous addon or the 1.8.4 release, and restart.
Building this version
As in 1.7.0: the addon is the mfgunlock_native_xemfg target of tests/CMakeLists.txt, published as renodx-mfgunlock.addon64; see Building the XeMFG backend.