diff --git a/Source/Core/DolphinQt/Config/Graphics/HacksWidget.cpp b/Source/Core/DolphinQt/Config/Graphics/HacksWidget.cpp index 356a68c817..d4c118c088 100644 --- a/Source/Core/DolphinQt/Config/Graphics/HacksWidget.cpp +++ b/Source/Core/DolphinQt/Config/Graphics/HacksWidget.cpp @@ -196,12 +196,16 @@ void HacksWidget::AddDescriptions() static const char TR_IMMEDIATE_XFB_DESCRIPTION[] = QT_TR_NOOP( "Displays XFB copies as soon as they are created, instead of waiting for " "scanout.

Can cause graphical defects in some games if the game doesn't " - "expect all XFB copies to be displayed. However, turning this setting on reduces " - "latency.

If unsure, leave this unchecked."); + "expect all XFB copies to be displayed. However, turning this setting on reduces latency." + "

Enabling this also force an effect equivalent to the" + " Skip Presenting Duplicate Frames setting." + "

If unsure, leave this unchecked."); static const char TR_SKIP_DUPLICATE_XFBS_DESCRIPTION[] = QT_TR_NOOP( "Skips presentation of duplicate frames (XFB copies) in 25fps/30fps games. " "This may improve performance on low-end devices, while making frame pacing less consistent." "

Disable this option for optimal frame pacing." + "

This setting is unavailable when Immediately Present XFB or VBI Skip is " + "enabled. In those cases, duplicate frames are never presented." "

If unsure, leave this checked."); static const char TR_GPU_DECODING_DESCRIPTION[] = QT_TR_NOOP( "Enables texture decoding using the GPU instead of the CPU.

This may result in " @@ -230,6 +234,8 @@ void HacksWidget::AddDescriptions() static const char TR_VI_SKIP_DESCRIPTION[] = QT_TR_NOOP("Skips Vertical Blank Interrupts when lag is detected, allowing for " "smooth audio playback when emulation speed is not 100%.

" + "Enabling this also forces the effect of the" + " Skip Presenting Duplicate Frames setting.

" "WARNING: Can cause freezes and compatibility " "issues.

" "If unsure, leave this unchecked."); @@ -263,12 +269,5 @@ void HacksWidget::UpdateSkipPresentingDuplicateFramesEnabled() { // If Immediate XFB is on, there's no point to skipping duplicate XFB copies as immediate presents // when the XFB is created, therefore all XFB copies will be unique. - // This setting is also required for VI skip to work. - - const bool disabled = m_immediate_xfb->isChecked() || m_vi_skip->isChecked(); - - if (disabled) - m_skip_duplicate_xfbs->setChecked(true); - - m_skip_duplicate_xfbs->setEnabled(!disabled); + m_skip_duplicate_xfbs->setDisabled(m_immediate_xfb->isChecked() || m_vi_skip->isChecked()); }