mirror of https://github.com/PCSX2/pcsx2.git
GS/HW: Adjust how we handle dithering on blend mix.
Allow dither adjust regardless of alpha. usually it is clamed to 1 anyway so we can expand it if alpha max is higher than 128. Expand dither adjust to work in rev subtract conditions.
This commit is contained in:
parent
ecc24ce2e9
commit
7d16a915ed
pcsx2/GS/Renderers/HW
|
@ -4553,7 +4553,8 @@ void GSRendererHW::EmulateBlending(int rt_alpha_min, int rt_alpha_max, const boo
|
||||||
// Disable dithering on blend mix if needed.
|
// Disable dithering on blend mix if needed.
|
||||||
if (m_conf.ps.dither)
|
if (m_conf.ps.dither)
|
||||||
{
|
{
|
||||||
const bool can_dither = (m_conf.ps.blend_a == 0 && m_conf.ps.blend_b == 1 && alpha_eq_less_one);
|
// TODO: Either exclude BMIX1_ALPHA_HIGH_ONE case or allow alpha > 1.0 on dither adjust, case is currently disabled.
|
||||||
|
const bool can_dither = (m_conf.ps.blend_a == 0 && m_conf.ps.blend_b == 1) || (m_conf.ps.blend_a == 1 && m_conf.ps.blend_b == 0);
|
||||||
m_conf.ps.dither = can_dither;
|
m_conf.ps.dither = can_dither;
|
||||||
m_conf.ps.dither_adjust = can_dither;
|
m_conf.ps.dither_adjust = can_dither;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue