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

DJ Max Portable 2 [ULKS46116] Several graphic issues (mostly in Vulkan) #10629

Open
ppmeis opened this issue Feb 19, 2018 · 9 comments
Open

DJ Max Portable 2 [ULKS46116] Several graphic issues (mostly in Vulkan) #10629

ppmeis opened this issue Feb 19, 2018 · 9 comments

Comments

@ppmeis
Copy link
Contributor

ppmeis commented Feb 19, 2018

Tested in latest windows build, default settings. Just forced "simulate UMD delay" and "Force CPU sync" to prevent anticopy issues. Various graphics issues make this game unplayable while there are no issues before. The most affected backend is Vulkan (glitches in menus and ingame), but other backends have several issues too (applying default texture filters and so on).

Vulkan:
vulkan1
vulkan2
vulkan3

OpenGL:
opengl1
opengl2
opengl3

Direct3D9:
d3d9_3

Direct3D11:
d3d11_3

Software:
software_3

What hardware and operating system are you running PPSSPP on?
image

@ppmeis ppmeis changed the title DJ Max Portable 2 [ULKS46116] DJ Max Portable 2 [ULKS46116] Several graphic issues (mostly in Vulkan) Feb 19, 2018
@ppmeis
Copy link
Contributor Author

ppmeis commented May 27, 2018

Tested in latest Windows build. Same issues:

image

@unknownbrackets
Copy link
Collaborator

I think the pink lines will be hard to avoid above 1x.

Direct3D 9 probably doesn't work due to missing dual source blending.

I wonder if the others are depth related.

-[Unknown]

@unknownbrackets
Copy link
Collaborator

Could you try exporting a GE debugger dump on PC?

To do this, open the game and select Debug -> GE debugger..., then when it's displaying the scene, press Record in the top right. After a second or so, it'll finish and save a trace of the drawing activity.

After that, check the memstick/PSP/SYSTEM/DUMP folder and it'll have created a file named something like "ULES12345_0000.ppdmp". You can zip that and then drag and drop it into a reply here.

-[Unknown]

@ppmeis
Copy link
Contributor Author

ppmeis commented Sep 8, 2018

Tested with latest Windows build, same issues. GE Debugger Dumps:

DUMP.zip

There are two dumps: first one is on music menu, second one is ingame.

@unknownbrackets
Copy link
Collaborator

For Vulkan in the menu, this is similar to #10107. I'm not sure if clamping is affecting the rounding, but ultimately rounding is slightly off. Using the per-pixel depth rounding should in theory correct this.

For Vulkan in game, I don't see the content on top of the UI thing. It looks probably correct.

For Direct3D 11 and 9 in game, color testing is clearly broken. Turning off the color test flag makes it draw in 11, and has no effect in 9.

For OpenGL in game, it's somehow coming up with the wrong 2x256 texture maybe? The bufw is 2, and format 8888. Of course, that's below 16 bytes so the bufw will align up to 16 bytes. Maybe something is going wrong there. Hm.

-[Unknown]

unknownbrackets added a commit to unknownbrackets/ppsspp that referenced this issue Sep 9, 2018
Not working correctly together.  See hrydgard#10629.
@unknownbrackets
Copy link
Collaborator

For Direct3D 9, it will require creating a fragment test cache (like GLES has), which is a bit of work. There's some benefit to doing it with Direct3D 11 too, because it seems to have better rounding accuracy, but I'm not planning to do it now.

For anyone who wants to try their hand at contributing, though, look at this:
https://github.com/hrydgard/ppsspp/blob/master/GPU/GLES/FragmentTestCacheGLES.cpp

Basically the idea is to create a texture to use since bitwise and is not available. This also makes it unnecessary to try to round to 255.

-[Unknown]

@ppmeis
Copy link
Contributor Author

ppmeis commented Nov 5, 2018

Tested in latest build. Seems to be fine in Vulkan:

image
image
image

@unknownbrackets
Copy link
Collaborator

Well, I don't think this works in D3D 9 yet because I think it requires a color test mask to work, and D3D9 doesn't support that yet. The fragment test texture could be ported still.

-[Unknown]

@hrydgard hrydgard reopened this Dec 10, 2022
@ppmeis
Copy link
Contributor Author

ppmeis commented Dec 16, 2022

Tested in latest build. Vulkan seems to be fine. Also remaining pink lines but you said this is unfixable for now.

Direct3D9 has big pink lines even at 1x resolution:

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants