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
@ -95,7 +95,14 @@ void Config::ReadValues() {
|
|||||||
|
|
||||||
// Renderer
|
// Renderer
|
||||||
Settings::values.use_hw_renderer = sdl2_config->GetBoolean("Renderer", "use_hw_renderer", true);
|
Settings::values.use_hw_renderer = sdl2_config->GetBoolean("Renderer", "use_hw_renderer", true);
|
||||||
|
#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 = sdl2_config->GetBoolean("Renderer", "use_hw_shader", false);
|
||||||
|
#else
|
||||||
Settings::values.use_hw_shader = sdl2_config->GetBoolean("Renderer", "use_hw_shader", true);
|
Settings::values.use_hw_shader = sdl2_config->GetBoolean("Renderer", "use_hw_shader", true);
|
||||||
|
#endif
|
||||||
Settings::values.shaders_accurate_gs =
|
Settings::values.shaders_accurate_gs =
|
||||||
sdl2_config->GetBoolean("Renderer", "shaders_accurate_gs", true);
|
sdl2_config->GetBoolean("Renderer", "shaders_accurate_gs", true);
|
||||||
Settings::values.shaders_accurate_mul =
|
Settings::values.shaders_accurate_mul =
|
||||||
|
@ -83,7 +83,14 @@ void Config::ReadValues() {
|
|||||||
|
|
||||||
qt_config->beginGroup("Renderer");
|
qt_config->beginGroup("Renderer");
|
||||||
Settings::values.use_hw_renderer = qt_config->value("use_hw_renderer", true).toBool();
|
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();
|
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_gs = qt_config->value("shaders_accurate_gs", true).toBool();
|
||||||
Settings::values.shaders_accurate_mul =
|
Settings::values.shaders_accurate_mul =
|
||||||
qt_config->value("shaders_accurate_mul", false).toBool();
|
qt_config->value("shaders_accurate_mul", false).toBool();
|
||||||
|
@ -2,6 +2,9 @@
|
|||||||
// Licensed under GPLv2 or any later version
|
// Licensed under GPLv2 or any later version
|
||||||
// Refer to the license.txt file included.
|
// Refer to the license.txt file included.
|
||||||
|
|
||||||
|
#ifdef __APPLE__
|
||||||
|
#include <QMessageBox>
|
||||||
|
#endif
|
||||||
#include "citra_qt/configuration/configure_graphics.h"
|
#include "citra_qt/configuration/configure_graphics.h"
|
||||||
#include "core/core.h"
|
#include "core/core.h"
|
||||||
#include "core/settings.h"
|
#include "core/settings.h"
|
||||||
@ -26,6 +29,18 @@ ConfigureGraphics::ConfigureGraphics(QWidget* parent)
|
|||||||
ui->hw_shader_group->setEnabled(ui->toggle_hw_shader->isChecked());
|
ui->hw_shader_group->setEnabled(ui->toggle_hw_shader->isChecked());
|
||||||
connect(ui->toggle_hw_shader, &QCheckBox::stateChanged, ui->hw_shader_group,
|
connect(ui->toggle_hw_shader, &QCheckBox::stateChanged, ui->hw_shader_group,
|
||||||
&QWidget::setEnabled);
|
&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() {}
|
ConfigureGraphics::~ConfigureGraphics() {}
|
||||||
|
Loading…
Reference in New Issue
Block a user