GameDB: Add DisablePGXPPreserveProjFP trait

And add it to Crash Team Racing.
This commit is contained in:
Stenzek 2024-03-23 14:11:27 +10:00
parent 17e3e96789
commit 8c09e9389d
No known key found for this signature in database
3 changed files with 29 additions and 0 deletions

View File

@ -21128,6 +21128,8 @@ SCES-02105:
- AnalogController - AnalogController
- DigitalController - DigitalController
- NeGcon - NeGcon
traits:
- DisablePGXPPreserveProjFP
libcrypt: true libcrypt: true
metadata: metadata:
publisher: "Sony" publisher: "Sony"
@ -21157,6 +21159,8 @@ SCUS-94426:
- AnalogController - AnalogController
- DigitalController - DigitalController
- NeGcon - NeGcon
traits:
- DisablePGXPPreserveProjFP
metadata: metadata:
publisher: "Sony" publisher: "Sony"
developer: "Naughty Dog" developer: "Naughty Dog"
@ -21173,6 +21177,8 @@ SCUS-94426:
linkCable: false linkCable: false
SCUS-94459: SCUS-94459:
name: "CTR - Crash Team Racing (USA) (Demo)" name: "CTR - Crash Team Racing (USA) (Demo)"
traits:
- DisablePGXPPreserveProjFP
SLUS-01391: SLUS-01391:
name: "Cabela's Big Game Hunter - Ultimate Challenge (USA)" name: "Cabela's Big Game Hunter - Ultimate Challenge (USA)"
controllers: controllers:
@ -30290,6 +30296,8 @@ SCPS-45470:
- AnalogController - AnalogController
- DigitalController - DigitalController
- NeGcon - NeGcon
traits:
- DisablePGXPPreserveProjFP
metadata: metadata:
publisher: "Sony" publisher: "Sony"
developer: "Naughty Dog" developer: "Naughty Dog"
@ -30310,6 +30318,8 @@ SCPS-10118:
- AnalogController - AnalogController
- DigitalController - DigitalController
- NeGcon - NeGcon
traits:
- DisablePGXPPreserveProjFP
codes: codes:
- SCPS-10118 - SCPS-10118
- SCPS-91328 - SCPS-91328
@ -30329,12 +30339,16 @@ SCPS-10118:
linkCable: false linkCable: false
PCPX-96183: PCPX-96183:
name: "Crash Bandicoot Racing (Japan) (Demo)" name: "Crash Bandicoot Racing (Japan) (Demo)"
traits:
- DisablePGXPPreserveProjFP
SCPS-91230: SCPS-91230:
name: "Crash Bandicoot Racing [Playstation the Best for Family]" name: "Crash Bandicoot Racing [Playstation the Best for Family]"
controllers: controllers:
- AnalogController - AnalogController
- DigitalController - DigitalController
- NeGcon - NeGcon
traits:
- DisablePGXPPreserveProjFP
metadata: metadata:
publisher: "Sony" publisher: "Sony"
developer: "Naughty Dog" developer: "Naughty Dog"

View File

@ -76,6 +76,7 @@ static constexpr const std::array<const char*, static_cast<u32>(GameDatabase::Tr
"DisablePGXPTextureCorrection", "DisablePGXPTextureCorrection",
"DisablePGXPColorCorrection", "DisablePGXPColorCorrection",
"DisablePGXPDepthBuffer", "DisablePGXPDepthBuffer",
"DisablePGXPPreserveProjFP",
"ForcePGXPVertexCache", "ForcePGXPVertexCache",
"ForcePGXPCPUMode", "ForcePGXPCPUMode",
"ForceRecompilerMemoryExceptions", "ForceRecompilerMemoryExceptions",
@ -535,6 +536,19 @@ void GameDatabase::Entry::ApplySettings(Settings& settings, bool display_osd_mes
settings.gpu_pgxp_color_correction = false; settings.gpu_pgxp_color_correction = false;
} }
if (HasTrait(Trait::DisablePGXPPreserveProjFP))
{
if (display_osd_messages && settings.gpu_pgxp_enable && settings.gpu_pgxp_preserve_proj_fp)
{
Host::AddIconOSDMessage(
"gamedb_disable_pgxp_texture", ICON_FA_MAGIC,
TRANSLATE_STR("OSDMessage", "PGXP projection precision preservation disabled by compatibility settings."),
osd_duration);
}
settings.gpu_pgxp_preserve_proj_fp = false;
}
if (HasTrait(Trait::ForcePGXPVertexCache)) if (HasTrait(Trait::ForcePGXPVertexCache))
{ {
if (display_osd_messages && settings.gpu_pgxp_enable && !settings.gpu_pgxp_vertex_cache) if (display_osd_messages && settings.gpu_pgxp_enable && !settings.gpu_pgxp_vertex_cache)

View File

@ -43,6 +43,7 @@ enum class Trait : u32
DisablePGXPTextureCorrection, DisablePGXPTextureCorrection,
DisablePGXPColorCorrection, DisablePGXPColorCorrection,
DisablePGXPDepthBuffer, DisablePGXPDepthBuffer,
DisablePGXPPreserveProjFP,
ForcePGXPVertexCache, ForcePGXPVertexCache,
ForcePGXPCPUMode, ForcePGXPCPUMode,
ForceRecompilerMemoryExceptions, ForceRecompilerMemoryExceptions,