GPU: Halve draw ticks for 480i even with force progressive

Fixes some of the games broken with the enhancement on.
This commit is contained in:
Connor McLaughlin 2020-09-19 21:15:53 +10:00
parent 5b1ed7903b
commit 1d5af57f71

View file

@ -445,7 +445,7 @@ protected:
ticks_per_row += average_width;
if (semitransparent || m_GPUSTAT.check_mask_before_draw)
ticks_per_row += (average_width + 1u) / 2u;
if (IsInterlacedRenderingEnabled())
if (m_GPUSTAT.SkipDrawingToActiveField())
height = std::max<u32>(height / 2, 1u);
AddCommandTicks(ticks_per_row * height);
@ -457,14 +457,14 @@ protected:
ticks_per_row += width;
if (semitransparent || m_GPUSTAT.check_mask_before_draw)
ticks_per_row += (width + 1u) / 2u;
if (IsInterlacedRenderingEnabled())
if (m_GPUSTAT.SkipDrawingToActiveField())
height = std::max<u32>(height / 2, 1u);
AddCommandTicks(ticks_per_row * height);
}
ALWAYS_INLINE void AddDrawLineTicks(u32 width, u32 height, bool shaded)
{
if (IsInterlacedRenderingEnabled())
if (m_GPUSTAT.SkipDrawingToActiveField())
height = std::max<u32>(height / 2, 1u);
AddCommandTicks(std::max(width, height));