github mavismmg/MFGAdaUnlock-RenoDx 1.8.1
MFG Unlock 1.8.1 — Stability and a New Panel

2 hours ago

This release fixes the crash reported in Bloodborne, closes several ways XMX could fail or stop silently, and redesigns the panel. When something goes wrong, the panel now says what happened and gathers the files needed to report it.

Our recommendation stays the same: prefer XMX in games with native DLSS frame generation, and keep the XeMFG backend for games without it.

Highlights

  • Fixed: crash on starting Vulkan games that keep their swap chain settings in read-only memory, found through a crash dump from Bloodborne.
  • XMX is more robust: resolution changes, hook installation, device changes, pauses and high multipliers were all hardened.
  • The panel explains itself: XMX gives the reason it is not generating, and a failure shows a card with its cause.
  • Reporting takes one click: Save support files collects the logs, settings and a report into one folder.
  • New look: a new theme, new font, selectors that show every option, and a System card that shows your display output, GPU, driver and Windows version.

XeMFG backend

Fixed

  • Crash when a Vulkan game creates its swap chain. The addon briefly changed a setting inside the game's own structure. Bloodborne keeps that structure in read-only memory, so the write crashed the game. The addon no longer writes to the game's structures. When it needs a different setting, it works on its own copy.
  • Vulkan games without Intel's files are left alone. If libxess_fg.dll and libxell.dll cannot be found, the addon no longer changes the game's Vulkan device or swap chains. This removes the crash path for those games, but it does not make them generate frames: Intel's files are still required.
  • Two thread-safety problems in the display chain. These affected GetBuffer in scRGB games and GetFullscreenState with exclusive fullscreen served as borderless. Both could read data while another thread was replacing it.

Changed

  • Warhammer 40,000: Darktide now has a depth profile. XeMFG used to start with the wrong depth convention in this game and correct itself during the first session. It now starts with the right one. This does not change anything if you set InvertedDepth yourself.

XMX mode

Fixed

  • Possible device loss when the input size changed. A texture that the GPU might still be using was released as soon as its size or format changed, or when the game's HUD-less input disappeared. This could happen with dynamic resolution or a DLSS mode change. These textures are now kept until the GPU has finished with them.
  • The hook could fail for good, without telling you. It could collide with another hook being installed at the same moment, and it could be installed without every thread being accounted for. It now waits its turn, tries again for a few seconds, and refuses to patch if a thread cannot be accounted for.
  • The panel could report XMX as started when it was not. It now checks that a hook is really in place. If no hook could be installed, the panel says NVIDIA's generator is producing the frames. If only some copies of NVIDIA's generator were hooked, it warns about that too.
  • A new Direct3D device kept the old XMX context. XMX now notices the change and creates a new context.
  • Memory growth on repeated resizing. Replaced textures piled up for the whole session. They are now released. Intel's contexts cannot be destroyed safely yet, so after 16 contexts in one session, XMX stops generating and asks you to restart the game instead of filling the video memory. Normal play should never reach this limit.
  • A wrong frame after a pause. After a gap of more than half a second, XMX no longer interpolates between the frames from before and after the pause.
  • Copies between mismatched textures. A copy between textures of different sizes or formats is undefined on the GPU. XMX now refuses it and says why.
  • A multiplier above what the model supports stopped generation until restart. If the multi-frame model is refused and only 2x is possible, higher multipliers now show the generated frame again, and the panel says so. Motion is less smooth at those multipliers, so choose the one the panel reports.
  • XMX reported Driver reports MFG active while generating. The status now says Generating frames.

XMX explains what it is doing

The status at the top of the panel now separates these cases:

Status Meaning
Generating frames XMX generated a frame in the last 2 seconds
Waiting for frames DLSS-G is calling XMX, but no frame came out; the panel gives the reason
Paused or off in the game DLSS-G is not calling XMX. Games do this in menus and cutscenes, and it is normal if generation returns afterwards
Frame generation stopped XMX failed; a card gives the reason and no frames are generated until the game restarts

The reasons shown are also written to ReShade.log, once each: missing color, depth or motion input; waiting for two real frames in a row; a history reset from the game; a HUD-less input that came and went; an error from XeFG; no frame produced; and mismatched textures.

HDR

Output XMX
SDR (R8G8B8A8) Works
HDR10 (R10G10B10A2) Works
scRGB (R16G16B16A16_FLOAT) Not tested. XMX has no conversion for it like the XeMFG backend does

