diff options
| author | 2021-10-20 18:33:07 -0500 | |
|---|---|---|
| committer | 2021-11-16 22:11:32 +0100 | |
| commit | 74e39ed6eeb2362316044ad92e3de9d75034ca58 (patch) | |
| tree | 16b44e4e1b55c16b8f5d4c23e3379dbd09859c54 /src | |
| parent | Settings: Add anti-aliasing method setting (diff) | |
| download | yuzu-74e39ed6eeb2362316044ad92e3de9d75034ca58.tar.gz yuzu-74e39ed6eeb2362316044ad92e3de9d75034ca58.tar.xz yuzu-74e39ed6eeb2362316044ad92e3de9d75034ca58.zip | |
Frontend: Add anti-aliasing method setting
Diffstat (limited to 'src')
| -rw-r--r-- | src/yuzu/configuration/config.cpp | 5 | ||||
| -rw-r--r-- | src/yuzu/configuration/config.h | 1 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics.cpp | 24 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics.ui | 39 | ||||
| -rw-r--r-- | src/yuzu_cmd/config.cpp | 1 |
5 files changed, 70 insertions, 0 deletions
diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp index 4c296a94d..8227d06bc 100644 --- a/src/yuzu/configuration/config.cpp +++ b/src/yuzu/configuration/config.cpp | |||
| @@ -826,6 +826,7 @@ void Config::ReadRendererValues() { | |||
| 826 | ReadGlobalSetting(Settings::values.aspect_ratio); | 826 | ReadGlobalSetting(Settings::values.aspect_ratio); |
| 827 | ReadGlobalSetting(Settings::values.resolution_setup); | 827 | ReadGlobalSetting(Settings::values.resolution_setup); |
| 828 | ReadGlobalSetting(Settings::values.scaling_filter); | 828 | ReadGlobalSetting(Settings::values.scaling_filter); |
| 829 | ReadGlobalSetting(Settings::values.anti_aliasing); | ||
| 829 | ReadGlobalSetting(Settings::values.max_anisotropy); | 830 | ReadGlobalSetting(Settings::values.max_anisotropy); |
| 830 | ReadGlobalSetting(Settings::values.use_speed_limit); | 831 | ReadGlobalSetting(Settings::values.use_speed_limit); |
| 831 | ReadGlobalSetting(Settings::values.speed_limit); | 832 | ReadGlobalSetting(Settings::values.speed_limit); |
| @@ -1374,6 +1375,10 @@ void Config::SaveRendererValues() { | |||
| 1374 | static_cast<u32>(Settings::values.scaling_filter.GetValue(global)), | 1375 | static_cast<u32>(Settings::values.scaling_filter.GetValue(global)), |
| 1375 | static_cast<u32>(Settings::values.scaling_filter.GetDefault()), | 1376 | static_cast<u32>(Settings::values.scaling_filter.GetDefault()), |
| 1376 | Settings::values.scaling_filter.UsingGlobal()); | 1377 | Settings::values.scaling_filter.UsingGlobal()); |
| 1378 | WriteSetting(QString::fromStdString(Settings::values.anti_aliasing.GetLabel()), | ||
| 1379 | static_cast<u32>(Settings::values.anti_aliasing.GetValue(global)), | ||
| 1380 | static_cast<u32>(Settings::values.anti_aliasing.GetDefault()), | ||
| 1381 | Settings::values.anti_aliasing.UsingGlobal()); | ||
| 1377 | WriteGlobalSetting(Settings::values.max_anisotropy); | 1382 | WriteGlobalSetting(Settings::values.max_anisotropy); |
| 1378 | WriteGlobalSetting(Settings::values.use_speed_limit); | 1383 | WriteGlobalSetting(Settings::values.use_speed_limit); |
| 1379 | WriteGlobalSetting(Settings::values.speed_limit); | 1384 | WriteGlobalSetting(Settings::values.speed_limit); |
diff --git a/src/yuzu/configuration/config.h b/src/yuzu/configuration/config.h index 97dc1bb47..d673c1cdc 100644 --- a/src/yuzu/configuration/config.h +++ b/src/yuzu/configuration/config.h | |||
| @@ -191,5 +191,6 @@ Q_DECLARE_METATYPE(Settings::FullscreenMode); | |||
| 191 | Q_DECLARE_METATYPE(Settings::NvdecEmulation); | 191 | Q_DECLARE_METATYPE(Settings::NvdecEmulation); |
| 192 | Q_DECLARE_METATYPE(Settings::ResolutionSetup); | 192 | Q_DECLARE_METATYPE(Settings::ResolutionSetup); |
| 193 | Q_DECLARE_METATYPE(Settings::ScalingFilter); | 193 | Q_DECLARE_METATYPE(Settings::ScalingFilter); |
| 194 | Q_DECLARE_METATYPE(Settings::AntiAliasing); | ||
| 194 | Q_DECLARE_METATYPE(Settings::RendererBackend); | 195 | Q_DECLARE_METATYPE(Settings::RendererBackend); |
| 195 | Q_DECLARE_METATYPE(Settings::ShaderBackend); | 196 | Q_DECLARE_METATYPE(Settings::ShaderBackend); |
diff --git a/src/yuzu/configuration/configure_graphics.cpp b/src/yuzu/configuration/configure_graphics.cpp index 02498fad7..59f975a6e 100644 --- a/src/yuzu/configuration/configure_graphics.cpp +++ b/src/yuzu/configuration/configure_graphics.cpp | |||
| @@ -107,6 +107,8 @@ void ConfigureGraphics::SetConfiguration() { | |||
| 107 | static_cast<int>(Settings::values.resolution_setup.GetValue())); | 107 | static_cast<int>(Settings::values.resolution_setup.GetValue())); |
| 108 | ui->scaling_filter_combobox->setCurrentIndex( | 108 | ui->scaling_filter_combobox->setCurrentIndex( |
| 109 | static_cast<int>(Settings::values.scaling_filter.GetValue())); | 109 | static_cast<int>(Settings::values.scaling_filter.GetValue())); |
| 110 | ui->anti_aliasing_combobox->setCurrentIndex( | ||
| 111 | static_cast<int>(Settings::values.anti_aliasing.GetValue())); | ||
| 110 | } else { | 112 | } else { |
| 111 | ConfigurationShared::SetPerGameSetting(ui->api, &Settings::values.renderer_backend); | 113 | ConfigurationShared::SetPerGameSetting(ui->api, &Settings::values.renderer_backend); |
| 112 | ConfigurationShared::SetHighlight(ui->api_widget, | 114 | ConfigurationShared::SetHighlight(ui->api_widget, |
| @@ -137,6 +139,11 @@ void ConfigureGraphics::SetConfiguration() { | |||
| 137 | ConfigurationShared::SetHighlight(ui->scaling_filter_label, | 139 | ConfigurationShared::SetHighlight(ui->scaling_filter_label, |
| 138 | !Settings::values.scaling_filter.UsingGlobal()); | 140 | !Settings::values.scaling_filter.UsingGlobal()); |
| 139 | 141 | ||
| 142 | ConfigurationShared::SetPerGameSetting(ui->anti_aliasing_combobox, | ||
| 143 | &Settings::values.anti_aliasing); | ||
| 144 | ConfigurationShared::SetHighlight(ui->anti_aliasing_label, | ||
| 145 | !Settings::values.anti_aliasing.UsingGlobal()); | ||
| 146 | |||
| 140 | ui->bg_combobox->setCurrentIndex(Settings::values.bg_red.UsingGlobal() ? 0 : 1); | 147 | ui->bg_combobox->setCurrentIndex(Settings::values.bg_red.UsingGlobal() ? 0 : 1); |
| 141 | ui->bg_button->setEnabled(!Settings::values.bg_red.UsingGlobal()); | 148 | ui->bg_button->setEnabled(!Settings::values.bg_red.UsingGlobal()); |
| 142 | ConfigurationShared::SetHighlight(ui->bg_layout, !Settings::values.bg_red.UsingGlobal()); | 149 | ConfigurationShared::SetHighlight(ui->bg_layout, !Settings::values.bg_red.UsingGlobal()); |
| @@ -156,6 +163,10 @@ void ConfigureGraphics::ApplyConfiguration() { | |||
| 156 | ui->scaling_filter_combobox->currentIndex() - | 163 | ui->scaling_filter_combobox->currentIndex() - |
| 157 | ((Settings::IsConfiguringGlobal()) ? 0 : ConfigurationShared::USE_GLOBAL_OFFSET)); | 164 | ((Settings::IsConfiguringGlobal()) ? 0 : ConfigurationShared::USE_GLOBAL_OFFSET)); |
| 158 | 165 | ||
| 166 | const auto anti_aliasing = static_cast<Settings::AntiAliasing>( | ||
| 167 | ui->anti_aliasing_combobox->currentIndex() - | ||
| 168 | ((Settings::IsConfiguringGlobal()) ? 0 : ConfigurationShared::USE_GLOBAL_OFFSET)); | ||
| 169 | |||
| 159 | ConfigurationShared::ApplyPerGameSetting(&Settings::values.fullscreen_mode, | 170 | ConfigurationShared::ApplyPerGameSetting(&Settings::values.fullscreen_mode, |
| 160 | ui->fullscreen_mode_combobox); | 171 | ui->fullscreen_mode_combobox); |
| 161 | ConfigurationShared::ApplyPerGameSetting(&Settings::values.aspect_ratio, | 172 | ConfigurationShared::ApplyPerGameSetting(&Settings::values.aspect_ratio, |
| @@ -193,6 +204,9 @@ void ConfigureGraphics::ApplyConfiguration() { | |||
| 193 | if (Settings::values.scaling_filter.UsingGlobal()) { | 204 | if (Settings::values.scaling_filter.UsingGlobal()) { |
| 194 | Settings::values.scaling_filter.SetValue(scaling_filter); | 205 | Settings::values.scaling_filter.SetValue(scaling_filter); |
| 195 | } | 206 | } |
| 207 | if (Settings::values.anti_aliasing.UsingGlobal()) { | ||
| 208 | Settings::values.anti_aliasing.SetValue(anti_aliasing); | ||
| 209 | } | ||
| 196 | } else { | 210 | } else { |
| 197 | if (ui->resolution_combobox->currentIndex() == ConfigurationShared::USE_GLOBAL_INDEX) { | 211 | if (ui->resolution_combobox->currentIndex() == ConfigurationShared::USE_GLOBAL_INDEX) { |
| 198 | Settings::values.resolution_setup.SetGlobal(true); | 212 | Settings::values.resolution_setup.SetGlobal(true); |
| @@ -206,6 +220,12 @@ void ConfigureGraphics::ApplyConfiguration() { | |||
| 206 | Settings::values.scaling_filter.SetGlobal(false); | 220 | Settings::values.scaling_filter.SetGlobal(false); |
| 207 | Settings::values.scaling_filter.SetValue(scaling_filter); | 221 | Settings::values.scaling_filter.SetValue(scaling_filter); |
| 208 | } | 222 | } |
| 223 | if (ui->anti_aliasing_combobox->currentIndex() == ConfigurationShared::USE_GLOBAL_INDEX) { | ||
| 224 | Settings::values.anti_aliasing.SetGlobal(true); | ||
| 225 | } else { | ||
| 226 | Settings::values.anti_aliasing.SetGlobal(false); | ||
| 227 | Settings::values.anti_aliasing.SetValue(anti_aliasing); | ||
| 228 | } | ||
| 209 | if (ui->api->currentIndex() == ConfigurationShared::USE_GLOBAL_INDEX) { | 229 | if (ui->api->currentIndex() == ConfigurationShared::USE_GLOBAL_INDEX) { |
| 210 | Settings::values.renderer_backend.SetGlobal(true); | 230 | Settings::values.renderer_backend.SetGlobal(true); |
| 211 | Settings::values.shader_backend.SetGlobal(true); | 231 | Settings::values.shader_backend.SetGlobal(true); |
| @@ -354,6 +374,7 @@ void ConfigureGraphics::SetupPerGameUI() { | |||
| 354 | ui->aspect_ratio_combobox->setEnabled(Settings::values.aspect_ratio.UsingGlobal()); | 374 | ui->aspect_ratio_combobox->setEnabled(Settings::values.aspect_ratio.UsingGlobal()); |
| 355 | ui->resolution_combobox->setEnabled(Settings::values.resolution_setup.UsingGlobal()); | 375 | ui->resolution_combobox->setEnabled(Settings::values.resolution_setup.UsingGlobal()); |
| 356 | ui->scaling_filter_combobox->setEnabled(Settings::values.scaling_filter.UsingGlobal()); | 376 | ui->scaling_filter_combobox->setEnabled(Settings::values.scaling_filter.UsingGlobal()); |
| 377 | ui->anti_aliasing_combobox->setEnabled(Settings::values.anti_aliasing.UsingGlobal()); | ||
| 357 | ui->use_asynchronous_gpu_emulation->setEnabled( | 378 | ui->use_asynchronous_gpu_emulation->setEnabled( |
| 358 | Settings::values.use_asynchronous_gpu_emulation.UsingGlobal()); | 379 | Settings::values.use_asynchronous_gpu_emulation.UsingGlobal()); |
| 359 | ui->nvdec_emulation->setEnabled(Settings::values.nvdec_emulation.UsingGlobal()); | 380 | ui->nvdec_emulation->setEnabled(Settings::values.nvdec_emulation.UsingGlobal()); |
| @@ -388,6 +409,9 @@ void ConfigureGraphics::SetupPerGameUI() { | |||
| 388 | ConfigurationShared::SetColoredComboBox( | 409 | ConfigurationShared::SetColoredComboBox( |
| 389 | ui->scaling_filter_combobox, ui->scaling_filter_label, | 410 | ui->scaling_filter_combobox, ui->scaling_filter_label, |
| 390 | static_cast<int>(Settings::values.scaling_filter.GetValue(true))); | 411 | static_cast<int>(Settings::values.scaling_filter.GetValue(true))); |
| 412 | ConfigurationShared::SetColoredComboBox( | ||
| 413 | ui->anti_aliasing_combobox, ui->anti_aliasing_label, | ||
| 414 | static_cast<int>(Settings::values.anti_aliasing.GetValue(true))); | ||
| 391 | ConfigurationShared::InsertGlobalItem( | 415 | ConfigurationShared::InsertGlobalItem( |
| 392 | ui->api, static_cast<int>(Settings::values.renderer_backend.GetValue(true))); | 416 | ui->api, static_cast<int>(Settings::values.renderer_backend.GetValue(true))); |
| 393 | ConfigurationShared::InsertGlobalItem( | 417 | ConfigurationShared::InsertGlobalItem( |
diff --git a/src/yuzu/configuration/configure_graphics.ui b/src/yuzu/configuration/configure_graphics.ui index 7cfb2860d..0d2987fcf 100644 --- a/src/yuzu/configuration/configure_graphics.ui +++ b/src/yuzu/configuration/configure_graphics.ui | |||
| @@ -438,6 +438,45 @@ | |||
| 438 | </widget> | 438 | </widget> |
| 439 | </item> | 439 | </item> |
| 440 | <item> | 440 | <item> |
| 441 | <widget class="QWidget" name="anti_aliasing_layout" native="true"> | ||
| 442 | <layout class="QHBoxLayout" name="horizontalLayout_7"> | ||
| 443 | <property name="leftMargin"> | ||
| 444 | <number>0</number> | ||
| 445 | </property> | ||
| 446 | <property name="topMargin"> | ||
| 447 | <number>0</number> | ||
| 448 | </property> | ||
| 449 | <property name="rightMargin"> | ||
| 450 | <number>0</number> | ||
| 451 | </property> | ||
| 452 | <property name="bottomMargin"> | ||
| 453 | <number>0</number> | ||
| 454 | </property> | ||
| 455 | <item> | ||
| 456 | <widget class="QLabel" name="anti_aliasing_label"> | ||
| 457 | <property name="text"> | ||
| 458 | <string>Anti-Aliasing Method:</string> | ||
| 459 | </property> | ||
| 460 | </widget> | ||
| 461 | </item> | ||
| 462 | <item> | ||
| 463 | <widget class="QComboBox" name="anti_aliasing_combobox"> | ||
| 464 | <item> | ||
| 465 | <property name="text"> | ||
| 466 | <string>None</string> | ||
| 467 | </property> | ||
| 468 | </item> | ||
| 469 | <item> | ||
| 470 | <property name="text"> | ||
| 471 | <string>FXAA</string> | ||
| 472 | </property> | ||
| 473 | </item> | ||
| 474 | </widget> | ||
| 475 | </item> | ||
| 476 | </layout> | ||
| 477 | </widget> | ||
| 478 | </item> | ||
| 479 | <item> | ||
| 441 | <widget class="QWidget" name="bg_layout" native="true"> | 480 | <widget class="QWidget" name="bg_layout" native="true"> |
| 442 | <property name="sizePolicy"> | 481 | <property name="sizePolicy"> |
| 443 | <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> | 482 | <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> |
diff --git a/src/yuzu_cmd/config.cpp b/src/yuzu_cmd/config.cpp index 3c888d84e..33241ea98 100644 --- a/src/yuzu_cmd/config.cpp +++ b/src/yuzu_cmd/config.cpp | |||
| @@ -453,6 +453,7 @@ void Config::ReadValues() { | |||
| 453 | 453 | ||
| 454 | ReadSetting("Renderer", Settings::values.resolution_setup); | 454 | ReadSetting("Renderer", Settings::values.resolution_setup); |
| 455 | ReadSetting("Renderer", Settings::values.scaling_filter); | 455 | ReadSetting("Renderer", Settings::values.scaling_filter); |
| 456 | ReadSetting("Renderer", Settings::values.anti_aliasing); | ||
| 456 | ReadSetting("Renderer", Settings::values.fullscreen_mode); | 457 | ReadSetting("Renderer", Settings::values.fullscreen_mode); |
| 457 | ReadSetting("Renderer", Settings::values.aspect_ratio); | 458 | ReadSetting("Renderer", Settings::values.aspect_ratio); |
| 458 | ReadSetting("Renderer", Settings::values.max_anisotropy); | 459 | ReadSetting("Renderer", Settings::values.max_anisotropy); |