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

Add "Half skip" Mode #18807

Closed
wants to merge 5 commits into from
Closed

Add "Half skip" Mode #18807

wants to merge 5 commits into from

Conversation

sum2012
Copy link
Collaborator

@sum2012 sum2012 commented Feb 1, 2024

My random idea from #16900 (comment)

Added as another mode to the speedhack setting Skip GPU readbacks.

May help #18607

@sum2012 sum2012 added the GPU readback Issue related to readbacks from the GPU to CPU label Feb 1, 2024
@LunaMoo
Copy link
Collaborator

LunaMoo commented Feb 1, 2024

Why making it random if you want "half"(which would imply every other frame)?

Random pretty much means it might break things sometimes and sometimes it will not, doesn't feel like an useful thing to have, even less for performance reasons as lower framerate is better than unpredictable one.

@hrydgard
Copy link
Owner

hrydgard commented Feb 1, 2024

One argument for making it random is that it will work to halve the work "evenly" whether the game does 1, 2 or 3 readbacks per frame for example - if you do every second readback, you run the risk of falling into stuck patterns and always skipping the same read every frame. But, obvious drawbacks are of course uneven framerates etc.

Either way, this idea of skipping readbacks randomly highly depends on what the game is doing, if it makes sense or not... I dunno if I want it in though, if we do add it, it'll be in speedhacks, which this PR does.

What game do you feel this is the most beneficial in, sum2012?

@sum2012
Copy link
Collaborator Author

sum2012 commented Feb 1, 2024

MotorStorm Artic Edge, gpu readback the sun to adjustment the sky 's luminosity

@hrydgard
Copy link
Owner

hrydgard commented Feb 1, 2024

Oh, yeah, I guess it can be a pretty good option for that game, since the effect isn't very frame-critical..

Hm. I'm gonna play with it soon.

@sum2012
Copy link
Collaborator Author

sum2012 commented Sep 11, 2024

@hrydgard how about this ? ( although need rebase )

@hrydgard
Copy link
Owner

Is it actually a good gameplay improvement, and doesn't just get weirdly choppy?

@sum2012
Copy link
Collaborator Author

sum2012 commented Sep 17, 2024 via email

@hrydgard
Copy link
Owner

hrydgard commented Sep 17, 2024

ok. i'm gonna manually rebase this and do some minor changes (naming, initialization).

Also the various uses of GenerateBoolean were wrong, missing the () so the function was never called, effectively always returning true (the function exists).

@hrydgard
Copy link
Owner

Replacing this with #19469

Not super succesful for me, something weird is going on in Motorstorm.

@hrydgard hrydgard closed this Sep 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GPU readback Issue related to readbacks from the GPU to CPU
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants