mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-04-24 21:56:10 +03:00
[GH-ISSUE #3871] Shin Megami Tensei: Persona - The button outlines in the battle menu are drawn incorrectly #1586
Labels
No labels
Atrac3+
Audio
CPU emulation
D3D11
D3D9 (removed)
Depth / Z
Feature Request
Font Atlas
GE emulation
Guardband / Range Culling
HLE/Kernel
I/O
Input/Controller
MP3
Multithreading
Needs hardware testing
Networking/adhoc/infrastructure
No Feedback / Outdated?
OpenGL
PGF / sceFont
PSMF / MPEG
Platform-specific (Android)
Platform-specific (Windows)
Platform-specific (iOS)
PowerVR GPU
SDL2
Saving issue
User Interface
Vulkan
arm64jit
armjit
armv6
x86jit
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/ppsspp#1586
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @internetakias on GitHub (Sep 22, 2013).
Original GitHub issue: https://github.com/hrydgard/ppsspp/issues/3871
As you can see in the above screenshot, the outlines adorning the buttons break at some point and become missaligned for whatever reason.
In software rendering, by the way. They don't appear at all:
Also, I'm not sure if this is related but this happens in the P3P status screen:
BR ON
BR OFF:
@internetakias commented on GitHub (Sep 25, 2013):
Seems like the bug yields different results depending on wether BR is off or on


BR OFF:
BR ON:
@dbz400 commented on GitHub (Sep 25, 2013):
I think the question is ... Are these outlines exist on real PSP?
@internetakias commented on GitHub (Sep 25, 2013):
Yeah
@internetakias commented on GitHub (Sep 25, 2013):
Huh, seems like upscaling is the culprit here

1x res:
Could this issue be related to #3332?
@dbz400 commented on GitHub (Sep 25, 2013):
So 2x or above will have outlines issue ? i think it is all default setting and no textures up-scaling stuff turned on
@internetakias commented on GitHub (Sep 25, 2013):
Texture scalling doesn't have anything to do with this issue, it seems. Also, almost all of the buttons except the Persona and Guard ones have the top part of the outline placed one pixel above where it should be. But when they are selected, the Persona and Guard buttons are the ones displaying incorrectly



@dbz400 commented on GitHub (Sep 25, 2013):
I see. Therefore , it is the internal resolution issue , right ? 1x fine but 2x or above looks bad
@internetakias commented on GitHub (Sep 25, 2013):
Pretty much
@internetakias commented on GitHub (Sep 26, 2013):
Seems like on the latest build, the only difference between Buffered Rendering and Non-Buffered Rendering is that in Non-BR, all of the buttons are displaying incorrectly

@internetakias commented on GitHub (Sep 26, 2013):
P2: Innocent Sin appears to be suffering from a similar issue

@hrydgard commented on GitHub (Sep 26, 2013):
we could try using a bigger line thickness when resolution is higher.
@internetakias commented on GitHub (Sep 26, 2013):
If you're talking about the bar on the top, I've already opened an issue for that: #3332


Anyway
BR OFF:
The lines making up the buttons' outlines aren't connecting properly to each other. Also, Feral Claw's icon is overlapping with the selected skill below.
BR ON:
Here most of the button outlines are displaying correctly, but the inside of the buttons is affected by the issue I mentioned above.
Strangely enough, the outlines on the character windows are displaying incorrectly in both modes
While I'm still at it, FXAA seems to be messing up the fonts and textures in a number of games:

@unknownbrackets commented on GitHub (Sep 27, 2013):
Hmm, makes sense. I wonder if points matter as well? Probably not so much.
Could probably just set the glLineWidth once per frame or on Resized.
-[Unknown]
@internetakias commented on GitHub (Oct 9, 2013):
I upgraded my PC today and I now have an NVIDIA GTX 760. So I'm here to report my findings:


When the Window Size and the Resolution are set to 1, the outlines appear correctly for the most part(the outline on the right side of the button is somewhat transparent)
When the Window Size and Resolution are set to a value higher than 1, the outlines are displaying incorrectly again:
Also, it seems like when the window size is set to 1, the higher the resolution is set to the more the outlines start dissapearing:
Rendering Resolution set to 2:



Rendering Resolution set to 3:
Rendering Resolution set to 10:
@hrydgard commented on GitHub (Oct 9, 2013):
As I've said before, that's pretty normal. Running games at resolutions they don't expect doesn't always work flawlessly. It's possible that glLineWidth will make it look a little better though of course.
@dbz400 commented on GitHub (Oct 9, 2013):
I try in this way in GL_Resized() , not too sure if it is the correct way to do it .
@internetakias , test build here

@hrydgard commented on GitHub (Oct 9, 2013):
You should probably set it to 1 if iInternalResolution is 0, otherwise that should be okay.
@dbz400 commented on GitHub (Oct 9, 2013):
Alright .
glLineWidth(g_Config.iInternalResolution == 0 ? 1 : g_Config.iInternalResolution);
@internetakias commented on GitHub (Oct 9, 2013):
@raven02
The link appears to be corrupted
@hrydgard commented on GitHub (Oct 9, 2013):
@internetakias , it's a file uploaded as a jpeg to work around github's rules, rename it to zip or something.
@dbz400 commented on GitHub (Oct 9, 2013):
I confirm it works pretty good . This is comparsion at 2x
-without glLineWidth

-glLineWidth(2)

@hrydgard commented on GitHub (Oct 9, 2013):
Unfortunately it is not supported in OpenGL ES so you will have to surround the call to glLineWidth with
I guess we should turn lines into triangles to make them fat on ES... sigh.
@dbz400 commented on GitHub (Oct 9, 2013):
I see.Will do and pull a request for it .
@dbz400 commented on GitHub (Oct 9, 2013):
I do think fatten lines into triangles would be better approach since there are quite many games have similar issues on Android that i observed .
@hrydgard commented on GitHub (Oct 9, 2013):
oh yeah. Try this quick approximation:
@dbz400 commented on GitHub (Oct 9, 2013):
I used yres and seems to be working okay :)
@hrydgard commented on GitHub (Oct 9, 2013):
Probably it's so large OpenGL rejects it because yres will be hundreds of pixels :)
@dbz400 commented on GitHub (Oct 10, 2013):
@internetakias , can you recheck and confirm the issue fixed?
@internetakias commented on GitHub (Oct 10, 2013):
Will do
@internetakias commented on GitHub (Oct 10, 2013):
Seems to work fine now.

