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

[Android][OpenGL&Vulkan][Graphic]Umezawa Yukari no Yasashii igo(ULJM05384) 梅沢由加里のやさしい囲碁 #12516

Open
nassau-tk opened this issue Dec 17, 2019 · 11 comments
Labels
GE emulation Backend-independent GPU issues
Milestone

Comments

@nassau-tk
Copy link
Contributor

What happens?

A black square line is indicated around the eye of the character and the mouth.
*OpenGL & Vulkan has same issue.

What should happen?

A black line goes off, and it's indicated right.

What hardware, operating system, and PPSSPP version? On desktop, GPU matters for graphical issues.

PPSSPP Ver. : 1.9.3-147
OS: Android 9.0
DeviceName: SONY SO-02K / Xperia XZ1 Compact (Japan)
CPU: Snapdragon835 (Octa-core)
GPU: Adreno 540
Resolution: 720×1280
RAM: 4GB
ROM:32GB
ExternalStrage: microSDXC 512GB

Please check screen shot & frame dump.

Screenshot_20191217-165357

ULJM05384_0001.zip

@hrydgard
Copy link
Owner

hrydgard commented Dec 17, 2019

Looks like the usual pixel gap caused by scaling, the game's graphics are not really compatible with being rendered at higher resolution.

Can you confirm how the image looks if you set Rendering Resolution to 1x?

@hrydgard hrydgard added the GE emulation Backend-independent GPU issues label Dec 17, 2019
@nassau-tk
Copy link
Contributor Author

nassau-tk commented Dec 17, 2019

Yes,l did lt!!
Screenshot_20191217-191608

@hrydgard
Copy link
Owner

Hm, yeah, better but still a little visible. Is texture filter set to default?

Our filtering is slightly off from the real PSP. I think a bunch of instances of this problem has been reported before though, but too lazy to find them right now so I'll just tag this for investigation...

@hrydgard hrydgard added this to the Future milestone Dec 17, 2019
@nassau-tk
Copy link
Contributor Author

Yes,some settings are default.

OK, I 'm just reporter!!
Reporting will be also continued now.

@unknownbrackets
Copy link
Collaborator

Could you try exporting a GE frame dump? These help a lot.

See here for instructions - it's not hard and works on Android too:
https://github.com/hrydgard/ppsspp/wiki/How-to-create-a-frame-dump

You can zip that and then drag and drop it into a reply here.

-[Unknown]

@nassau-tk
Copy link
Contributor Author

Yes!!
Please,check it!

ULJM05384_0002.zip

@unknownbrackets
Copy link
Collaborator

Interesting about this draw is that it uses s8 pos / u8 tc. That's relatively uncommon. It also uses texscale, but I don't think that's the issue.

The character (with face cutouts) is drawn at (371.971680, 16.899780) - (466.986084, 271.01001). It looks like this:

cutout

Filtering is set to linear/linear/linear (even though there are no mips.) The next draw with the actual face is not offset by any fraction of a pixel, which is why they are uneven.

The coordinates are: (371.971680, 16.899780) - (466.986084, 271.01001)
X1: 371 + 15/16 + 0.54688/16
Y1: 16 + 14/16 + 0.39648/16
X2: 466 + 15/16 + 0.777344/16
Y2: 271 + 0/16 + 0.16016/16

Forcing Y1 screenpos from 30862 to 30864 makes the Y look right (271 rounds down already.)

Here's what it should look like, exactly:

ULJM05384_#12516_easy_go_lines

And here's how software rendering looks now:

ULJM05384_#12516_easy_go_lines_softgpu

The offset is applied by the world matrix, I think. Maybe s8 positions round differently even at that level?

-[Unknown]

@nassau-tk
Copy link
Contributor Author

unknownbrackets

Is this same issue? or not?
Title: NARUTIMATE PORTABLE Mugen-Jou no Maki (ULJS00055)
*See attached pictures around the Text.

Rendering x5
Screenshot_20200102-115944
Screenshot_20200102-120050

Rendering x1
Screenshot_20200102-115958
Screenshot_20200102-120103

And,dump file here!!

ULJS00055_0001.zip

@unknownbrackets
Copy link
Collaborator

That one is harder to avoid. See here for an explanation:
https://forums.ppsspp.org/showthread.php?tid=13556

But it may be related. To fix the Easy Go game, we might have to add rounding that would make animations less smooth...

-[Unknown]

@nassau-tk
Copy link
Contributor Author

Umm...It's too difficult for me. ( ^_^ ;)
But,l understood about the issue.

@unknownbrackets
Copy link
Collaborator

Software rendering still gets this one wrong (linking to #16131.) It now has lines on the right side (X.) Drawing goes from 371.9375 (rounded) to 467 for the body, then 398.9375 to 414.9375 for the mouth (the only part that looks wrong.)

But actually, it seems to be wrong already after 3/15 (the body.) I think this is sampling wrong, it seems to blend some of the transparent into the right side of the mouth. Forcing this draw to nearest confirms this to be the issue, for software rendering.

Probably, it should draw at the next pixel center, and is currently only offsetting by half of something.

In hardware, that's not the only draw with the problem, but it is part of the problem. Forcing only the body to nearest gives this:
Line below eyes only

-[Unknown]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GE emulation Backend-independent GPU issues
Projects
None yet
Development

No branches or pull requests

3 participants