diff --git a/src/GPU3D_Soft.h b/src/GPU3D_Soft.h index 85d500dc..e1fd4d05 100644 --- a/src/GPU3D_Soft.h +++ b/src/GPU3D_Soft.h @@ -355,7 +355,11 @@ private: // for the first pixel, and the increment for // further pixels on the same scanline // TODO: check how coverage interacts with line gaps, I think it's correct though? - s32 startx = dx >> 18; + s32 startx = dx; + if (side ^ Negative) startx += Increment; + startx >>= 18; + //s32 startcov = (startx * ylen) /9 xlen; + if (Negative) startx = xlen - startx; if (side) startx = startx - *length + 1;