From 5e1b4ff1d33478e8f02ddf7ad70d190a0b924a99 Mon Sep 17 00:00:00 2001 From: Stenzek Date: Mon, 30 Jan 2023 18:00:31 +1000 Subject: [PATCH] GameDatabase: Fix ForceSoftwareRendererForReadbacks --- src/core/game_database.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/core/game_database.cpp b/src/core/game_database.cpp index 49beb5a2a..7e36690fe 100644 --- a/src/core/game_database.cpp +++ b/src/core/game_database.cpp @@ -217,7 +217,7 @@ const char* GameDatabase::GetCompatibilityRatingDisplayName(CompatibilityRating void GameDatabase::Entry::ApplySettings(Settings& settings, bool display_osd_messages) const { - constexpr float osd_duration = 10.0f; + constexpr float osd_duration = 5.0f; if (display_active_start_offset.has_value()) settings.display_active_start_offset = display_active_start_offset.value(); @@ -264,6 +264,18 @@ void GameDatabase::Entry::ApplySettings(Settings& settings, bool display_osd_mes settings.gpu_renderer = GPURenderer::Software; } + if (HasTrait(Trait::ForceSoftwareRendererForReadbacks)) + { + if (display_osd_messages && settings.gpu_renderer != GPURenderer::Software) + { + Host::AddKeyedOSDMessage("gamedb_force_software_rb", + Host::TranslateStdString("OSDMessage", "Using software renderer for readbacks based on game settings."), + osd_duration); + } + + settings.gpu_use_software_renderer_for_readbacks = true; + } + if (HasTrait(Trait::ForceInterlacing)) { if (display_osd_messages && settings.gpu_disable_interlacing)