diff --git a/src/citra_qt/configuration/configure_enhancements.cpp b/src/citra_qt/configuration/configure_enhancements.cpp index e1a831eee..f83d93011 100644 --- a/src/citra_qt/configuration/configure_enhancements.cpp +++ b/src/citra_qt/configuration/configure_enhancements.cpp @@ -23,6 +23,8 @@ ConfigureEnhancements::ConfigureEnhancements(QWidget* parent) const auto graphics_api = Settings::values.graphics_api.GetValue(); const bool res_scale_enabled = graphics_api != Settings::GraphicsAPI::Software; ui->resolution_factor_combobox->setEnabled(res_scale_enabled); + const bool msaa_enabled = graphics_api == Settings::GraphicsAPI::Vulkan; + ui->sample_count_combobox->setEnabled(msaa_enabled); connect(ui->render_3d_combobox, qOverload(&QComboBox::currentIndexChanged), this, [this](int currentIndex) { @@ -58,6 +60,8 @@ void ConfigureEnhancements::SetConfiguration() { if (!Settings::IsConfiguringGlobal()) { ConfigurationShared::SetPerGameSetting(ui->resolution_factor_combobox, &Settings::values.resolution_factor); + ConfigurationShared::SetPerGameSetting(ui->sample_count_combobox, + &Settings::values.sample_count); ConfigurationShared::SetPerGameSetting(ui->texture_filter_combobox, &Settings::values.texture_filter); ConfigurationShared::SetHighlight(ui->widget_texture_filter, @@ -67,6 +71,8 @@ void ConfigureEnhancements::SetConfiguration() { } else { ui->resolution_factor_combobox->setCurrentIndex( Settings::values.resolution_factor.GetValue()); + ui->sample_count_combobox->setCurrentIndex( + static_cast(Settings::values.sample_count.GetValue())); ui->layout_combobox->setCurrentIndex( static_cast(Settings::values.layout_option.GetValue())); ui->texture_filter_combobox->setCurrentIndex( @@ -136,6 +142,8 @@ void ConfigureEnhancements::RetranslateUI() { void ConfigureEnhancements::ApplyConfiguration() { ConfigurationShared::ApplyPerGameSetting(&Settings::values.resolution_factor, ui->resolution_factor_combobox); + ConfigurationShared::ApplyPerGameSetting(&Settings::values.sample_count, + ui->sample_count_combobox); Settings::values.render_3d = static_cast(ui->render_3d_combobox->currentIndex()); Settings::values.factor_3d = ui->factor_3d->value(); @@ -177,6 +185,7 @@ void ConfigureEnhancements::SetupPerGameUI() { // Block the global settings if a game is currently running that overrides them if (Settings::IsConfiguringGlobal()) { ui->widget_resolution->setEnabled(Settings::values.resolution_factor.UsingGlobal()); + ui->widget_sample_count->setEnabled(Settings::values.sample_count.UsingGlobal()); ui->widget_texture_filter->setEnabled(Settings::values.texture_filter.UsingGlobal()); ui->toggle_linear_filter->setEnabled(Settings::values.filter_mode.UsingGlobal()); ui->toggle_swap_screen->setEnabled(Settings::values.swap_screen.UsingGlobal()); @@ -213,6 +222,10 @@ void ConfigureEnhancements::SetupPerGameUI() { ui->resolution_factor_combobox, ui->widget_resolution, static_cast(Settings::values.resolution_factor.GetValue(true))); + ConfigurationShared::SetColoredComboBox( + ui->sample_count_combobox, ui->widget_sample_count, + static_cast(Settings::values.sample_count.GetValue(true))); + ConfigurationShared::SetColoredComboBox( ui->texture_filter_combobox, ui->widget_texture_filter, static_cast(Settings::values.texture_filter.GetValue(true))); diff --git a/src/citra_qt/configuration/configure_enhancements.ui b/src/citra_qt/configuration/configure_enhancements.ui index ef77b2bc6..ae15c129a 100644 --- a/src/citra_qt/configuration/configure_enhancements.ui +++ b/src/citra_qt/configuration/configure_enhancements.ui @@ -110,6 +110,55 @@ + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + Sample count + + + + + + + + Native (x1) + + + + + x2 + + + + + x4 + + + + + x8 + + + + + + +