diff --git a/Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp b/Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp
index 32b24440b6..afdedc3ea0 100644
--- a/Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp
+++ b/Source/Core/DolphinQt/Config/Graphics/AdvancedWidget.cpp
@@ -36,6 +36,10 @@ AdvancedWidget::AdvancedWidget(GraphicsWindow* parent)
connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, [this](Core::State state) {
OnEmulationStateChanged(state != Core::State::Uninitialized);
});
+ connect(m_manual_texture_sampling, &QCheckBox::toggled, [this, parent] {
+ SaveSettings();
+ emit parent->UseFastTextureSamplingChanged();
+ });
OnBackendChanged();
OnEmulationStateChanged(Core::GetState() != Core::State::Uninitialized);
diff --git a/Source/Core/DolphinQt/Config/Graphics/EnhancementsWidget.cpp b/Source/Core/DolphinQt/Config/Graphics/EnhancementsWidget.cpp
index f181780749..6edbffc0e9 100644
--- a/Source/Core/DolphinQt/Config/Graphics/EnhancementsWidget.cpp
+++ b/Source/Core/DolphinQt/Config/Graphics/EnhancementsWidget.cpp
@@ -39,6 +39,8 @@ EnhancementsWidget::EnhancementsWidget(GraphicsWindow* parent) : m_block_save(fa
AddDescriptions();
connect(parent, &GraphicsWindow::BackendChanged,
[this](const QString& backend) { LoadSettings(); });
+ connect(parent, &GraphicsWindow::UseFastTextureSamplingChanged, this,
+ &EnhancementsWidget::LoadSettings);
}
constexpr int TEXTURE_FILTERING_DEFAULT = 0;
@@ -292,6 +294,8 @@ void EnhancementsWidget::LoadPPShaders()
void EnhancementsWidget::LoadSettings()
{
m_block_save = true;
+ m_texture_filtering_combo->setEnabled(Config::Get(Config::GFX_HACK_FAST_TEXTURE_SAMPLING));
+
// Anti-Aliasing
const u32 aa_selection = Config::Get(Config::GFX_MSAA);
@@ -488,7 +492,8 @@ void EnhancementsWidget::AddDescriptions()
"that are at oblique viewing angles. Force Nearest and Force Linear override the texture "
"scaling filter selected by the game.
Any option except 'Default' will alter the look "
"of the game's textures and might cause issues in a small number of "
- "games.
If unsure, select 'Default'.");
+ "games.
This option is incompatible with Manual Texture Sampling.
"
+ "If unsure, select 'Default'.");
static const char TR_OUTPUT_RESAMPLING_DESCRIPTION[] =
QT_TR_NOOP("Affects how the game output is scaled to the window resolution."
"
The performance mostly depends on the number of samples each method uses."
diff --git a/Source/Core/DolphinQt/Config/Graphics/GraphicsWindow.h b/Source/Core/DolphinQt/Config/Graphics/GraphicsWindow.h
index 5949a2dda3..bc935d79e1 100644
--- a/Source/Core/DolphinQt/Config/Graphics/GraphicsWindow.h
+++ b/Source/Core/DolphinQt/Config/Graphics/GraphicsWindow.h
@@ -24,6 +24,7 @@ public:
signals:
void BackendChanged(const QString& backend);
+ void UseFastTextureSamplingChanged();
private:
void CreateMainLayout();