Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MHWilds] Fix black screen when using DLSS 4 frame generation #1206

Open
Elenoxe opened this issue Mar 3, 2025 · 4 comments
Open

[MHWilds] Fix black screen when using DLSS 4 frame generation #1206

Elenoxe opened this issue Mar 3, 2025 · 4 comments

Comments

@Elenoxe
Copy link

Elenoxe commented Mar 3, 2025

Is your feature request related to a problem? Please describe.

When replacing the official DLSS Frame Generation DLL (v3.7.1) with DLSS 4 (v310.*), the game displays a black screen if the actual rendering resolution differs from the game window resolution.

In my case, the game runs at 2560×1660 in borderless fullscreen mode. However, Capcom renders it at 2560×1440 (16:9 aspect ratio) and adds letterboxing at the top and bottom to match 1660p. Despite the black screen when the game is focused, I can confirm via Alt + Tab that the game is still rendering in the background.

Everything works fine if I either:

  • Set the Windows display resolution to 2560×1440, or
  • Run the game in bordered window mode at 16:9.

Describe the solution you'd like

Fix the black screen issue so that the game runs normally when using DLSS 4 Frame Generation, just as it does with DLSS 3.

Expected Result
(Expected behavior)

Describe alternatives you've considered

Trick the game into thinking it is running at 16:9, then add letterboxing on our own to achieve a fullscreen appearance. REFramework's Ultrawide/Aspect Ratio Fix function managed to solve the black screen problem (mentioned below), but I think it would be better if we can have more accurate control on game's UI.

Additional context

Here are some imperfect workarounds I've found so far:

1. Use REFramework's Ultrawide/Aspect Ratio Fix function

This forces the game to render at the actual window resolution to avoid the black screen. However, the game's GUI is not designed for aspect ratios other than 16:9 or 21:9. And whether constraint UI to 16:9 or not it still looks strange to me. Another problem is the mouse gets disjointed when constrain UI to 16:9.

Without UI constraint to 16:9:
Without Constraint

With UI constraint to 16:9:
With Constraint

2. Bordered window mode + Special K

  • Set the game to bordered window mode at 16:9.
  • Use Special K to remove the window border.
  • Hide the taskbar in Windows settings.
  • Use Special K to center the game window and enable aspect ration stretch to add letterboxing.

This produces a fake fullscreen. However, the fact that the game doesn't technically run in true fullscreen may cause some problem. Things like Special K, ReShade, Steam’s FPS counter, and REFramework's menu detect the game window as the red rectangle shown in the screenshot below. REFramework's menu can't go outside of the rectangle area.

Special K Fake Fullscreen
(Red rectangle represents how overlays detect the window. Special K's OSD is displayed at top left corner of the game window instead of the screen)

@Foul-Tarnished
Copy link

In your last screenshot, g-sync is not running, probably because not in borderless fullscreen.
You also are probably not in hardware (composed) flip mode, so you have DWM latency added (which can be really bad with multi-monitor with different Hz)

@Foul-Tarnished
Copy link

Foul-Tarnished commented Mar 3, 2025

Did you try to also update streamline DLLs ?

The 6 sl.x.dll in the game folder, replace them with latest from https://github.com/NVIDIAGameWorks/Streamline (bin folder)
2.7.2.0 vs 2.4.11.0

Might work better with DLSS 4

@Elenoxe
Copy link
Author

Elenoxe commented Mar 3, 2025

Did you try to also update streamline DLLs ?

The 6 sl.x.dll in the game folder, replace them with latest from https://github.com/NVIDIAGameWorks/Streamline (bin folder) 2.7.2.0 vs 2.4.11.0

Might work better with DLSS 4

Thanks for your advice. Replacing sl.x.dll turned out to work. The only problem is that REFramework's menu now keeps flashing as shown in the video.

2025-03-04.020522_1.mp4

@Foul-Tarnished
Copy link

Hmm I don't have this issue though I play at 16:9.

As a workaround you could configure REFramework in its ini (re2-something.ini iirc) and not use the GUI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants