mirror of https://github.com/PCSX2/pcsx2.git
GS:SW: Prevent CDrawScanline from trashing unused Z bits
This commit is contained in:
parent
b677619f32
commit
650b0ae646
|
@ -498,16 +498,16 @@ void GSDrawScanline::CDrawScanline(int pixels, int left, int top, const GSVertex
|
||||||
zd = GSVector4i::load((u8*)global.vm + za * 2, (u8*)global.vm + za * 2 + 16);
|
zd = GSVector4i::load((u8*)global.vm + za * 2, (u8*)global.vm + za * 2 + 16);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
switch (sel.zpsm)
|
|
||||||
{
|
|
||||||
case 1: zd = zd.sll32( 8).srl32( 8); break;
|
|
||||||
case 2: zd = zd.sll32(16).srl32(16); break;
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
|
|
||||||
VectorI zso = zs;
|
VectorI zso = zs;
|
||||||
VectorI zdo = zd;
|
VectorI zdo = zd;
|
||||||
|
|
||||||
|
switch (sel.zpsm)
|
||||||
|
{
|
||||||
|
case 1: zdo = zdo.sll32( 8).srl32( 8); break;
|
||||||
|
case 2: zdo = zdo.sll32(16).srl32(16); break;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
|
||||||
if (sel.zpsm == 0)
|
if (sel.zpsm == 0)
|
||||||
{
|
{
|
||||||
zso -= VectorI::x80000000();
|
zso -= VectorI::x80000000();
|
||||||
|
|
Loading…
Reference in New Issue