GS: When CoverageAlpha is used set Alpha min max to 128.

This commit is contained in:
lightningterror 2022-10-08 21:19:16 +02:00
parent 5227bc9167
commit 1c308b2710
1 changed files with 65 additions and 55 deletions

View File

@ -3594,10 +3594,17 @@ void GSState::CalcAlphaMinMax()
if (m_vt.m_alpha.valid)
return;
int min = 0, max = 0;
if (IsCoverageAlpha())
{
min = 128;
max = 128;
}
else
{
const GSDrawingContext* context = m_context;
GSVector4i a = m_vt.m_min.c.uph32(m_vt.m_max.c).zzww();
if (PRIM->TME && context->TEX0.TCC)
{
const GSDrawingEnvironment& env = m_env;
@ -3653,9 +3660,12 @@ void GSState::CalcAlphaMinMax()
__assume(0);
}
}
min = a.x;
max = a.z;
}
m_vt.m_alpha.min = a.x;
m_vt.m_alpha.max = a.z;
m_vt.m_alpha.min = min;
m_vt.m_alpha.max = max;
m_vt.m_alpha.valid = true;
}