pcsx2 icon indicating copy to clipboard operation
pcsx2 copied to clipboard

[BUG]: Largo Winch - Empire Under Threat (Europe) (EnDeEsIt) - Broken shadows with OpenGL

Open thelastangryman1907 opened this issue 6 months ago • 4 comments

Describe the Bug

Shadows in Largo Winch - Empire Under Threat (Europe) (EnDeEsIt) are broken with OpenGL. Tested on the New York stage. I don't know if it happens in other levels. The large black square in the corner follows the character around and shouldn't be there.

memcard.zip

Image

This also happened when I tried resetting to default to fix the problem.

Image

Specs

Image

Reproduction Steps

Play the game with the OpenGL renderer.

Expected Behavior

Shadows shouldn't be broken.

PCSX2 Revision

PCSX2 V2.3.387

Operating System

Windows 11

If Linux - Specify Distro

No response

CPU

Intel core i7

GPU

Intel Iris plus graphics

GS Settings

No response

Emulation Settings

All settings default. OpenGL renderer.

GS Window Screenshots

No response

Logs & Dumps

No response

thelastangryman1907 avatar Jun 01 '25 11:06 thelastangryman1907

Please post a GS dump.

JordanTheToaster avatar Jun 01 '25 11:06 JordanTheToaster

Broken shadows is a software issue mentioned in #1562 , in terms of opengl , id advise updating your drivers

Mrlinkwii avatar Jun 01 '25 12:06 Mrlinkwii

@Mrlinkwii I'm only seeing it with OpenGL.

thelastangryman1907 avatar Jun 01 '25 12:06 thelastangryman1907

Appears to be caused by an optimization in the SW renderer for drawing horizontal lines. Game draws a shadow texture and then draws a black border w/ line primitives so that the clamped color is fully transparent. However, seems that SW renderer omits the wrong pixel when draws horizontal lines (in particular right-to-left lines) so that the border is incomplete. The relevant code in GSRasterizer.cpp:

if (dpi.y == 0)
{
	if (dpi.x > 0)
	{
		// shortcut for horizontal lines
		...
	}

	return;
}

One fix is to just delete the block (not fully tested) but probably better to fix it so that right-to-left lines are rasterized correctly.

I only see the issue with SW renderer in a recent build.

TJnotJT avatar Sep 03 '25 01:09 TJnotJT

I only see the issue with SW renderer in a recent build.

On hw renderers it's still an issue if you upscale, seems that HPO helps but dunno if that's a real solution or just masking the issue.

lightningterror avatar Oct 29 '25 03:10 lightningterror