From 55c77dd25b7ab7a12acb764d27ada77c9d16cb00 Mon Sep 17 00:00:00 2001 From: lat9nq <22451773+lat9nq@users.noreply.github.com> Date: Tue, 2 May 2023 16:48:45 -0700 Subject: yuzu-qt/config: Add option to disable compute on Intel This option is only visible if an Intel GPU using the proprietary driver is found during Vulkan device enumeration. configure_graphics: More directly get driver id Vulkan::Device does quite a bit more than we need just to see the driver ID here. --- src/yuzu/configuration/configure_graphics_advanced.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/yuzu/configuration/configure_graphics_advanced.cpp') diff --git a/src/yuzu/configuration/configure_graphics_advanced.cpp b/src/yuzu/configuration/configure_graphics_advanced.cpp index 005b022ca..7975285a7 100644 --- a/src/yuzu/configuration/configure_graphics_advanced.cpp +++ b/src/yuzu/configuration/configure_graphics_advanced.cpp @@ -12,6 +12,8 @@ ConfigureGraphicsAdvanced::ConfigureGraphicsAdvanced(const Core::System& system_ ui->setupUi(this); + ui->enable_compute_pipelines_checkbox->setVisible(false); + SetupPerGameUI(); SetConfiguration(); @@ -26,6 +28,7 @@ void ConfigureGraphicsAdvanced::SetConfiguration() { ui->async_astc->setEnabled(runtime_lock); ui->use_asynchronous_shaders->setEnabled(runtime_lock); ui->anisotropic_filtering_combobox->setEnabled(runtime_lock); + ui->enable_compute_pipelines_checkbox->setEnabled(runtime_lock); ui->async_present->setChecked(Settings::values.async_presentation.GetValue()); ui->renderer_force_max_clock->setChecked(Settings::values.renderer_force_max_clock.GetValue()); @@ -34,6 +37,8 @@ void ConfigureGraphicsAdvanced::SetConfiguration() { ui->use_fast_gpu_time->setChecked(Settings::values.use_fast_gpu_time.GetValue()); ui->use_vulkan_driver_pipeline_cache->setChecked( Settings::values.use_vulkan_driver_pipeline_cache.GetValue()); + ui->enable_compute_pipelines_checkbox->setChecked( + Settings::values.enable_compute_pipelines.GetValue()); if (Settings::IsConfiguringGlobal()) { ui->gpu_accuracy->setCurrentIndex( @@ -70,6 +75,9 @@ void ConfigureGraphicsAdvanced::ApplyConfiguration() { ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_vulkan_driver_pipeline_cache, ui->use_vulkan_driver_pipeline_cache, use_vulkan_driver_pipeline_cache); + ConfigurationShared::ApplyPerGameSetting(&Settings::values.enable_compute_pipelines, + ui->enable_compute_pipelines_checkbox, + enable_compute_pipelines); } void ConfigureGraphicsAdvanced::changeEvent(QEvent* event) { @@ -99,6 +107,8 @@ void ConfigureGraphicsAdvanced::SetupPerGameUI() { Settings::values.use_vulkan_driver_pipeline_cache.UsingGlobal()); ui->anisotropic_filtering_combobox->setEnabled( Settings::values.max_anisotropy.UsingGlobal()); + ui->enable_compute_pipelines_checkbox->setEnabled( + Settings::values.enable_compute_pipelines.UsingGlobal()); return; } @@ -118,6 +128,9 @@ void ConfigureGraphicsAdvanced::SetupPerGameUI() { ConfigurationShared::SetColoredTristate(ui->use_vulkan_driver_pipeline_cache, Settings::values.use_vulkan_driver_pipeline_cache, use_vulkan_driver_pipeline_cache); + ConfigurationShared::SetColoredTristate(ui->enable_compute_pipelines_checkbox, + Settings::values.enable_compute_pipelines, + enable_compute_pipelines); ConfigurationShared::SetColoredComboBox( ui->gpu_accuracy, ui->label_gpu_accuracy, static_cast(Settings::values.gpu_accuracy.GetValue(true))); @@ -125,3 +138,7 @@ void ConfigureGraphicsAdvanced::SetupPerGameUI() { ui->anisotropic_filtering_combobox, ui->af_label, static_cast(Settings::values.max_anisotropy.GetValue(true))); } + +void ConfigureGraphicsAdvanced::ExposeComputeOption() { + ui->enable_compute_pipelines_checkbox->setVisible(true); +} -- cgit v1.2.3 From 40f3e2fbf1dc173fa2595d01f5b3a1defb7b186d Mon Sep 17 00:00:00 2001 From: lat9nq <22451773+lat9nq@users.noreply.github.com> Date: Mon, 8 May 2023 12:32:41 -0400 Subject: configure_graphics_advanced: Hide input compute toggle a little later SetColoredTristate causes the setting to become visible as it calls `show()` on it. --- src/yuzu/configuration/configure_graphics_advanced.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/yuzu/configuration/configure_graphics_advanced.cpp') diff --git a/src/yuzu/configuration/configure_graphics_advanced.cpp b/src/yuzu/configuration/configure_graphics_advanced.cpp index 7975285a7..7a11db89b 100644 --- a/src/yuzu/configuration/configure_graphics_advanced.cpp +++ b/src/yuzu/configuration/configure_graphics_advanced.cpp @@ -12,11 +12,11 @@ ConfigureGraphicsAdvanced::ConfigureGraphicsAdvanced(const Core::System& system_ ui->setupUi(this); - ui->enable_compute_pipelines_checkbox->setVisible(false); - SetupPerGameUI(); SetConfiguration(); + + ui->enable_compute_pipelines_checkbox->setVisible(false); } ConfigureGraphicsAdvanced::~ConfigureGraphicsAdvanced() = default; -- cgit v1.2.3