diff options
Diffstat (limited to '')
| -rw-r--r-- | src/core/settings.h | 1 | ||||
| -rw-r--r-- | src/core/telemetry_session.cpp | 2 | ||||
| -rw-r--r-- | src/yuzu/configuration/config.cpp | 3 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics.cpp | 2 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics.ui | 7 | ||||
| -rw-r--r-- | src/yuzu_cmd/config.cpp | 2 | ||||
| -rw-r--r-- | src/yuzu_cmd/default_ini.h | 4 |
7 files changed, 21 insertions, 0 deletions
diff --git a/src/core/settings.h b/src/core/settings.h index a7f1e5fa0..7150d9755 100644 --- a/src/core/settings.h +++ b/src/core/settings.h | |||
| @@ -129,6 +129,7 @@ struct Values { | |||
| 129 | // Renderer | 129 | // Renderer |
| 130 | float resolution_factor; | 130 | float resolution_factor; |
| 131 | bool toggle_framelimit; | 131 | bool toggle_framelimit; |
| 132 | bool use_accurate_framebuffers; | ||
| 132 | 133 | ||
| 133 | float bg_red; | 134 | float bg_red; |
| 134 | float bg_green; | 135 | float bg_green; |
diff --git a/src/core/telemetry_session.cpp b/src/core/telemetry_session.cpp index a60aa1143..270d68222 100644 --- a/src/core/telemetry_session.cpp +++ b/src/core/telemetry_session.cpp | |||
| @@ -161,6 +161,8 @@ TelemetrySession::TelemetrySession() { | |||
| 161 | Settings::values.resolution_factor); | 161 | Settings::values.resolution_factor); |
| 162 | AddField(Telemetry::FieldType::UserConfig, "Renderer_ToggleFramelimit", | 162 | AddField(Telemetry::FieldType::UserConfig, "Renderer_ToggleFramelimit", |
| 163 | Settings::values.toggle_framelimit); | 163 | Settings::values.toggle_framelimit); |
| 164 | AddField(Telemetry::FieldType::UserConfig, "Renderer_UseAccurateFramebuffers", | ||
| 165 | Settings::values.use_accurate_framebuffers); | ||
| 164 | AddField(Telemetry::FieldType::UserConfig, "System_UseDockedMode", | 166 | AddField(Telemetry::FieldType::UserConfig, "System_UseDockedMode", |
| 165 | Settings::values.use_docked_mode); | 167 | Settings::values.use_docked_mode); |
| 166 | } | 168 | } |
diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp index 8316db708..cd7986efa 100644 --- a/src/yuzu/configuration/config.cpp +++ b/src/yuzu/configuration/config.cpp | |||
| @@ -84,6 +84,8 @@ void Config::ReadValues() { | |||
| 84 | qt_config->beginGroup("Renderer"); | 84 | qt_config->beginGroup("Renderer"); |
| 85 | Settings::values.resolution_factor = qt_config->value("resolution_factor", 1.0).toFloat(); | 85 | Settings::values.resolution_factor = qt_config->value("resolution_factor", 1.0).toFloat(); |
| 86 | Settings::values.toggle_framelimit = qt_config->value("toggle_framelimit", true).toBool(); | 86 | Settings::values.toggle_framelimit = qt_config->value("toggle_framelimit", true).toBool(); |
| 87 | Settings::values.use_accurate_framebuffers = | ||
| 88 | qt_config->value("use_accurate_framebuffers", false).toBool(); | ||
| 87 | 89 | ||
| 88 | Settings::values.bg_red = qt_config->value("bg_red", 0.0).toFloat(); | 90 | Settings::values.bg_red = qt_config->value("bg_red", 0.0).toFloat(); |
| 89 | Settings::values.bg_green = qt_config->value("bg_green", 0.0).toFloat(); | 91 | Settings::values.bg_green = qt_config->value("bg_green", 0.0).toFloat(); |
| @@ -184,6 +186,7 @@ void Config::SaveValues() { | |||
| 184 | qt_config->beginGroup("Renderer"); | 186 | qt_config->beginGroup("Renderer"); |
| 185 | qt_config->setValue("resolution_factor", (double)Settings::values.resolution_factor); | 187 | qt_config->setValue("resolution_factor", (double)Settings::values.resolution_factor); |
| 186 | qt_config->setValue("toggle_framelimit", Settings::values.toggle_framelimit); | 188 | qt_config->setValue("toggle_framelimit", Settings::values.toggle_framelimit); |
| 189 | qt_config->setValue("use_accurate_framebuffers", Settings::values.use_accurate_framebuffers); | ||
| 187 | 190 | ||
| 188 | // Cast to double because Qt's written float values are not human-readable | 191 | // Cast to double because Qt's written float values are not human-readable |
| 189 | qt_config->setValue("bg_red", (double)Settings::values.bg_red); | 192 | qt_config->setValue("bg_red", (double)Settings::values.bg_red); |
diff --git a/src/yuzu/configuration/configure_graphics.cpp b/src/yuzu/configuration/configure_graphics.cpp index 47b9b6e95..7664880d5 100644 --- a/src/yuzu/configuration/configure_graphics.cpp +++ b/src/yuzu/configuration/configure_graphics.cpp | |||
| @@ -59,11 +59,13 @@ void ConfigureGraphics::setConfiguration() { | |||
| 59 | ui->resolution_factor_combobox->setCurrentIndex( | 59 | ui->resolution_factor_combobox->setCurrentIndex( |
| 60 | static_cast<int>(FromResolutionFactor(Settings::values.resolution_factor))); | 60 | static_cast<int>(FromResolutionFactor(Settings::values.resolution_factor))); |
| 61 | ui->toggle_framelimit->setChecked(Settings::values.toggle_framelimit); | 61 | ui->toggle_framelimit->setChecked(Settings::values.toggle_framelimit); |
| 62 | ui->use_accurate_framebuffers->setChecked(Settings::values.use_accurate_framebuffers); | ||
| 62 | } | 63 | } |
| 63 | 64 | ||
| 64 | void ConfigureGraphics::applyConfiguration() { | 65 | void ConfigureGraphics::applyConfiguration() { |
| 65 | Settings::values.resolution_factor = | 66 | Settings::values.resolution_factor = |
| 66 | ToResolutionFactor(static_cast<Resolution>(ui->resolution_factor_combobox->currentIndex())); | 67 | ToResolutionFactor(static_cast<Resolution>(ui->resolution_factor_combobox->currentIndex())); |
| 67 | Settings::values.toggle_framelimit = ui->toggle_framelimit->isChecked(); | 68 | Settings::values.toggle_framelimit = ui->toggle_framelimit->isChecked(); |
| 69 | Settings::values.use_accurate_framebuffers = ui->use_accurate_framebuffers->isChecked(); | ||
| 68 | Settings::Apply(); | 70 | Settings::Apply(); |
| 69 | } | 71 | } |
diff --git a/src/yuzu/configuration/configure_graphics.ui b/src/yuzu/configuration/configure_graphics.ui index 366931a9a..7d092df03 100644 --- a/src/yuzu/configuration/configure_graphics.ui +++ b/src/yuzu/configuration/configure_graphics.ui | |||
| @@ -30,6 +30,13 @@ | |||
| 30 | </widget> | 30 | </widget> |
| 31 | </item> | 31 | </item> |
| 32 | <item> | 32 | <item> |
| 33 | <widget class="QCheckBox" name="use_accurate_framebuffers"> | ||
| 34 | <property name="text"> | ||
| 35 | <string>Use accurate framebuffers (slow)</string> | ||
| 36 | </property> | ||
| 37 | </widget> | ||
| 38 | </item> | ||
| 39 | <item> | ||
| 33 | <layout class="QHBoxLayout" name="horizontalLayout"> | 40 | <layout class="QHBoxLayout" name="horizontalLayout"> |
| 34 | <item> | 41 | <item> |
| 35 | <widget class="QLabel" name="label"> | 42 | <widget class="QLabel" name="label"> |
diff --git a/src/yuzu_cmd/config.cpp b/src/yuzu_cmd/config.cpp index ee6e4d658..150915c17 100644 --- a/src/yuzu_cmd/config.cpp +++ b/src/yuzu_cmd/config.cpp | |||
| @@ -98,6 +98,8 @@ void Config::ReadValues() { | |||
| 98 | (float)sdl2_config->GetReal("Renderer", "resolution_factor", 1.0); | 98 | (float)sdl2_config->GetReal("Renderer", "resolution_factor", 1.0); |
| 99 | Settings::values.toggle_framelimit = | 99 | Settings::values.toggle_framelimit = |
| 100 | sdl2_config->GetBoolean("Renderer", "toggle_framelimit", true); | 100 | sdl2_config->GetBoolean("Renderer", "toggle_framelimit", true); |
| 101 | Settings::values.use_accurate_framebuffers = | ||
| 102 | sdl2_config->GetBoolean("Renderer", "use_accurate_framebuffers", false); | ||
| 101 | 103 | ||
| 102 | Settings::values.bg_red = (float)sdl2_config->GetReal("Renderer", "bg_red", 0.0); | 104 | Settings::values.bg_red = (float)sdl2_config->GetReal("Renderer", "bg_red", 0.0); |
| 103 | Settings::values.bg_green = (float)sdl2_config->GetReal("Renderer", "bg_green", 0.0); | 105 | Settings::values.bg_green = (float)sdl2_config->GetReal("Renderer", "bg_green", 0.0); |
diff --git a/src/yuzu_cmd/default_ini.h b/src/yuzu_cmd/default_ini.h index 1c438c3f5..5896971d4 100644 --- a/src/yuzu_cmd/default_ini.h +++ b/src/yuzu_cmd/default_ini.h | |||
| @@ -102,6 +102,10 @@ resolution_factor = | |||
| 102 | # 0 (default): Off, 1: On | 102 | # 0 (default): Off, 1: On |
| 103 | use_vsync = | 103 | use_vsync = |
| 104 | 104 | ||
| 105 | # Whether to use accurate framebuffers | ||
| 106 | # 0 (default): Off (fast), 1 : On (slow) | ||
| 107 | use_accurate_framebuffers = | ||
| 108 | |||
| 105 | # The clear color for the renderer. What shows up on the sides of the bottom screen. | 109 | # The clear color for the renderer. What shows up on the sides of the bottom screen. |
| 106 | # Must be in range of 0.0-1.0. Defaults to 1.0 for all. | 110 | # Must be in range of 0.0-1.0. Defaults to 1.0 for all. |
| 107 | bg_red = | 111 | bg_red = |