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
GS/HW: Try to keep old targets around without overlap or dirty areas #11028
Conversation
7eaa3d2
to
20f5771
Compare
Tomb Raider Legend: Master:
|
Okay I'm removing the test flag since this looks promising. I'll leave the other changes I made for now so we can see when it's working its magic But still need tests for the following scenarios
|
This also fixes Silent Hill Origins #7332 |
Too bad it doesn't fix some games like Star Wars Ep3 but it does say something in the logs Keep in mind this also happens on master, so no apparent changes happened. Repro: |
20f5771
to
c86fffb
Compare
The added reflections on Burnout Takedown cars vanish upon loading state or switching renderers. |
They will, nothing I can do about that. |
Description of Changes
Try to avoid deleting targets which haven't been overlapped or dirtied.
Rationale behind Changes
Some games will preload some information then not touch it until after the game loads, but we eject things that haven't been used for 300ish frames, so sometimes this data can be ejected.
Same can happen for games if you spend too long in a pause screen/menu, causing the game to corrupt when you go back. An example of this may be using the shop in the Ratchet games, or changing the background in King's Field 4, then back again after waiting.
Suggested Testing Steps
Try games you think suffer from above, it might help.
Fixes #7332