mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-30 21:30:04 +00:00 
			
		
		
		
	citra_qt: disable hw shader by default for macos
Also show an warning when turning it on.
This commit is contained in:
		
							parent
							
								
									fd5f71bcff
								
							
						
					
					
						commit
						a398bceb93
					
				
					 3 changed files with 29 additions and 0 deletions
				
			
		|  | @ -83,7 +83,14 @@ void Config::ReadValues() { | |||
| 
 | ||||
|     qt_config->beginGroup("Renderer"); | ||||
|     Settings::values.use_hw_renderer = qt_config->value("use_hw_renderer", true).toBool(); | ||||
| #ifdef __APPLE__ | ||||
|     // Hardware shader is broken on macos thanks to poor drivers.
 | ||||
|     // We still want to provide this option for test/development purposes, but disable it by
 | ||||
|     // default.
 | ||||
|     Settings::values.use_hw_shader = qt_config->value("use_hw_shader", false).toBool(); | ||||
| #else | ||||
|     Settings::values.use_hw_shader = qt_config->value("use_hw_shader", true).toBool(); | ||||
| #endif | ||||
|     Settings::values.shaders_accurate_gs = qt_config->value("shaders_accurate_gs", true).toBool(); | ||||
|     Settings::values.shaders_accurate_mul = | ||||
|         qt_config->value("shaders_accurate_mul", false).toBool(); | ||||
|  |  | |||
|  | @ -2,6 +2,9 @@ | |||
| // Licensed under GPLv2 or any later version
 | ||||
| // Refer to the license.txt file included.
 | ||||
| 
 | ||||
| #ifdef __APPLE__ | ||||
| #include <QMessageBox> | ||||
| #endif | ||||
| #include "citra_qt/configuration/configure_graphics.h" | ||||
| #include "core/core.h" | ||||
| #include "core/settings.h" | ||||
|  | @ -26,6 +29,18 @@ ConfigureGraphics::ConfigureGraphics(QWidget* parent) | |||
|     ui->hw_shader_group->setEnabled(ui->toggle_hw_shader->isChecked()); | ||||
|     connect(ui->toggle_hw_shader, &QCheckBox::stateChanged, ui->hw_shader_group, | ||||
|             &QWidget::setEnabled); | ||||
| #ifdef __APPLE__ | ||||
|     connect(ui->toggle_hw_shader, &QCheckBox::stateChanged, this, [this](int state) { | ||||
|         if (state == Qt::Checked) { | ||||
|             QMessageBox::warning( | ||||
|                 this, tr("Hardware Shader Warning"), | ||||
|                 tr("Hardware Shader support is broken on macOS, and will cause graphical issues " | ||||
|                    "like showing a black screen.<br><br>The option is only there for " | ||||
|                    "test/development purposes. If you experience graphical issues with Hardware " | ||||
|                    "Shader, please turn it off.")); | ||||
|         } | ||||
|     }); | ||||
| #endif | ||||
| } | ||||
| 
 | ||||
| ConfigureGraphics::~ConfigureGraphics() {} | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue