Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dream C Club Portable (Japan) glitchy woman in software renderer #15876

Closed
5 tasks done
benderscruffy opened this issue Aug 21, 2022 · 2 comments · Fixed by #15951
Closed
5 tasks done

Dream C Club Portable (Japan) glitchy woman in software renderer #15876

benderscruffy opened this issue Aug 21, 2022 · 2 comments · Fixed by #15951

Comments

@benderscruffy
Copy link

Game or games this happens in

Dream C Club Portable (Japan) (v1.01)

What area of the game / PPSSPP

in software renderer the black lines around the woman like the face is broken
here is a ge dump
Uploading ULJS00333.zip…

ULJS00333_00000

What should happen

solid black lines around the woman

Logs

No response

Platform

Windows

Mobile phone model or graphics card

AMD RX 580

PPSSPP version affected

PPSSPP v1.13.1-391

Last working version

No response

Graphics backend (3D API)

Vulkan

Checklist

  • Test in the latest git build in case it's already fixed.
  • Search for other reports of the same issue.
  • Try resetting settings or older versions and include if the issue is related.
  • Try without any cheats and without loading any save states.
  • Include logs or screenshots of issue.
@unknownbrackets
Copy link
Collaborator

The dump didn't upload but I think it's the same scene as #6497 which has a frame dump.

Strangely, the character is invisible running from headless (which should not be...), but renders fine within PPSSPPWindows64. I don't know why this is, and it seems a bit concerning... softjit and threading seem unrelated, though. Will have to come back to that...

As for the character, she is drawn through 1295/1533 to 0x040cc000. It then textures from there, using a CLUT, to draw the outline around the character. This uses through, X=-0.5, Y=0.25 compared to the texture. At 1336/1533, it does another outline pass, this time X=-1.6, Y=1.25 (again, through.) Then yet another pass at 1376/1533, this time X=0.6, Y=-1.25. Finally, at 1416/1533 it draws the character with X=0, Y=0.

From what I can tell, the X=0.6 draw doesn't really draw to the right enough.

If I disable RectangleFastPath(), it seems to correct it (but not headless...):
Outline without RectangleFastPath

Which looks similar to the PSP rendering (the left side looks perhaps still a bit too thick):
#6497_ULJS00333_dreamclub_depth_girl

This draw is CLUT16/5551, simple alpha test and blend, modulate, and no depth test - and the target is 5551 too. Basically DrawSprite()'s favorite thing. I think it ends up with s/t slightly off.

-[Unknown]

unknownbrackets added a commit to unknownbrackets/ppsspp that referenced this issue Sep 3, 2022
It doesn't handle it right, see hrydgard#15876.  We still handle these with
DrawRectangle(), which gets it right.
@unknownbrackets unknownbrackets added this to the v1.14.0 milestone Sep 3, 2022
@unknownbrackets
Copy link
Collaborator

Just for posterity, the headless issue is also fixed, I think it was 05ad644 or similar.

-[Unknown]

unknownbrackets added a commit to unknownbrackets/ppsspp that referenced this issue Sep 5, 2022
Not sure what happened here, hrydgard#15876 is broken unless this checks for zero,
and throughmode should be zero here.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants