mirror of
https://github.com/Lime3DS/Lime3DS.git
synced 2024-11-27 12:04:16 +01:00
Merge pull request #4879 from tywald/accurate-gs-on
Remove 'Accurate Geometry Shader' setting
This commit is contained in:
commit
b4d45b57c7
@ -115,8 +115,6 @@ void Config::ReadValues() {
|
|||||||
#else
|
#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
|
#endif
|
||||||
Settings::values.shaders_accurate_gs =
|
|
||||||
sdl2_config->GetBoolean("Renderer", "shaders_accurate_gs", true);
|
|
||||||
Settings::values.shaders_accurate_mul =
|
Settings::values.shaders_accurate_mul =
|
||||||
sdl2_config->GetBoolean("Renderer", "shaders_accurate_mul", false);
|
sdl2_config->GetBoolean("Renderer", "shaders_accurate_mul", false);
|
||||||
Settings::values.use_shader_jit = sdl2_config->GetBoolean("Renderer", "use_shader_jit", true);
|
Settings::values.use_shader_jit = sdl2_config->GetBoolean("Renderer", "use_shader_jit", true);
|
||||||
|
@ -108,10 +108,6 @@ use_hw_shader =
|
|||||||
# 0: Off (Default. Faster, but causes issues in some games) 1: On (Slower, but correct)
|
# 0: Off (Default. Faster, but causes issues in some games) 1: On (Slower, but correct)
|
||||||
shaders_accurate_mul =
|
shaders_accurate_mul =
|
||||||
|
|
||||||
# Whether to fallback to software for geometry shaders
|
|
||||||
# 0: Off (Faster, but causes issues in some games) 1: On (Default. Slower, but correct)
|
|
||||||
shaders_accurate_gs =
|
|
||||||
|
|
||||||
# Whether to use the Just-In-Time (JIT) compiler for shader emulation
|
# Whether to use the Just-In-Time (JIT) compiler for shader emulation
|
||||||
# 0: Interpreter (slow), 1 (default): JIT (fast)
|
# 0: Interpreter (slow), 1 (default): JIT (fast)
|
||||||
use_shader_jit =
|
use_shader_jit =
|
||||||
|
@ -160,7 +160,6 @@ void Config::ReadValues() {
|
|||||||
#else
|
#else
|
||||||
Settings::values.use_hw_shader = ReadSetting("use_hw_shader", true).toBool();
|
Settings::values.use_hw_shader = ReadSetting("use_hw_shader", true).toBool();
|
||||||
#endif
|
#endif
|
||||||
Settings::values.shaders_accurate_gs = ReadSetting("shaders_accurate_gs", true).toBool();
|
|
||||||
Settings::values.shaders_accurate_mul = ReadSetting("shaders_accurate_mul", false).toBool();
|
Settings::values.shaders_accurate_mul = ReadSetting("shaders_accurate_mul", false).toBool();
|
||||||
Settings::values.use_shader_jit = ReadSetting("use_shader_jit", true).toBool();
|
Settings::values.use_shader_jit = ReadSetting("use_shader_jit", true).toBool();
|
||||||
Settings::values.resolution_factor =
|
Settings::values.resolution_factor =
|
||||||
@ -462,7 +461,6 @@ void Config::SaveValues() {
|
|||||||
qt_config->beginGroup("Renderer");
|
qt_config->beginGroup("Renderer");
|
||||||
WriteSetting("use_hw_renderer", Settings::values.use_hw_renderer, true);
|
WriteSetting("use_hw_renderer", Settings::values.use_hw_renderer, true);
|
||||||
WriteSetting("use_hw_shader", Settings::values.use_hw_shader, true);
|
WriteSetting("use_hw_shader", Settings::values.use_hw_shader, true);
|
||||||
WriteSetting("shaders_accurate_gs", Settings::values.shaders_accurate_gs, true);
|
|
||||||
WriteSetting("shaders_accurate_mul", Settings::values.shaders_accurate_mul, false);
|
WriteSetting("shaders_accurate_mul", Settings::values.shaders_accurate_mul, false);
|
||||||
WriteSetting("use_shader_jit", Settings::values.use_shader_jit, true);
|
WriteSetting("use_shader_jit", Settings::values.use_shader_jit, true);
|
||||||
WriteSetting("resolution_factor", Settings::values.resolution_factor, 1);
|
WriteSetting("resolution_factor", Settings::values.resolution_factor, 1);
|
||||||
|
@ -62,7 +62,6 @@ ConfigureGraphics::~ConfigureGraphics() = default;
|
|||||||
void ConfigureGraphics::SetConfiguration() {
|
void ConfigureGraphics::SetConfiguration() {
|
||||||
ui->toggle_hw_renderer->setChecked(Settings::values.use_hw_renderer);
|
ui->toggle_hw_renderer->setChecked(Settings::values.use_hw_renderer);
|
||||||
ui->toggle_hw_shader->setChecked(Settings::values.use_hw_shader);
|
ui->toggle_hw_shader->setChecked(Settings::values.use_hw_shader);
|
||||||
ui->toggle_accurate_gs->setChecked(Settings::values.shaders_accurate_gs);
|
|
||||||
ui->toggle_accurate_mul->setChecked(Settings::values.shaders_accurate_mul);
|
ui->toggle_accurate_mul->setChecked(Settings::values.shaders_accurate_mul);
|
||||||
ui->toggle_shader_jit->setChecked(Settings::values.use_shader_jit);
|
ui->toggle_shader_jit->setChecked(Settings::values.use_shader_jit);
|
||||||
ui->resolution_factor_combobox->setCurrentIndex(Settings::values.resolution_factor);
|
ui->resolution_factor_combobox->setCurrentIndex(Settings::values.resolution_factor);
|
||||||
@ -83,7 +82,6 @@ void ConfigureGraphics::SetConfiguration() {
|
|||||||
void ConfigureGraphics::ApplyConfiguration() {
|
void ConfigureGraphics::ApplyConfiguration() {
|
||||||
Settings::values.use_hw_renderer = ui->toggle_hw_renderer->isChecked();
|
Settings::values.use_hw_renderer = ui->toggle_hw_renderer->isChecked();
|
||||||
Settings::values.use_hw_shader = ui->toggle_hw_shader->isChecked();
|
Settings::values.use_hw_shader = ui->toggle_hw_shader->isChecked();
|
||||||
Settings::values.shaders_accurate_gs = ui->toggle_accurate_gs->isChecked();
|
|
||||||
Settings::values.shaders_accurate_mul = ui->toggle_accurate_mul->isChecked();
|
Settings::values.shaders_accurate_mul = ui->toggle_accurate_mul->isChecked();
|
||||||
Settings::values.use_shader_jit = ui->toggle_shader_jit->isChecked();
|
Settings::values.use_shader_jit = ui->toggle_shader_jit->isChecked();
|
||||||
Settings::values.resolution_factor =
|
Settings::values.resolution_factor =
|
||||||
|
@ -150,16 +150,6 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
|
||||||
<widget class="QCheckBox" name="toggle_accurate_gs">
|
|
||||||
<property name="toolTip">
|
|
||||||
<string><html><head/><body><p>Force to fall back to software shader emulation when geometry shaders are used. </p><p>Some games require this to be enabled for the hardware shader to render properly.</p><p>However this might reduce performance in some games</p></body></html></string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Accurate Geometry Shader</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
@ -27,7 +27,6 @@ void Apply() {
|
|||||||
VideoCore::g_hw_renderer_enabled = values.use_hw_renderer;
|
VideoCore::g_hw_renderer_enabled = values.use_hw_renderer;
|
||||||
VideoCore::g_shader_jit_enabled = values.use_shader_jit;
|
VideoCore::g_shader_jit_enabled = values.use_shader_jit;
|
||||||
VideoCore::g_hw_shader_enabled = values.use_hw_shader;
|
VideoCore::g_hw_shader_enabled = values.use_hw_shader;
|
||||||
VideoCore::g_hw_shader_accurate_gs = values.shaders_accurate_gs;
|
|
||||||
VideoCore::g_hw_shader_accurate_mul = values.shaders_accurate_mul;
|
VideoCore::g_hw_shader_accurate_mul = values.shaders_accurate_mul;
|
||||||
|
|
||||||
if (VideoCore::g_renderer) {
|
if (VideoCore::g_renderer) {
|
||||||
@ -76,7 +75,6 @@ void LogSettings() {
|
|||||||
LogSetting("Renderer_UseGLES", Settings::values.use_gles);
|
LogSetting("Renderer_UseGLES", Settings::values.use_gles);
|
||||||
LogSetting("Renderer_UseHwRenderer", Settings::values.use_hw_renderer);
|
LogSetting("Renderer_UseHwRenderer", Settings::values.use_hw_renderer);
|
||||||
LogSetting("Renderer_UseHwShader", Settings::values.use_hw_shader);
|
LogSetting("Renderer_UseHwShader", Settings::values.use_hw_shader);
|
||||||
LogSetting("Renderer_ShadersAccurateGs", Settings::values.shaders_accurate_gs);
|
|
||||||
LogSetting("Renderer_ShadersAccurateMul", Settings::values.shaders_accurate_mul);
|
LogSetting("Renderer_ShadersAccurateMul", Settings::values.shaders_accurate_mul);
|
||||||
LogSetting("Renderer_UseShaderJit", Settings::values.use_shader_jit);
|
LogSetting("Renderer_UseShaderJit", Settings::values.use_shader_jit);
|
||||||
LogSetting("Renderer_UseResolutionFactor", Settings::values.resolution_factor);
|
LogSetting("Renderer_UseResolutionFactor", Settings::values.resolution_factor);
|
||||||
|
@ -141,7 +141,6 @@ struct Values {
|
|||||||
bool use_gles;
|
bool use_gles;
|
||||||
bool use_hw_renderer;
|
bool use_hw_renderer;
|
||||||
bool use_hw_shader;
|
bool use_hw_shader;
|
||||||
bool shaders_accurate_gs;
|
|
||||||
bool shaders_accurate_mul;
|
bool shaders_accurate_mul;
|
||||||
bool use_shader_jit;
|
bool use_shader_jit;
|
||||||
u16 resolution_factor;
|
u16 resolution_factor;
|
||||||
|
@ -188,8 +188,6 @@ void TelemetrySession::AddInitialInfo(Loader::AppLoader& app_loader) {
|
|||||||
Settings::values.use_hw_renderer);
|
Settings::values.use_hw_renderer);
|
||||||
AddField(Telemetry::FieldType::UserConfig, "Renderer_UseHwShader",
|
AddField(Telemetry::FieldType::UserConfig, "Renderer_UseHwShader",
|
||||||
Settings::values.use_hw_shader);
|
Settings::values.use_hw_shader);
|
||||||
AddField(Telemetry::FieldType::UserConfig, "Renderer_ShadersAccurateGs",
|
|
||||||
Settings::values.shaders_accurate_gs);
|
|
||||||
AddField(Telemetry::FieldType::UserConfig, "Renderer_ShadersAccurateMul",
|
AddField(Telemetry::FieldType::UserConfig, "Renderer_ShadersAccurateMul",
|
||||||
Settings::values.shaders_accurate_mul);
|
Settings::values.shaders_accurate_mul);
|
||||||
AddField(Telemetry::FieldType::UserConfig, "Renderer_UseShaderJit",
|
AddField(Telemetry::FieldType::UserConfig, "Renderer_UseShaderJit",
|
||||||
|
@ -293,9 +293,7 @@ static void WritePicaReg(u32 id, u32 value, u32 mask) {
|
|||||||
// this, so this is left unimplemented for now. Revisit this when an issue is found in
|
// this, so this is left unimplemented for now. Revisit this when an issue is found in
|
||||||
// games.
|
// games.
|
||||||
} else {
|
} else {
|
||||||
if (VideoCore::g_hw_shader_accurate_gs) {
|
accelerate_draw = false;
|
||||||
accelerate_draw = false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool is_indexed = (id == PICA_REG_INDEX(pipeline.trigger_draw_indexed));
|
bool is_indexed = (id == PICA_REG_INDEX(pipeline.trigger_draw_indexed));
|
||||||
|
@ -21,7 +21,6 @@ std::unique_ptr<RendererBase> g_renderer; ///< Renderer plugin
|
|||||||
std::atomic<bool> g_hw_renderer_enabled;
|
std::atomic<bool> g_hw_renderer_enabled;
|
||||||
std::atomic<bool> g_shader_jit_enabled;
|
std::atomic<bool> g_shader_jit_enabled;
|
||||||
std::atomic<bool> g_hw_shader_enabled;
|
std::atomic<bool> g_hw_shader_enabled;
|
||||||
std::atomic<bool> g_hw_shader_accurate_gs;
|
|
||||||
std::atomic<bool> g_hw_shader_accurate_mul;
|
std::atomic<bool> g_hw_shader_accurate_mul;
|
||||||
std::atomic<bool> g_renderer_bg_color_update_requested;
|
std::atomic<bool> g_renderer_bg_color_update_requested;
|
||||||
std::atomic<bool> g_renderer_sampler_update_requested;
|
std::atomic<bool> g_renderer_sampler_update_requested;
|
||||||
|
@ -31,7 +31,6 @@ extern std::unique_ptr<RendererBase> g_renderer; ///< Renderer plugin
|
|||||||
extern std::atomic<bool> g_hw_renderer_enabled;
|
extern std::atomic<bool> g_hw_renderer_enabled;
|
||||||
extern std::atomic<bool> g_shader_jit_enabled;
|
extern std::atomic<bool> g_shader_jit_enabled;
|
||||||
extern std::atomic<bool> g_hw_shader_enabled;
|
extern std::atomic<bool> g_hw_shader_enabled;
|
||||||
extern std::atomic<bool> g_hw_shader_accurate_gs;
|
|
||||||
extern std::atomic<bool> g_hw_shader_accurate_mul;
|
extern std::atomic<bool> g_hw_shader_accurate_mul;
|
||||||
extern std::atomic<bool> g_renderer_bg_color_update_requested;
|
extern std::atomic<bool> g_renderer_bg_color_update_requested;
|
||||||
extern std::atomic<bool> g_renderer_sampler_update_requested;
|
extern std::atomic<bool> g_renderer_sampler_update_requested;
|
||||||
|
Loading…
Reference in New Issue
Block a user