hrydgard / ppsspp

A PSP emulator for Android, Windows, Mac and Linux, written in C++. Want to contribute? Join us on Discord at https://discord.gg/5NJB6dD or just send pull requests / issues. For discussion use the forums at forums.ppsspp.org.
https://www.ppsspp.org
Other
11.36k stars 2.18k forks source link

Persona 2 Innocent Sin's UI lines don't work at all resolutions #3332

Open internetakias opened 11 years ago

internetakias commented 11 years ago

When BR's off the stripes that make up the backgrounds of certain UI elements are being spaced out correctly. screen00098 When any form of BR is turned on however, the spacing gets messed up, causing certain stripes to be spaced further away from each other. screen00097

bonquacks commented 11 years ago

I noticed it too, but it seems like such a minor issue, considering that it does not affect the playability of the game one way or the other, as compared to the massive transparency issue it had previously which was resolved thanks to @hrydgard

Thanks for the report anyway, this one will take time to fix.

internetakias commented 11 years ago

Huh. Seems like on Android it's the complete opposite BR off: screenshot_2013-08-23-07-27-06 Br on: screenshot_2013-08-23-07-27-00

dbz400 commented 11 years ago

I think it may be related to scissor . I may be wrong . Is this tested with latest build ?

internetakias commented 11 years ago

Yes, both my PC and Galaxy S3 are using the latest build

dbz400 commented 11 years ago

Can you a bit older version of it ? v0.9.1-15-g1ea0cd0 (which is before the scissor fix)

internetakias commented 11 years ago

Not really seeing a difference PC: BR OFF screen00000 BR ON screen00001

ANDROID: BR OFF screenshot_2013-08-23-10-25-48 BR ON screenshot_2013-08-23-10-25-56

dbz400 commented 11 years ago

It is funny .They are exactly reversed among Android and PC version . Really not much idea what is real cause .....

internetakias commented 11 years ago

Should I try attaching a framedump? Would it help any?

dbz400 commented 11 years ago

Btw , we can see the rendering of 'Normal' is also different even stripes are correct .

internetakias commented 11 years ago

Here are the frame dumps ON: https://docs.google.com/file/d/0BzC2uL8lp2t-V0doa3Z4c0l3b0E/edit?usp=sharing OFF: https://docs.google.com/file/d/0BzC2uL8lp2t-NDZuUTgzRko1TlE/edit?usp=sharing

dbz400 commented 11 years ago

That would be helpful .Will check it out.

dbz400 commented 11 years ago

That would be helpful .Will check it out.

dbz400 commented 11 years ago

Alright .Just able to test it .Looks like bit different indeed.

dbz400 commented 11 years ago

@internetakias , just wonder which version you are able to reproduce the difference between rendering mode ? as i cannot reproduce it .

internetakias commented 11 years ago

v0.9.1-131-g2d89323 64 BIT

internetakias commented 11 years ago

Just tested it out on the 32 bit build, and couldn't notice anything different.

unknownbrackets commented 11 years ago

Adventures To Go! (which is nowhere as good as a Persona game) also has the "too dark" issue.

-[Unknown]

dbz400 commented 11 years ago

Humm i just tried v0.9.1-131-g2d89323 64 bit , also cannot see the difference .Strange.

internetakias commented 11 years ago

Hmm... Maybe it has to do with the graphics card? I have an AMD Radeon HD 6770. Also, all modes of buffered rendering produce the same result, FYI.

dbz400 commented 11 years ago

However , can 131 build still able to produce the following correct one from your system ? afdbebfa-0bc5-11e3-8fdd-d81856dd1e6d

unknownbrackets commented 10 years ago

The lines seem okay on desktop, at least for me, but it's solid if render resolution is set to 2x.

How does this look for you now?

Software rendering looks pretty good now and is not too dark (with #5158.)

Dark issue is already covered by #3379.

-[Unknown]

internetakias commented 10 years ago

It looks fine on PC, haven't checked on my GS3 yet, though.

unknownbrackets commented 10 years ago

For me, this makes it look much more correct on all resolutions:

void FramebufferManager::SetLineWidth() {
#ifndef USING_GLES2
    glEnable(GL_LINE_SMOOTH);
    if (g_Config.iInternalResolution == 0) {
        glLineWidth(std::max(1.0f, (float)(PSP_CoreParameter().renderWidth / 480.0f)) + 0.5f);
        glPointSize(std::max(1.0f, (float)(PSP_CoreParameter().renderWidth / 480.0f)));
    } else {
        glLineWidth((float)g_Config.iInternalResolution + 0.5f);
        glPointSize((float)g_Config.iInternalResolution);
    }
#endif
}

Lines are pretty uncommon. I wonder if we should/can redo them as polygons to try to get the width more correct...

-[Unknown]

hrydgard commented 10 years ago

We can, of course, the same way we deal with rectangles: Software transform them to screen space, then tesselate (make triangles) manually. I don't think it's very well defined what to do at corners of line strips though, the PSP doesn't care about the corner style because there are no more-than-one-pixel-wide lines on it.

internetakias commented 10 years ago

Just a heads up, it seems like this issue is present in the D3D9 backend now isd9

trostboot commented 8 years ago

This is still present and behaves differently depending on the backend and rendering resolution. Win10, 64bit, v1.2.1-56-gcc4e7c4. AMD R9 270X, 16.2.1 driver.

OGL, 1xIR: ogl_1x_ulus10584_00008 OGL, 2xIR: ogl_2x_ulus10584_00009 D3D, 1xIR: d3d_1x_ulus10584_00010 D3D, 2xIR: d3d_2x_ulus10584_00011

Basically, it seems to be fine at 2x (and other multiples of 2) in OGL, and at 1x in D3D.

Panderner commented 4 years ago

Same happens in Eternal Punishment: Screenshot_2020-03-19-16-54-47-70_2f85358b2198d26f8aca533d68bee793 Screenshot_2020-03-19-16-55-33-24_2f85358b2198d26f8aca533d68bee793 Screenshot_2020-03-19-18-21-39-76_2f85358b2198d26f8aca533d68bee793

hrydgard commented 4 years ago

Yeah, this is an oldie but goodie. Will be fixed if we ever implement #8276 ...

unknownbrackets commented 3 years ago

I haven't tested this, but #15076 may help.

-[Unknown]

ghost commented 3 years ago

Here's the results I don't get the real issue here though 😅

ppsspp v1.12.3-136

Vulkan Screenshot_2021-11-01-20-03-22-975_org ppsspp ppsspp

PSP Screenshot_2021-11-01-20-02-36-252_com vanced android youtube

hrydgard commented 3 years ago

Nice, looks pretty good!

image

Maybe not perfect, but not sure it's possible to get it perfect with the information we have from the game (just plain line draw commands).

unknownbrackets commented 3 years ago

I think that part always kinda looked that way (see even first screenshots), it was actually the cross-hatch shaded backgrounds this bug was about.

I'm going to reopen though, the lines need some work at some resolutions.

Lines at 3x

-[Unknown]

hrydgard commented 3 years ago

Ah I see, oh yeah, the hatched backgrounds are way better indeed.

unknownbrackets commented 3 years ago

Just to clarify status after that last change, here's a frame dump: #3332_ULUS10584_persona2_lines.zip

Correct (PSP): #3332_ULUS10584_persona2_lines

Software rendering: #3332_ULUS10584_persona2_lines_softgpu

GLES/Vulkan (they're pretty much the same): #3332_ULUS10584_persona2_lines_vulkan

As noted in #15091, the diagonal lines are still too think.

-[Unknown]