-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
rsx: Virtual subimage views #14104
Merged
Merged
rsx: Virtual subimage views #14104
Conversation
This file contains 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
Megamouse
reviewed
Jun 27, 2023
rpcs3/Emu/RSX/Program/GLSLSnippets/RSXProg/RSXFragmentPrologue.glsl
Outdated
Show resolved
Hide resolved
rpcs3/Emu/RSX/Program/GLSLSnippets/RSXProg/RSXFragmentPrologue.glsl
Outdated
Show resolved
Hide resolved
rpcs3/Emu/RSX/Program/GLSLSnippets/RSXProg/RSXFragmentTextureMSAAOpsInternal.glsl
Show resolved
Hide resolved
84f70d7
to
db507f0
Compare
Megamouse
reviewed
Jun 30, 2023
Megamouse
reviewed
Jun 30, 2023
ad04ccf
to
02a0072
Compare
GT6 1.22
|
- Generated from inline strings in GLSLCommon.cpp
…e sane scale-bias setup
…e larger structure in use now
- TODO: Some corner cases still exist where format may not be a match after a cache merge.
- Decompose sequences of copies into the minimally required set. This does 2 things: a. Reduces GPU workload by doing less transfers b. Allows the clipping optimization to kick in and skip a ton of GPU work
…tor type - We need to move more dangerous braced initializations to c++20 - Also adds a base address variable which will come in handy
02a0072
to
6d1e25d
Compare
@Kravickas Please retest. The crash should be fixed. |
- It broke ages ago
Yep, crash fixed. 👍 |
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.
This PR is part 2 of several restructuring PRs. This set reworks how we handle sampling a sub-region of a subresource by lowering the complex path of nested copies to a simple coordinate scale and clamp operation. This works very well for some usage cases, such as games that render static resources once then make subimages from the different sections for actual rendering. This PR can result in a massive speedup on smaller GPUs without super-fast GDDR6X memory but there are diminishing returns on the highest end stuff (e.g RTX 4090).
A modest speedup reported in GT series games, but there are other chokepoints that are addressed in followup PRs.
This PR is still WIP as I need more testing.
TODO:
Broken games: