Skip to content
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

Tactics Ogre: Remove a redundant GPU readback operation #18599

Merged
merged 1 commit into from
Dec 22, 2023

Conversation

hrydgard
Copy link
Owner

This is an old hack that has been discussed before but we never merged it.

Tactics Ogre does a lot of expensive GPU readbacks, that it then actually uses for various graphics tricks (it seems to blur things on the CPU, for example). But, it also makes one small completely redundant readback every frame. Getting rid of that one can actually be pretty impactful on mobile, so let's just do it.

Note that it's now possible to set the "Skip GPU readbacks" setting to "Copy to Texture" which seems to work okay in this game now and will improve performance drastically on mobile, but some effects are missing, as mentioned above.

@hrydgard hrydgard added the GE emulation Backend-independent GPU issues label Dec 21, 2023
@hrydgard hrydgard added this to the v1.17.0 milestone Dec 21, 2023
@hrydgard hrydgard merged commit cf81ae1 into master Dec 22, 2023
18 checks passed
@hrydgard hrydgard deleted the tactics-ogre-eliminate-readback branch December 22, 2023 21:51
@unknownbrackets
Copy link
Collaborator

Do we know for sure it's debug? I've always assumed there's probably some place (maybe not a very useful place, like in-game screenshots which some games had) it might be used, but just not most frames...

-[Unknown]

@hrydgard
Copy link
Owner Author

It really looks like it a junk readback since it's the first thing that happens in every frame, no matter what's on the screen. All other readbacks seem much more intentional and specific.

That said, I suppose we will find out through reports if something is missing. This one is so weird that I'm willing to risk it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GE emulation Backend-independent GPU issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants