GameSettings: Add trait for sw-renderer-for-readbacks

This commit is contained in:
Connor McLaughlin
2021-05-19 14:22:19 +10:00
parent 5d877250e9
commit a6d76e787f
3 changed files with 9 additions and 1 deletions

View File

@ -21,6 +21,7 @@ namespace GameSettings {
std::array<std::pair<const char*, const char*>, static_cast<u32>(Trait::Count)> s_trait_names = {{
{"ForceInterpreter", TRANSLATABLE("GameSettingsTrait", "Force Interpreter")},
{"ForceSoftwareRenderer", TRANSLATABLE("GameSettingsTrait", "Force Software Renderer")},
{"ForceSoftwareRendererForReadbacks", TRANSLATABLE("GameSettingsTrait", "Force Software Renderer For Readbacks")},
{"ForceInterlacing", TRANSLATABLE("GameSettingsTrait", "Force Interlacing")},
{"DisableTrueColor", TRANSLATABLE("GameSettingsTrait", "Disable True Color")},
{"DisableUpscaling", TRANSLATABLE("GameSettingsTrait", "Disable Upscaling")},
@ -1345,6 +1346,12 @@ void Entry::ApplySettings(bool display_osd_messages) const
g_settings.gpu_pgxp_depth_buffer = false;
}
if (HasTrait(Trait::ForceSoftwareRenderer))
{
Log_WarningPrint("Using software renderer for readbacks.");
g_settings.gpu_renderer = GPURenderer::Software;
}
if (HasTrait(Trait::ForceRecompilerMemoryExceptions))
{
Log_WarningPrint("Memory exceptions for recompiler forced by game settings.");