Nukem9 / dlssg-to-fsr3

Adds AMD FSR 3 Frame Generation to games by replacing Nvidia DLSS-G Frame Generation (nvngx_dlssg).
GNU General Public License v3.0
4.36k stars 163 forks source link

In future versions of the mod could the problem with vsync be fixed? #158

Open guillenxd opened 11 months ago

guillenxd commented 11 months ago

I mean it doesn't work or you can't activate vsync in the game menu (I tried it on Alan Wake 2), the only option is to activate vsync in the nvidia panel, however it doesn't feel fluid or smooth like it should .

I understand that for the fsr 3 frame generator to work well, the game's vsync must be activated, is that correct? I guess that's the problem.

I suppose the solution would be to be able to run vsync from the game menu next to the frame generator.

This is why I wonder, will this be possible in future versions of the mod?

I use a 60hz monitor overclocked to 75hz, it does not have gsync or freesync, and I have borderless window mode activated.

lionnesquaer commented 11 months ago

I suppose impossible implement V-Sync in game nativetely becouse game thinks you are using DLSS Frame Generation and this technology have hardlock to v-sync disabled. But i really don't now, possibly Nukem9 knows. But for now i also have this situation and seems in Full Screen mode V-Sync override in Nvidia Control Panel works. For me gameplay is smoother.

After all developers add AMD FSr 3.0 in games nativetely soon, and it will be better i think.

Dravic commented 11 months ago

I suppose impossible implement V-Sync in game nativetely becouse game thinks you are using DLSS Frame Generation and this technology have hardlock to v-sync disabled.

The reason why Nvidia orders game developers to keep in-game VSYNC OFF and greyed out is because YOU ARE SUPPOSED TO use Nvidia Control Panel's VSync. More specifically this is the way to go when you have a modern gaming display with Variable Refresh Rate (Freesync, Adaptive Sync, G-Sync - whatever the display's manufacturer calls the VRR function in your display's OSD menu) support.

I don't know what to tell people who don't have VRR displays, at this point I would just say "that's unfortunate" and move on. No VRR = you're a slave to your own display's limitations, you have to accept judder/huge latency of using V-Sync or you have to accept screen tearing if you keep VSYNC OFF. If I were you, I would get a new display with good reviews that confirm the display has fully functional VRR that works in G-Sync Compatible mode with Nvidia cards, they are incredibly inexpensive these days.

So anyway, assuming that you do have VRR display, here's what you do in order to get a good experience (this also works with DLSS3 or in this mod's case, DLSS3-to-FSR3):

