diff options
Diffstat (limited to 'src/yuzu/configuration')
| -rw-r--r-- | src/yuzu/configuration/config.cpp | 4 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics.cpp | 10 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics.h | 1 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics.ui | 7 | 
4 files changed, 22 insertions, 0 deletions
diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp index d2913d613..abbc83929 100644 --- a/src/yuzu/configuration/config.cpp +++ b/src/yuzu/configuration/config.cpp @@ -717,6 +717,8 @@ void Config::ReadRendererValues() {      ReadSettingGlobal(Settings::values.gpu_accuracy, QStringLiteral("gpu_accuracy"), 0);      ReadSettingGlobal(Settings::values.use_asynchronous_gpu_emulation,                        QStringLiteral("use_asynchronous_gpu_emulation"), false); +    ReadSettingGlobal(Settings::values.use_nvdec_emulation, QStringLiteral("use_nvdec_emulation"), +                      true);      ReadSettingGlobal(Settings::values.use_vsync, QStringLiteral("use_vsync"), true);      ReadSettingGlobal(Settings::values.use_assembly_shaders, QStringLiteral("use_assembly_shaders"),                        false); @@ -1265,6 +1267,8 @@ void Config::SaveRendererValues() {                         Settings::values.gpu_accuracy.UsingGlobal(), 0);      WriteSettingGlobal(QStringLiteral("use_asynchronous_gpu_emulation"),                         Settings::values.use_asynchronous_gpu_emulation, false); +    WriteSettingGlobal(QStringLiteral("use_nvdec_emulation"), Settings::values.use_nvdec_emulation, +                       true);      WriteSettingGlobal(QStringLiteral("use_vsync"), Settings::values.use_vsync, true);      WriteSettingGlobal(QStringLiteral("use_assembly_shaders"),                         Settings::values.use_assembly_shaders, false); diff --git a/src/yuzu/configuration/configure_graphics.cpp b/src/yuzu/configuration/configure_graphics.cpp index 07d818548..4f083ecda 100644 --- a/src/yuzu/configuration/configure_graphics.cpp +++ b/src/yuzu/configuration/configure_graphics.cpp @@ -70,9 +70,11 @@ void ConfigureGraphics::SetConfiguration() {      ui->api->setEnabled(runtime_lock);      ui->use_asynchronous_gpu_emulation->setEnabled(runtime_lock);      ui->use_disk_shader_cache->setEnabled(runtime_lock); +    ui->use_nvdec_emulation->setEnabled(runtime_lock);      ui->use_disk_shader_cache->setChecked(Settings::values.use_disk_shader_cache.GetValue());      ui->use_asynchronous_gpu_emulation->setChecked(          Settings::values.use_asynchronous_gpu_emulation.GetValue()); +    ui->use_nvdec_emulation->setChecked(Settings::values.use_nvdec_emulation.GetValue());      if (Settings::configuring_global) {          ui->api->setCurrentIndex(static_cast<int>(Settings::values.renderer_backend.GetValue())); @@ -116,6 +118,9 @@ void ConfigureGraphics::ApplyConfiguration() {              Settings::values.use_asynchronous_gpu_emulation.SetValue(                  ui->use_asynchronous_gpu_emulation->isChecked());          } +        if (Settings::values.use_nvdec_emulation.UsingGlobal()) { +            Settings::values.use_nvdec_emulation.SetValue(ui->use_nvdec_emulation->isChecked()); +        }          if (Settings::values.bg_red.UsingGlobal()) {              Settings::values.bg_red.SetValue(static_cast<float>(bg_color.redF()));              Settings::values.bg_green.SetValue(static_cast<float>(bg_color.greenF())); @@ -144,6 +149,8 @@ void ConfigureGraphics::ApplyConfiguration() {          ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_asynchronous_gpu_emulation,                                                   ui->use_asynchronous_gpu_emulation,                                                   use_asynchronous_gpu_emulation); +        ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_nvdec_emulation, +                                                 ui->use_nvdec_emulation, use_nvdec_emulation);          if (ui->bg_combobox->currentIndex() == ConfigurationShared::USE_GLOBAL_INDEX) {              Settings::values.bg_red.SetGlobal(true); @@ -240,6 +247,7 @@ void ConfigureGraphics::SetupPerGameUI() {          ui->aspect_ratio_combobox->setEnabled(Settings::values.aspect_ratio.UsingGlobal());          ui->use_asynchronous_gpu_emulation->setEnabled(              Settings::values.use_asynchronous_gpu_emulation.UsingGlobal()); +        ui->use_nvdec_emulation->setEnabled(Settings::values.use_nvdec_emulation.UsingGlobal());          ui->use_disk_shader_cache->setEnabled(Settings::values.use_disk_shader_cache.UsingGlobal());          ui->bg_button->setEnabled(Settings::values.bg_red.UsingGlobal()); @@ -253,6 +261,8 @@ void ConfigureGraphics::SetupPerGameUI() {      ConfigurationShared::SetColoredTristate(          ui->use_disk_shader_cache, Settings::values.use_disk_shader_cache, use_disk_shader_cache); +    ConfigurationShared::SetColoredTristate( +        ui->use_nvdec_emulation, Settings::values.use_nvdec_emulation, use_nvdec_emulation);      ConfigurationShared::SetColoredTristate(ui->use_asynchronous_gpu_emulation,                                              Settings::values.use_asynchronous_gpu_emulation,                                              use_asynchronous_gpu_emulation); diff --git a/src/yuzu/configuration/configure_graphics.h b/src/yuzu/configuration/configure_graphics.h index b4961f719..1fefc88eb 100644 --- a/src/yuzu/configuration/configure_graphics.h +++ b/src/yuzu/configuration/configure_graphics.h @@ -46,6 +46,7 @@ private:      std::unique_ptr<Ui::ConfigureGraphics> ui;      QColor bg_color; +    ConfigurationShared::CheckState use_nvdec_emulation;      ConfigurationShared::CheckState use_disk_shader_cache;      ConfigurationShared::CheckState use_asynchronous_gpu_emulation; diff --git a/src/yuzu/configuration/configure_graphics.ui b/src/yuzu/configuration/configure_graphics.ui index 62aa337e7..58486eb1e 100644 --- a/src/yuzu/configuration/configure_graphics.ui +++ b/src/yuzu/configuration/configure_graphics.ui @@ -98,6 +98,13 @@           </widget>          </item>          <item> +         <widget class="QCheckBox" name="use_nvdec_emulation"> +          <property name="text"> +           <string>Use NVDEC emulation</string> +          </property> +         </widget> +        </item> +        <item>           <widget class="QWidget" name="aspect_ratio_layout" native="true">            <layout class="QHBoxLayout" name="horizontalLayout_6">             <property name="leftMargin">  | 
