Skip to content

GS/HW: Sync rt copy behaviour across renderers.#14355

Merged
lightningterror merged 3 commits intomasterfrom
gs_copy_behavior
May 1, 2026
Merged

GS/HW: Sync rt copy behaviour across renderers.#14355
lightningterror merged 3 commits intomasterfrom
gs_copy_behavior

Conversation

@lightningterror
Copy link
Copy Markdown
Contributor

Description of Changes

GS/HW: Sync rt copy behaviour across renderers.

When multidraw fb copies and texture barriers are off make sure copies behave the same across all renderers.
Properly use one barrier param on dx11/gl, this will mirror texture barrier behaviour as it should, and gets rid of extra copies on dx11 when using alpha second pass.

When creating RT copies check if the barriers are from RT feedbacks because otherwise they might be from depth feedbacks and we don't need to copy the RT. This was observed on ZOE with accurate alpha test.

Rationale behind Changes

Bugfixes, optimizations.

Suggested Testing Steps

ZOE, and various dumps, test various games that use 2 pass alpha test, test all renderers with texture barriers enabled/disabled.

Did you use AI to help find, test, or implement this issue or feature?

No.

@Maxkatsur
Copy link
Copy Markdown

Will it help 2x-upscaled Need for Speed: Underground, Underground 2, Most Wanted etc. on my RTX 4050 laptop?

@TJnotJT
Copy link
Copy Markdown
Contributor

TJnotJT commented Apr 25, 2026

Could RenderHW and SendHW could be put in GSDevice and backend specific parts put in virtual functions (e.g. like the copy/barriers between feedback loops)?

Maybe this is out of scope and would require a separate PR, but would help prevent divergence across renderers.

@lightningterror lightningterror force-pushed the gs_copy_behavior branch 2 times, most recently from efaac46 to 9a05def Compare April 27, 2026 00:49
@lightningterror lightningterror marked this pull request as ready for review April 29, 2026 20:54
@lightningterror
Copy link
Copy Markdown
Contributor Author

I dunno some are similar like dx11 and gl between them, same for dx12 and vk, and the combined copy will further diverge from dx12/vk.

@lightningterror
Copy link
Copy Markdown
Contributor Author

Did a dump run on dx11 and smoke tested some dumps on dx11 and gl. Merging.

@lightningterror lightningterror merged commit f9feca4 into master May 1, 2026
25 checks passed
@lightningterror lightningterror deleted the gs_copy_behavior branch May 1, 2026 18:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants