mirror of https://github.com/PCSX2/pcsx2.git
GS/HW: Ensure valid alpha doesn't get cleared on 24-bit targets
This commit is contained in:
parent
85a33971e7
commit
f5c3cd0f87
|
@ -2646,13 +2646,17 @@ void GSRendererHW::Draw()
|
|||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (rt && m_channel_shuffle)
|
||||
// The target might have previously been a C32 format with valid alpha. If we're switching to C24, we need to preserve it.
|
||||
preserve_rt_alpha |= (GSLocalMemory::m_psm[m_cached_ctx.FRAME.PSM].trbpp == 24 && rt->HasValidAlpha());
|
||||
preserve_rt_color = preserve_rt_rgb || preserve_rt_alpha;
|
||||
|
||||
if (m_channel_shuffle)
|
||||
{
|
||||
m_last_channel_shuffle_fbp = rt->m_TEX0.TBP0;
|
||||
m_last_channel_shuffle_end_block = rt->m_end_block;
|
||||
}
|
||||
}
|
||||
|
||||
GSTextureCache::Target* ds = nullptr;
|
||||
GIFRegTEX0 ZBUF_TEX0;
|
||||
|
|
Loading…
Reference in New Issue