Lua unpause and invisible seek support #4592
Open
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.
See issue #4591.
Invisible emulation also needed significant changes after Lua's
client.seekframewas deprecated.The goal of invisible emulation, as is currently used, is to enable rendering a future frame as if it were the current one. To this end, all rendering, throttling, and FPS calculations are disabled during invisible emulation. Since we need the actual current frame to not render but do want to use throttling and FPS calculations, setting invisible emulation only really activates it once it is time to emulate the next fame. Conversely, we want to render the final Lua-seeked frame but not throttle or do FPS calculations for it.
EDIT: Changed the name back, since it needs to be more complicated than that name suggests.InvisibleEmulationbecomesInvisibleEmulateNextFrame, but I have not changed the name of the Lua function.