If XMX cannot start on scRGB output, the panel suggests turning HDR off or using XeMFG. The System card warns when XMX is selected and the game is using scRGB. Please report any scRGB game you try with XMX.

New panel

These changes apply to the panel in all backends.

  • New theme. Grey cards and controls on ReShade's own background, with rounded corners, thicker borders and square, taller tabs. ReShade's blue marks selections. Green, yellow and red are kept for status.
  • New font. The panel looks best with Cascadia Mono, and ReShade allows only one font for its whole interface. On the first launch of this version in each game, if ReShade has no custom font and Windows includes Cascadia Mono, it becomes ReShade's font for that game, across ReShade's whole interface.
    • A font you already chose is kept.
    • To go back, clear Font in ReShade's Settings tab. The addon applies the font only once, so it will not set it again.
    • The font does not affect frame rate while the overlay is closed.
  • Selectors that show every option. Frame generation method, Frame Multiplier, the DLSS Super Resolution and Ray Reconstruction presets and Latency Guard no longer hide their options in a list.
  • System card. The General page shows the display output, resolution and refresh rate, GPU, driver and Windows version, plus the sync mode with DLSS-G and XMX. These details also go into the reports. HDR10 is inferred from a 10-bit output on a monitor in HDR mode, because ReShade does not expose the swap chain's color space. A game using 10-bit SDR on an HDR desktop would show as HDR10.
  • Aligned settings. Labels and controls now sit in two equal columns. NVIDIA Dynamic MFG shows Not available with XMX instead of an empty checkbox.
  • Footer at the bottom of the panel, with the version and author.

Reporting a problem

  • Problem cards. When XMX or XeMFG stops, a card says what failed, with Save support files and Copy report.
  • Save support files. Copies ReShade.log, the MFGAdaUnlock logs, your settings and a report into a new MFG-Support-<date> folder beside the game, then opens it. Files above 64 MB are skipped. Logs may include folder names from your PC, so check them before posting publicly.
  • Notice after an unexpected close. If the last session did not end cleanly, the next launch offers to save the logs. A game that closes itself abruptly looks the same, so the notice says the session may have closed unexpectedly, and Dismiss clears it.
  • No crash handler was added. Catching crashes inside a game full of hooks can interfere with the game's own handling. If we need a crash dump, we will ask for one.

Compatibility

Existing configuration is kept, and no generation default changed. The one setting this version may change is ReShade's font, as described above.

The name stays MFG Unlock, and file names are unchanged.

Known limitations

  • Bloodborne: this release fixes the crash. Whether the game generates frames has not been established.
  • Dying Light 2 with XMX can stay on Waiting for frames, and the cause is unknown. The new diagnostics should show it, so logs from this version are very welcome. The earlier startup crash with XeMFG was not seen in the latest report, on 1.8.0, where the game ran for about 80 minutes.
  • Darktide with frame generation in cutscenes: the game turns generation off there. The panel now shows this as Paused or off in the game. Please report it if generation does not return.
  • XMX still does not pass the view matrix or a separate UI input to Intel's model, assumes fixed resource states and ignores input subrects. No game has shown a problem from this, so nothing changed. Intel's headers for this internal interface are not available for comparison.
  • XMX does not run in Vulkan games, where NVIDIA's generator keeps running, or in games that use XeMFG through FSR or the DLSS-SR input.

Validation

The automated suite ran 207 tests with no failures. Three optional tests were skipped, as in earlier releases.

New automated tests cover the read-only swap chain structure, the XMX decisions (retiring textures, device changes, pauses, multiplier limits and texture copies), hook installation, support files, the session notice and the System card's values.

Tested by playing on an RTX 4070 SUPER, driver 621.01:

  • Cyberpunk 2077 with XMX: stability, the new panel, and the System card with HDR10 at 2560x1440, 240 Hz.
  • Indiana Jones and the Great Circle with XeMFG on Vulkan: the game ran as before with the swap chain change.

Not yet confirmed in a game at release time: the Bloodborne and Darktide fixes, which their reporters will test on this version, and the automatic font on a game with no font set. Red Dead Redemption 2 was not retested.

Thanks to the players who sent logs and the crash dump. They made these fixes possible.

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.0 release, and restart. If you want ReShade's previous font back too, clear Font in ReShade's Settings tab.

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.

Don't miss a new MFGAdaUnlock-RenoDx release

NewReleases is sending notifications on new releases.