The outlines still don't connect properly with each other though. Even at 1x res

@internetakias commented on GitHub (Dec 12, 2013):
By the way, I haven't checked on 0.9.6 yet, but it seems like raven's fix doesn't work for Android
@dbz400 commented on GitHub (Dec 14, 2013):
Yes , the fix is for windows only since GLES not support glLineWidth
@unknownbrackets commented on GitHub (Jan 20, 2014):
The lines still look pretty bad in GLES in Persona 1. I'm not really sure why.
Some of the lines are missing in softgpu. It seems to be some glitch or overflow, because it thinks it's being asked to draw a line from 1023,4 - 128,4 (it really should be from 0,4 - 128,4.)
It's actually reading -1,4 - 128,4 from the vertex, but somehow it's wrapping that to 1023 in throughmode... hmm.
As for Persona 3, there's no outline in GLES right now (any resolution), which I think may be correct (I mostly only played the console version)? The outline does show in softgpu and isn't completely awful (assuming it should be there...), although it's not perfect at all.
-[Unknown]
@unknownbrackets commented on GitHub (May 14, 2017):
The outline in Persona 3 should not be there - it's antialiasing. With #9684, lines largely work in software rendering for all the above cases.
As far as other backends:
Note that skip buffer effects ("non buffered rendering") essentially means increased render resolution, and both cause line width issues.
-[Unknown]
@ghost commented on GitHub (Jun 4, 2020):
Anyone can you upload a ge dump?
@unknownbrackets commented on GitHub (Oct 31, 2021):
I haven't tested this, but #15076 may help.
-[Unknown]
@ghost commented on GitHub (Nov 1, 2021):
ppsspp v1.12.3-136
Vulkan

Software

@unknownbrackets commented on GitHub (Nov 2, 2021):
Yeah, doesn't seem to be fixed.
For one of the outlines in the menu (not battle, but seems like the same problem), it uses 5 verts for a line strip:
-24,50 -> -24,32
-24,32 -> 109,32
109,32 -> 109,51
109,51 -> -24,50
Software rendering gets this right, but as you can see the problem is the strip has the bottom right corner slightly lower.
In hardware rendering, it looks like this though:
Because it goes up halfway through the line. But the software rasterizer gets it right:
The red highlighted area in both cases is a triangle strip, but essentially it's a rectangle from 0,33 -> 109,50. It does seem like somehow the top line (rightward) is still going upward, not downward as it should. The slanted line is the leftward line.
-[Unknown]