-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
GS/VK/GL/DX12/DX11: Improved accuracy for lines and AA1 support for lines/triangles. #13617
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
base: master
Are you sure you want to change the base?
Conversation
|
Rebased - a couple small merge conflicts and fixes. |
|
Last few pushes to fix a constant buffers on Metal and some small fixes for building on Linux. |
…ngles. Also manual depth testing in shader and depth feedback loop.
…ccurate prims data. Should hopefully give better performance. Also refactor some upload/staging buffer handling in VK/DX12.
This could be done. My approach here was to micmick SW as closely as possible, but I agree that may go against the philosophy of HW.
Yes, though I think with one small difference: the line and coverage should be expanded in the x/y direction depend on whether thay are shallow/steep (I believe the wide line shader currently expands in the perpendicular direction). Same for the triangle edges.
Seems like a reasonable approach. According to tests the corners end at the adjacent edge (rather than axis-aligned as pictured above). We could try without gaps and see if it looks better.
Sure, I can do the shader depth testing first in that case. The VS expand approach outlined above will require a separate PR. I'll keep this one around as a reference until that is completed. |
Status: Draft until dump runs are done.
TODO
Description of Changes
Add an INI setting for accurate lines and AA1 support (lines and triangles). This is a port of functionality currently in SW.
Details
Caveats
Rationale behind Changes
Accuracy improvement for certain games that require AA1 or accurate lines.
Suggested Testing Steps
Please put the following in the INI:
Then use any of the following renderers: Vulkan, OpenGL, DX12, DX11. Performance testing for games known to use heavy line drawing and/or AA1 would be helpful. Testing without the 2nd commit would be helpful (see performance note 2 above).
Did you use AI to help find, test, or implement this issue or feature?
Yes, I use AI to reference graphics API info and review code.
Comparisons
TimeSplitters - Future Perfect_SLES-52993_20250703155125.gs.xz
Master VK

PR VK

God_of_War_NTSC-U_MenuController.gs.xz
Master VK

PR VK
