mirror of https://github.com/PCSX2/pcsx2.git
GS-hw: Disable dithering if blend mix is enabled.
It breaks stuff since we do a mix of hw/sw.
This commit is contained in:
parent
f83692c0df
commit
2b646c2153
|
@ -632,6 +632,8 @@ void GSRendererNew::EmulateBlending(bool& DATE_PRIMID, bool& DATE_BARRIER)
|
||||||
// Do not run BLEND MIX if sw blending is already present, it's less accurate
|
// Do not run BLEND MIX if sw blending is already present, it's less accurate
|
||||||
blend_mix &= !sw_blending;
|
blend_mix &= !sw_blending;
|
||||||
sw_blending |= blend_mix;
|
sw_blending |= blend_mix;
|
||||||
|
// Disable dithering on blend mix.
|
||||||
|
m_conf.ps.dither &= !blend_mix;
|
||||||
[[fallthrough]];
|
[[fallthrough]];
|
||||||
case AccBlendLevel::Minimum:
|
case AccBlendLevel::Minimum:
|
||||||
break;
|
break;
|
||||||
|
@ -675,6 +677,8 @@ void GSRendererNew::EmulateBlending(bool& DATE_PRIMID, bool& DATE_BARRIER)
|
||||||
// Do not run BLEND MIX if sw blending is already present, it's less accurate
|
// Do not run BLEND MIX if sw blending is already present, it's less accurate
|
||||||
blend_mix &= !sw_blending;
|
blend_mix &= !sw_blending;
|
||||||
sw_blending |= blend_mix;
|
sw_blending |= blend_mix;
|
||||||
|
// Disable dithering on blend mix.
|
||||||
|
m_conf.ps.dither &= !blend_mix;
|
||||||
[[fallthrough]];
|
[[fallthrough]];
|
||||||
case AccBlendLevel::Minimum:
|
case AccBlendLevel::Minimum:
|
||||||
break;
|
break;
|
||||||
|
@ -1378,6 +1382,9 @@ void GSRendererNew::DrawPrims(GSTexture* rt, GSTexture* ds, GSTextureCache::Sour
|
||||||
ASSERT(!(DATE_PRIMID && DATE_BARRIER));
|
ASSERT(!(DATE_PRIMID && DATE_BARRIER));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Before emulateblending, dither will be used
|
||||||
|
m_conf.ps.dither = GSConfig.Dithering > 0 && m_conf.ps.dfmt == 2 && m_env.DTHE.DTHE;
|
||||||
|
|
||||||
// Blend
|
// Blend
|
||||||
|
|
||||||
if (!IsOpaque() && rt)
|
if (!IsOpaque() && rt)
|
||||||
|
@ -1469,7 +1476,6 @@ void GSRendererNew::DrawPrims(GSTexture* rt, GSTexture* ds, GSTextureCache::Sour
|
||||||
}
|
}
|
||||||
|
|
||||||
m_conf.ps.fba = m_context->FBA.FBA;
|
m_conf.ps.fba = m_context->FBA.FBA;
|
||||||
m_conf.ps.dither = GSConfig.Dithering > 0 && m_conf.ps.dfmt == 2 && m_env.DTHE.DTHE;
|
|
||||||
|
|
||||||
if (m_conf.ps.dither)
|
if (m_conf.ps.dither)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue