GameSettings: Add trait for disabling PGXP texture correction
This commit is contained in:
@ -29,6 +29,7 @@ std::array<std::pair<const char*, const char*>, static_cast<u32>(Trait::Count)>
|
||||
{"DisableWidescreen", TRANSLATABLE("GameSettingsTrait", "Disable Widescreen")},
|
||||
{"DisablePGXP", TRANSLATABLE("GameSettingsTrait", "Disable PGXP")},
|
||||
{"DisablePGXPCulling", TRANSLATABLE("GameSettingsTrait", "Disable PGXP Culling")},
|
||||
{"DisablePGXPTextureCorrection", TRANSLATABLE("GameSettingsTrait", "Disable PGXP Texture Correction")},
|
||||
{"ForcePGXPVertexCache", TRANSLATABLE("GameSettingsTrait", "Force PGXP Vertex Cache")},
|
||||
{"ForcePGXPCPUMode", TRANSLATABLE("GameSettingsTrait", "Force PGXP CPU Mode")},
|
||||
{"ForceDigitalController", TRANSLATABLE("GameSettingsTrait", "Force Digital Controller")},
|
||||
@ -48,11 +49,6 @@ const char* GetTraitDisplayName(Trait trait)
|
||||
return s_trait_names[static_cast<u32>(trait)].second;
|
||||
}
|
||||
|
||||
bool Entry::HasAnySettings() const
|
||||
{
|
||||
return traits.any() || display_active_start_offset >= 0 || display_active_end_offset > 0;
|
||||
}
|
||||
|
||||
template<typename T>
|
||||
bool ReadOptionalFromStream(ByteStream* stream, std::optional<T>* dest)
|
||||
{
|
||||
@ -549,6 +545,18 @@ void Entry::ApplySettings(bool display_osd_messages) const
|
||||
g_settings.gpu_pgxp_culling = false;
|
||||
}
|
||||
|
||||
if (HasTrait(Trait::DisablePGXPTextureCorrection))
|
||||
{
|
||||
if (display_osd_messages && g_settings.gpu_pgxp_culling && g_settings.gpu_pgxp_texture_correction)
|
||||
{
|
||||
g_host_interface->AddOSDMessage(
|
||||
g_host_interface->TranslateStdString("OSDMessage", "PGXP texture correction disabled by game settings."),
|
||||
osd_duration);
|
||||
}
|
||||
|
||||
g_settings.gpu_pgxp_texture_correction = false;
|
||||
}
|
||||
|
||||
if (HasTrait(Trait::ForcePGXPVertexCache))
|
||||
{
|
||||
if (display_osd_messages && g_settings.gpu_pgxp_enable && !g_settings.gpu_pgxp_vertex_cache)
|
||||
|
||||
Reference in New Issue
Block a user