GS/TextureCache: Allow tex-in-rt for 16/24/32-bit targets

Fixes swirl battle transition in Valkyrie Profile 2.
Fixes top-left screen rendering in Lego Racers 2.
This commit is contained in:
Stenzek 2023-02-12 14:36:06 +10:00 committed by refractionpcsx2
parent 0a26adae76
commit c9aba6bbe1
2 changed files with 18 additions and 1 deletions

View File

@ -1352,6 +1352,7 @@ SCAJ-20177:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SCAJ-20178:
name: "Ape Escape - Million Monkeys"
region: "NTSC-Unk"
@ -1452,6 +1453,7 @@ SCAJ-20197:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SCAJ-20198:
name: "Everybody's Tennis [PlayStation 2 The Best]"
region: "NTSC-Unk"
@ -5224,6 +5226,7 @@ SCKA-20079:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SCKA-20081:
name: "Tekken 5 [PlayStation 2 Big Hit Series]"
region: "NTSC-K"
@ -10477,6 +10480,8 @@ SLES-50438:
SLES-50443:
name: "LEGO Racers 2"
region: "PAL-M8"
gsHWFixes:
textureInsideRT: 1 # Fixes top left corner rendering.
SLES-50444:
name: "Portal Runner"
region: "PAL-M4"
@ -20382,6 +20387,7 @@ SLES-54644:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SLES-54645:
name: "Valkyrie Profile 2 - Silmeria"
region: "PAL-F"
@ -20390,6 +20396,7 @@ SLES-54645:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SLES-54646:
name: "Valkyrie Profile 2 - Silmeria"
region: "PAL-G"
@ -20399,6 +20406,7 @@ SLES-54646:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SLES-54647:
name: "Valkyrie Profile 2 - Silmeria"
region: "PAL-I"
@ -20408,6 +20416,7 @@ SLES-54647:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SLES-54648:
name: "Valkyrie Profile 2 - Silmeria"
region: "PAL-S"
@ -20416,6 +20425,7 @@ SLES-54648:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SLES-54653:
name: "Freak Out - Extreme Freeride"
region: "PAL-M5"
@ -25804,6 +25814,8 @@ SLPM-62203:
SLPM-62204:
name: "LEGO Racers 2"
region: "NTSC-J"
gsHWFixes:
textureInsideRT: 1 # Fixes top left corner rendering.
SLPM-62205:
name: "Virtua Cop Re-Birth"
region: "NTSC-J"
@ -32595,6 +32607,7 @@ SLPM-66419:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SLPM-66420:
name: "Front Mission 4 [Ultimate Hits]"
region: "NTSC-J"
@ -34048,6 +34061,7 @@ SLPM-66782:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines and lessens red forest vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SLPM-66783:
name: "Idol Janshi Suchie-Pai 4 [Limited Edition]"
region: "NTSC-J"
@ -40905,6 +40919,8 @@ SLUS-20042:
name: "LEGO Racers 2"
region: "NTSC-U"
compat: 5
gsHWFixes:
textureInsideRT: 1 # Fixes top left corner rendering.
SLUS-20043:
name: "Star Wars - Super Bombad Racing"
region: "NTSC-U"
@ -47878,6 +47894,7 @@ SLUS-21452:
gsHWFixes:
halfPixelOffset: 1 # Reduces bloom misalignment.
roundSprite: 1 # Fixes area transition vertical lines.
textureInsideRT: 1 # Required for swirl battle transition.
SLUS-21453:
name: "Disney's Meet the Robinsons"
region: "NTSC-U"

View File

@ -416,7 +416,7 @@ GSTextureCache::Source* GSTextureCache::LookupSource(const GIFRegTEX0& TEX0, con
}
// Make sure the texture actually is INSIDE the RT, it's possibly not valid if it isn't.
// Also check BP >= TBP, create source isn't equpped to expand it backwards and all data comes from the target. (GH3)
else if (GSConfig.UserHacks_TextureInsideRt && psm == PSM_PSMCT32 && t->m_TEX0.PSM == psm &&
else if (GSConfig.UserHacks_TextureInsideRt && psm >= PSM_PSMCT32 && psm <= PSM_PSMCT16S && t->m_TEX0.PSM == psm &&
(t->Overlaps(bp, bw, psm, r) || t_wraps) && t->m_age <= 1 && !found_t && bp >= t->m_TEX0.TBP0)
{
// Only PSMCT32 to limit false hits.