diff options
Diffstat (limited to 'src/yuzu/configuration')
| -rw-r--r-- | src/yuzu/configuration/config.cpp | 2 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics_advanced.cpp | 10 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics_advanced.h | 1 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_graphics_advanced.ui | 10 | 
4 files changed, 23 insertions, 0 deletions
| diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp index e9425b5bd..fbfa3ba35 100644 --- a/src/yuzu/configuration/config.cpp +++ b/src/yuzu/configuration/config.cpp @@ -709,6 +709,7 @@ void Config::ReadRendererValues() {      ReadGlobalSetting(Settings::values.use_asynchronous_shaders);      ReadGlobalSetting(Settings::values.use_fast_gpu_time);      ReadGlobalSetting(Settings::values.use_pessimistic_flushes); +    ReadGlobalSetting(Settings::values.use_vulkan_driver_pipeline_cache);      ReadGlobalSetting(Settings::values.bg_red);      ReadGlobalSetting(Settings::values.bg_green);      ReadGlobalSetting(Settings::values.bg_blue); @@ -1348,6 +1349,7 @@ void Config::SaveRendererValues() {      WriteGlobalSetting(Settings::values.use_asynchronous_shaders);      WriteGlobalSetting(Settings::values.use_fast_gpu_time);      WriteGlobalSetting(Settings::values.use_pessimistic_flushes); +    WriteGlobalSetting(Settings::values.use_vulkan_driver_pipeline_cache);      WriteGlobalSetting(Settings::values.bg_red);      WriteGlobalSetting(Settings::values.bg_green);      WriteGlobalSetting(Settings::values.bg_blue); diff --git a/src/yuzu/configuration/configure_graphics_advanced.cpp b/src/yuzu/configuration/configure_graphics_advanced.cpp index 01f074699..a3fbe2ad0 100644 --- a/src/yuzu/configuration/configure_graphics_advanced.cpp +++ b/src/yuzu/configuration/configure_graphics_advanced.cpp @@ -29,6 +29,8 @@ void ConfigureGraphicsAdvanced::SetConfiguration() {      ui->use_asynchronous_shaders->setChecked(Settings::values.use_asynchronous_shaders.GetValue());      ui->use_fast_gpu_time->setChecked(Settings::values.use_fast_gpu_time.GetValue());      ui->use_pessimistic_flushes->setChecked(Settings::values.use_pessimistic_flushes.GetValue()); +    ui->use_vulkan_driver_pipeline_cache->setChecked( +        Settings::values.use_vulkan_driver_pipeline_cache.GetValue());      if (Settings::IsConfiguringGlobal()) {          ui->gpu_accuracy->setCurrentIndex( @@ -58,6 +60,9 @@ void ConfigureGraphicsAdvanced::ApplyConfiguration() {                                               ui->use_fast_gpu_time, use_fast_gpu_time);      ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_pessimistic_flushes,                                               ui->use_pessimistic_flushes, use_pessimistic_flushes); +    ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_vulkan_driver_pipeline_cache, +                                             ui->use_vulkan_driver_pipeline_cache, +                                             use_vulkan_driver_pipeline_cache);  }  void ConfigureGraphicsAdvanced::changeEvent(QEvent* event) { @@ -82,6 +87,8 @@ void ConfigureGraphicsAdvanced::SetupPerGameUI() {          ui->use_fast_gpu_time->setEnabled(Settings::values.use_fast_gpu_time.UsingGlobal());          ui->use_pessimistic_flushes->setEnabled(              Settings::values.use_pessimistic_flushes.UsingGlobal()); +        ui->use_vulkan_driver_pipeline_cache->setEnabled( +            Settings::values.use_vulkan_driver_pipeline_cache.UsingGlobal());          ui->anisotropic_filtering_combobox->setEnabled(              Settings::values.max_anisotropy.UsingGlobal()); @@ -97,6 +104,9 @@ void ConfigureGraphicsAdvanced::SetupPerGameUI() {      ConfigurationShared::SetColoredTristate(ui->use_pessimistic_flushes,                                              Settings::values.use_pessimistic_flushes,                                              use_pessimistic_flushes); +    ConfigurationShared::SetColoredTristate(ui->use_vulkan_driver_pipeline_cache, +                                            Settings::values.use_vulkan_driver_pipeline_cache, +                                            use_vulkan_driver_pipeline_cache);      ConfigurationShared::SetColoredComboBox(          ui->gpu_accuracy, ui->label_gpu_accuracy,          static_cast<int>(Settings::values.gpu_accuracy.GetValue(true))); diff --git a/src/yuzu/configuration/configure_graphics_advanced.h b/src/yuzu/configuration/configure_graphics_advanced.h index 12e816905..891efc068 100644 --- a/src/yuzu/configuration/configure_graphics_advanced.h +++ b/src/yuzu/configuration/configure_graphics_advanced.h @@ -40,6 +40,7 @@ private:      ConfigurationShared::CheckState use_asynchronous_shaders;      ConfigurationShared::CheckState use_fast_gpu_time;      ConfigurationShared::CheckState use_pessimistic_flushes; +    ConfigurationShared::CheckState use_vulkan_driver_pipeline_cache;      const Core::System& system;  }; diff --git a/src/yuzu/configuration/configure_graphics_advanced.ui b/src/yuzu/configuration/configure_graphics_advanced.ui index 87a121471..ccbdcf08f 100644 --- a/src/yuzu/configuration/configure_graphics_advanced.ui +++ b/src/yuzu/configuration/configure_graphics_advanced.ui @@ -110,6 +110,16 @@           </widget>          </item>          <item> +         <widget class="QCheckBox" name="use_vulkan_driver_pipeline_cache"> +          <property name="toolTip"> +            <string>Enables GPU vendor-specific pipeline cache. This option can improve shader loading time significantly in cases where the Vulkan driver does not store pipeline cache files internally.</string> +          </property> +          <property name="text"> +           <string>Use Vulkan pipeline cache</string> +          </property> +         </widget> +        </item> +        <item>           <widget class="QWidget" name="af_layout" native="true">            <layout class="QHBoxLayout" name="horizontalLayout_1">             <property name="leftMargin"> | 
