[WIP] Fix vertical lines - #897
Open
kernle32dll wants to merge 2 commits into
Open
Conversation
Contributor
|
quickly tested this on few games. ACE: Click to expand |
Contributor
Author
|
So far, Lego Star Wars was the toughest case for me. We did talk briefly about rounding - maybe the final fix is two-fold? Offsetting the center, and then some rounding magic? |
kernle32dll
force-pushed
the
fix-vertical-lines
branch
from
May 3, 2020 11:28
3c456b4 to
69f9634
Compare
jpd002
reviewed
May 3, 2020
| switch(nRegister) | ||
| { | ||
| case GS_REG_ST: | ||
| m_nReg[nRegister] &= 0xFFFFFF00FFFFFF00; |
Owner
There was a problem hiding this comment.
These (ST) are floating point values. Does it makes sense to mask out the last 8 bits of these values?
Contributor
Author
There was a problem hiding this comment.
Yep, thats what the GS manual explicitly states.
kernle32dll
force-pushed
the
fix-vertical-lines
branch
from
May 7, 2020 13:01
69f9634 to
699fc5c
Compare
kernle32dll
force-pushed
the
fix-vertical-lines
branch
from
May 21, 2020 08:39
699fc5c to
21371d1
Compare
kernle32dll
force-pushed
the
fix-vertical-lines
branch
from
June 11, 2020 21:34
21371d1 to
940691c
Compare
kernle32dll
force-pushed
the
fix-vertical-lines
branch
2 times, most recently
from
July 7, 2020 08:53
3cf8f78 to
3869d56
Compare
kernle32dll
force-pushed
the
fix-vertical-lines
branch
from
September 26, 2020 08:21
3869d56 to
d579e76
Compare
kernle32dll
force-pushed
the
fix-vertical-lines
branch
from
October 29, 2020 22:36
d579e76 to
998c172
Compare
kernle32dll
force-pushed
the
fix-vertical-lines
branch
from
January 24, 2021 08:33
998c172 to
7de8057
Compare
According to the GS manual, the 8 lower bits of S and T of GS_REG_ST must be rounded down. This commit just masks them away, which just serves that purpose.
The PS2 assumes the 0,0 pixel at the center of the screen. OpenGL (at least) assumes the 0,0 pixel at the top left. When the screen width/height is even, this causes a slight discrepancy.
kernle32dll
force-pushed
the
fix-vertical-lines
branch
from
February 21, 2021 13:26
7de8057 to
01ffa38
Compare
bagelswitch
added a commit
to bagelswitch/Play-
that referenced
this pull request
Aug 25, 2025
bagelswitch
added a commit
to bagelswitch/Play-
that referenced
this pull request
Sep 30, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Didn't know what to call this PR - it fixes quite a bit more then than the title suggests.
The PS2 assumes the 0,0 pixel at the center of the screen. OpenGL (at least) assumes the 0,0 pixel at the top left. When the screen width/height is even, this causes a slight discrepancy of half a pixel.
In all games I tested this yields very neat results, and fixes all kinds of slight visual artifacts. For me, notable text rendering and text boxes in Suikoden 5, as well as briefings in Ring of Red.
This needs more testing with different games. Together with #895, this fixes most visual problems of the games that start for me. But for cleanness purposes, the following screenshots are without the fixes in #895.
Lego Star Wars II
Click to expand!
This issue is only visible in tandem with #895, so differences are show to this PR here!
Ring of Red
Click to expand!
Suikoden 5
Click to expand!
Look especially at the question mark at the bottom!