Firstly you make sure there are no framerate limiters interrupting the game's output. Disable ESPECIALLY Rivatuner's framerate limiter as historically it kept messing with DLSS3. The only framerate limiter you should generally use as a rule of thumb (unless you know what you're doing and specific game works well with your other methodology) should be NVIDIA CONTROL PANEL'S MAX FRAMERATE FEATURE. What value to choose? Take your refresh rate and subtract a few FPS from it. That's your new framerate limit. Let's say you have 75Hz, you want 72fps Max Framerate limit.

Then, you turn on Global VSync ON in Nvidia Control Panel. Yes. In NVCP. Not in-game. Always turn in-game VSync OFF, it will be overriden by NVCP VSync ON, it's all good.

That's it, there you go. Good experience all around, pretty much hands-off going forward unless specific game needs tweaking. You can use per-game-profile to make tweaks.

I use a 60hz monitor overclocked to 75hz, it does not have gsync or freesync

That's unfortunate. Force VSync through NVCP anyway and use Fullscreen mode where available, or keep VSync OFF and accept screen tearing.

lionnesquaer commented 11 months ago

@Dravic I never use Adaptive sync how this is good in feel? I still be notice drops from 60 to 50 FPS in games, or it will be smooth?

guillenxd commented 11 months ago

I suppose impossible implement V-Sync in game nativetely becouse game thinks you are using DLSS Frame Generation and this technology have hardlock to v-sync disabled. But i really don't now, possibly Nukem9 knows. But for now i also have this situation and seems in Full Screen mode V-Sync override in Nvidia Control Panel works. For me gameplay is smoother.

After all developers add AMD FSr 3.0 in games nativetely soon, and it will be better i think.

okay 1.I understand the following; This mod works correctly and without tearing problems on monitors with Adaptive sync. it's right?

  1. If there was a mod that activated fsr3 in the game (without passing it through dlss3), in that case could I use vsync from the game menu and therefore would not have tearing problems?

  2. If the developer includes fsr3 natively, then can I activate vsync from the game menu and thus avoid tearing?

lionnesquaer commented 11 months ago

@guillenxd

  1. Yes it right.
  2. Yes, like i know there are have mod like this but this paid for now, i don't try it. LukeFZ creator.
  3. Yes. I try Forspokken demo, V-Sync works natively with AMD FSR 3.0 in there. Gameplay was smooth. I notice with Avatar youtube benchmark too.
Dravic commented 11 months ago

@Dravic I never use Adaptive sync how this is good in feel? I still be notice drops from 60 to 50 FPS in games, or it will be smooth?

Are we talking about VRR? Your display needs to support it, you can google search your display and find out if it has Freesync/is G-Sync Compatible or not. This is not a new technology but some people have older displays. Very rarely are there new displays without the support (RARELY) for whatever reason.

VRR in general has always given me a net positive experience in pretty much all gaming scenarios. It's a great feature to have.

guillenxd commented 11 months ago

@guillenxd

  1. Sí, está bien.
  2. Sí, como sé que hay mods como este, pero está pagado por ahora, no lo pruebo. Creador de LukeFZ.
  3. Sí. Probé la demostración de Forspokken, V-Sync funciona de forma nativa con AMD FSR 3.0. El juego fue fluido. También lo noto con el punto de referencia de YouTube de Avatar.

thank you so much

For people like me who have a low-end monitor, we will have to wait for the paid mods that enable fsr3 to be released for free or wait for the video game developers to add it natively.

lionnesquaer commented 11 months ago

@guillenxd I also have low-end display. Like i said before seems V-Sync working in Full screen mode. I playing in Robocop now, smoothness is ok.

guillenxd commented 11 months ago

@guillenxdTambién tengo pantalla de gama baja. Como dije antes, parece que V-Sync funciona en modo de pantalla completa. Ahora juego en Robocop, la fluidez está bien.

I will try it in full screen, the problem for me is that in full screen the monitor only detects 60hz, and I am used to 75hz xd

Dravic commented 11 months ago

@guillenxdTambién tengo pantalla de gama baja. Como dije antes, parece que V-Sync funciona en modo de pantalla completa. Ahora juego en Robocop, la fluidez está bien.

I will try it in full screen, the problem for me is that in full screen the monitor only detects 60hz, and I am used to 75hz xd

Change your desktop refresh rate to 75Hz in Windows advanced display settings and it should always be recognized in all games.

There's really no reason why in full screen mode it would suddenly limit you to 60Hz.

Well, there's one possible reason: if you're not actually overclocking the display directly. Did you by any chance make a custom resolution through Nvidia's drivers? That's a half-measure.

For full-measure approach you need to do the overclocking with Custom Resolution Utility tool or something similar to it, but it's a bit more complicated. You can find guides online for sure.

After you use CRU, the changes will stick until you reinstall Windows or clean reinstall the graphics drivers. It's not permanent but as per usual with overclocking, you should be careful and be ready to boot into Safe Mode in order to restore default settings of your display (Custom Resolution Utility makes it easy, they have an .exe for that that you launch under Safe Mode which resets display to default).

Anyway with the CRU approach games will recognize your overclocked refresh rate as the native refresh rate and let you pick 75Hz everywhere, all the time. Fullscreen or not.

guillenxd commented 11 months ago

@guillenxdTambién tengo pantalla de gama baja. Como dije antes, parece que V-Sync funciona en modo de pantalla completa. Ahora juego en Robocop, la fluidez está bien.

I will try it in full screen, the problem for me is that in full screen the monitor only detects 60hz, and I am used to 75hz xd

Change your desktop refresh rate to 75Hz in Windows advanced display settings and it should always be recognized in all games.

There's really no reason why in full screen mode it would suddenly limit you to 60Hz.

Well, there's one possible reason: if you're not actually overclocking the display directly. Did you by any chance make a custom resolution through Nvidia's drivers? That's a half-measure.

For full-measure approach you need to do the overclocking with Custom Resolution Utility tool or something similar to it, but it's a bit more complicated. You can find guides online for sure.

After you use CRU, the changes will stick until you reinstall Windows or clean reinstall the graphics drivers. It's not permanent but as per usual with overclocking, you should be careful and be ready to boot into Safe Mode in order to restore default settings of your display (Custom Resolution Utility makes it easy, they have an .exe for that that you launch under Safe Mode which resets display to default).

Anyway with the CRU approach games will recognize your overclocked refresh rate as the native refresh rate and let you pick 75Hz everywhere, all the time. Fullscreen or not. Yes, I created a custom resolution in the Nvidia control panel, so I got 75hz, but in full screen it only works at 65hz.

I didn't know that I should do the overclock with another program, now that I know I'm going to try it. I'm still not sure, I'm afraid of damaging my monitor.

guillenxd commented 11 months ago

Utilizo un monitor de 60hz overclockeado a 75hz, no tiene gsync ni freesync y tengo activado el modo ventana sin bordes.

También tengo un monitor sin FreeSync. ¿Tienes un error como yo? Enlace a mi publicación #216

Yes, same problem

Dravic commented 11 months ago

Yes, same problem

In my thread, I got this response: Everyone is getting this 'bug'. Doesn't matter what display you have.

Because that's true. In my opinion a big part of this is the permanent Vignette in the Cyberpunk 2077 game that's not being correctly accounted for by FSR3 and therefore during certain camera movements it keeps flickering. But even without Vignette you still get the generated frame flicker at the edge of screen for stuff like your car's shadow when driving forward fast.