Maassoft / ColorControl

Easily change NVIDIA display settings and/or control LG TV's
GNU General Public License v3.0
888 stars 40 forks source link

Profiles with Nvidia driver settings 'included' checked turn Ultra Low Latency mode on, destroy Gsync smoothness in the process. #146

Open RaffCode-Personal opened 1 year ago

RaffCode-Personal commented 1 year ago

So, I recently noticed how Gsync wasnt really working on my screen with me seeing a lot of stuttering in games running below my 120 hz refresh rate and indeed in a game forced to run at rock stable 50 fps my CX showed that the TV was changing refresh rate chaotically between 50 and even 90 hz, with some spikes up to 110. Same with the Nvidia Gsync tester set to 50 fps and with the resulting stuttering also visible on my c9 TV in the living room. Both TVs with Gsync enabled.

To make a long story short after some googling I found out that the Ultra settings of the Low Latency Mode option in the Nvidia control panel was to blame.

Here comes the important part: Color Control seems to be turning Ultra Low Latency Mode on whenever I apply any profile that has the 'include Nvidia driver setting' box ticked. I recorded a short video as a demonstration (note that the profile normally included Gsync for windows & fullscreen and Vsync force on as options but I unticked for the demonstration):

https://www.youtube.com/watch?v=vOB1rZ3WEM8

I am not sure if the behavior of Ultra Low Latency Mode is intended by Nvidia considering it is stated to be kind of made with Gsync in mind or just a driver error (if so it seems to be an old one considering my drivers are up to date and I found people with similar issues in months old reddit threads) but even if so it would be better if it was a separate option to enable this through Color Control.

/ Sry for the wall of text btw ;-)

Maassoft commented 1 year ago

I think this has to do with ColorControl not refreshing the actual values of the driver settings properly. I have Low Latency Mode set to Ultra (which shows no stuttering with GSYNC on my system), but if I set it to 'Off' in the Nvidia control panel and then apply a profile via ColorControl, it it set to to 'Ultra' again. But if I restart ColorControl after having made changes to the control panel, the value is not changed. So somehow it is setting all values that it has 'cached', not only the ones that are set in the preset. I'll try to fix this in the next update.

RaffCode-Personal commented 1 year ago

Thanks a lot. Amazing work as always.