diff --git a/plugins/GSdx/Renderers/HW/GSHwHack.cpp b/plugins/GSdx/Renderers/HW/GSHwHack.cpp index 209f666d63..96e20dbef1 100644 --- a/plugins/GSdx/Renderers/HW/GSHwHack.cpp +++ b/plugins/GSdx/Renderers/HW/GSHwHack.cpp @@ -834,9 +834,11 @@ bool GSC_GetaWayGames(const GSFrameInfo& fi, int& skip) return true; } -bool GSC_StarOcean3(const GSFrameInfo& fi, int& skip) +bool GSC_TriAceGames(const GSFrameInfo& fi, int& skip) { - // The game emulate a stencil buffer with the alpha channel of the RT + // Tri Ace Games: ValkyrieProfile2, RadiataStories, StarOcean3 + // + // The games emulate a stencil buffer with the alpha channel of the RT // The operation of the stencil is selected with the palette // For example -1 wrap will be [240, 16, 32, 48 ....] // i.e. p[A>>4] = (A - 16) % 256 @@ -853,48 +855,6 @@ bool GSC_StarOcean3(const GSFrameInfo& fi, int& skip) { if (fi.TME && fi.FBP == fi.TBP0 && fi.FPSM == PSM_PSMCT32 && fi.TPSM == PSM_PSMT4HH) { - skip = 1000; // - } - } - else - { - if (!(fi.TME && fi.FBP == fi.TBP0 && fi.FPSM == PSM_PSMCT32 && fi.TPSM == PSM_PSMT4HH)) - { - skip = 0; - } - } - - return true; -} - -bool GSC_ValkyrieProfile2(const GSFrameInfo& fi, int& skip) -{ - if (skip == 0) - { - if (fi.TME && fi.FBP == fi.TBP0 && fi.FPSM == PSM_PSMCT32 && fi.TPSM == PSM_PSMT4HH) - { - // GH: Hack is quite similar to GSC_StarOcean3. It is potentially the same issue. - skip = 1000; // - } - } - else - { - if (!(fi.TME && fi.FBP == fi.TBP0 && fi.FPSM == PSM_PSMCT32 && fi.TPSM == PSM_PSMT4HH)) - { - skip = 0; - } - } - - return true; -} - -bool GSC_RadiataStories(const GSFrameInfo& fi, int& skip) -{ - if (skip == 0) - { - if (fi.TME && fi.FBP == fi.TBP0 && fi.FPSM == PSM_PSMCT32 && fi.TPSM == PSM_PSMT4HH) - { - // GH: Hack is quite similar to GSC_StarOcean3. It is potentially the same issue. skip = 1000; } } @@ -1216,9 +1176,9 @@ void GSState::SetupCrcHack() // These games emulate a stencil buffer with the alpha channel of the RT (too slow to move to Aggressive) // Needs at least Basic Blending, // see https://github.com/PCSX2/pcsx2/pull/2921 - lut[CRC::RadiataStories] = GSC_RadiataStories; - lut[CRC::StarOcean3] = GSC_StarOcean3; - lut[CRC::ValkyrieProfile2] = GSC_ValkyrieProfile2; + lut[CRC::RadiataStories] = GSC_TriAceGames; + lut[CRC::StarOcean3] = GSC_TriAceGames; + lut[CRC::ValkyrieProfile2] = GSC_TriAceGames; } if (Aggressive)